找回密码 注册 QQ登录
开思网工业级高精度在线3D打印服务

iCAx开思网

CAD/CAM/CAE/设计/模具 高清视频【积分说明】如何快速获得积分?快速3D打印 手板模型CNC加工服务在线3D打印服务,上传模型,自动报价
查看: 18679|回复: 11
打印 上一主题 下一主题

[求助] 如何正确读取模型的像素信息

[复制链接]
跳转到指定楼层
1
发表于 2009-5-10 21:48:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多同行朋友,交流,分享,学习。

您需要 登录 才可以下载或查看,没有帐号?注册

x
我用VC做proE二次开发,需要用OpenGL的函数读取proE中显示的模型图像信息,但有些能够正确读取,有些则不能,用glReadPixel读取各像素的ZBuffer深度信息,读出的各点值很奇怪都为1,而同样用该函数读取颜色值则正确,不知道是什么原因,哪位大虾给指点指点,谢谢!大致代码如下:
const int width=1024;
const int height=768;
float z[width*height];
int rgb[width*height*3];
glReadPixels(0,0,width,height,GL_DEPTH_COMPONENT,GL_FLOAT,z); //结果有误
glReadPixels(0,0,width,height,GL_RGB,GL_BYTE,rgb); //结果正确
  
另外,proE二次开发中如何读取模型的显示比例?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 赞一下!赞一下!
2
发表于 2009-5-11 15:46:35 | 只看该作者
可能是这个原因:
        假设你是工作在零件模式,Pro/E 的坐标系在实体模式的坐标系有3种 :实体坐标系,屏幕坐标系和窗口坐标系。你的代码可能访问的是窗口坐标系,按照 Pro/Toolkit 规定,窗口坐标系是二维(X,Y)的,第三维(Z)固定指向屏幕外侧,如果用向量表示,应该就是 1 了。
3
发表于 2009-5-11 16:00:43 | 只看该作者
至于显示比例,在实体模式下,ProWindow 对象的 ProWindowCurrentMatrixGet(...)函数应该有用。这个函数返回窗口的平移和缩放向量。
4
发表于 2009-5-11 16:19:02 | 只看该作者
感谢解答,回去试试!谢谢楼上
5
发表于 2009-5-11 17:06:17 | 只看该作者
请问Easy2009,我刚搜了一下,没有找到如何切换这几种坐标系统,你能告诉一下如何切换吗?谢谢!
6
发表于 2009-5-11 21:06:55 | 只看该作者
在 《Pro/Toolkit 2001 User's Guide》的《Coordinate Systems and Transformations 》章里有明确说明。
我没有仔细研究过。
具体例子看指南吧。
7
发表于 2009-5-11 22:29:35 | 只看该作者
好的,我看看。谢谢
8
发表于 2009-5-12 07:36:25 | 只看该作者
我看了手册,只有Solid Coordinate System是三维的,但似乎只要插入一个default类型的坐标系就可以,“You can visualize the solid coordinate system in Pro/ENGINEER by creating a coordinate system datum with the option Default.”不知我的理解对不对,但即使加上这个坐标系到模型中,仍然不能得到各像素正确的深度值。因此,我在考虑另一个问题,proE如何根据同一个屏幕位置处的鼠标按键,判断深度不同的两个部件或者两个相互遮挡的面
9
发表于 2009-5-12 12:06:58 | 只看该作者
呵呵~~~,这么早啊!
1, 在《坐标系和转换》章节里,有明确的坐标转换图和使用的函数。
不知道你看的时哪个版本的《指南》,我在Pro/Toolkit 2001里看的。
2,关于你考虑的另一个问题,我想那应该是Pro/E内核处理的问题:)
我没有看到那个功能的函数,如果你找到了,请告诉我一下。
10
发表于 2009-5-12 18:41:28 | 只看该作者
我看的WF4.0的,里面好像就说了一点儿,而且只列了两个函数,一个点变换的,一个矢量变换的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3D打印手板模型快速制作服务,在线报价下单!

QQ 咨询|手机版|联系我们|iCAx开思网  

GMT+8, 2025-1-10 07:03 , Processed in 0.026443 second(s), 10 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2025 www.iCAx.org

快速回复 返回顶部 返回列表