iCAx开思工具箱

标题: caa请问partbody实体的棱边,表面及顶点等对象,如何操作 [打印本页]

作者: hanqi    时间: 2005-1-12 14:02
标题: caa请问partbody实体的棱边,表面及顶点等对象,如何操作
上次问过一个相似的问题。承蒙诸位高手的帮助。nctusdk曾给出得到partbody中CATCell的代码:
code大概長這樣:  
CATIGeometricalElement_var spGeoElem(spSpecOnSomeFeature);  
if(spGeoElem!=NULL_var)  
{  
  CATBody_var spBody = spGeoElem->GetBodyResult();  
  CATLISTP(CATCell) vListOfCells;  
  int nCellType = 0; //取vertex是0, 取edge是1, 取face是2, 取volumn是3  
  spBody->GetAllCells(vListOfCells, nCellType);  
  for(int i=1;i<=vListOfCells.Size();++i)  
  {  
    ...  
  }  
}  
  
但是,在得到这些棱边,顶点,表面之后,如何在以后程序中进行下一步的操作。比如,我想取得棱边所在直线的经过的点和棱边的法向量;
  
或者一个表面的法向量。请问该怎么做?该刊帮助稳当的哪部分?
因为我的课题需要操作partbody中catcell和它们之间的关联关系。欢迎您给出任何有帮助的建议。
作者: nctusdk    时间: 2005-1-13 16:03
你用GetAllCells取出來的假設是邊好了
那麼他們每一個都是CATEdge...
直接QI CATEdge取得CATEdge介面
再用CATEdge::GetCurve取得curve的geometry
接下來你想要做什麼就去查CATEdgeCurve/CATCurve的method吧
  
建議你把Encyclopedia中關於topology的部份看一下
會比較清楚
  
SDK.
作者: hanqi    时间: 2005-1-16 14:22
非常感谢!




欢迎光临 iCAx开思工具箱 (https://t.icax.org/) Powered by Discuz! X3.3