嗨,我需要从CATIA V5R18部件文件中读取可视化细节的流程。
可视化细节如,1.顶点数
2.三角形的数量
3.条带数
4.粉丝数
5.正常情况下没有
6.展开的球体中心和半径
这些细节我已经从.cgr文件中使用CAT3DRep/CATRep/CATSurfacicRep...但我无法读取.CATPart文件的相同内容。
从.CATPart在CATIVisu的帮助下,当我从PartFeatures查询时,我得到了CAT3DBagRep类型,但为了获得可视化的细节,我需要CATSurfacicRep。
有人能帮上忙吗?
我应该查询的Wat接口和我应该从哪里查询?
发布于 2012-06-21 19:11:15
嗯,关于网格的信息(三角形、条带、扇形等)只由叶代表携带,比如CAT3DSurfacicRep。
对于像CATPart或CATProduct这样的复杂文件,你有一个几何体的层次结构,也有一个Rep的层次结构。CAT3DBagRep是允许构建这个层次结构的类,因为它有子Rep(当然也可以是CAT3DBagReps)。
一种解决方案可能是从您获得的根CAT3DBagRep递归地探索这个Rep层次结构。获取CAT3DBagRep的子代表的方法是:
list<CATRep> *GetChildren();您可以沿着Rep树向下查找,直到获得预期类型的Rep,如CATSurfacicRep。根据您的型号,您可能会找到其中的许多。
在检索网格坐标、法线和边界元素时,请考虑到它们是在局部表示坐标中给定的。CAT3DBagRep包含定位和方向信息(例如,在定位CATProducts时使用)。这是由以下CAT3DBagRep方法返回的:
const CAT4x4Matrix * GetMatrix() const;根据您的场景/模型,您可能需要考虑此定位信息。
https://stackoverflow.com/questions/11048611
复制相似问题