PLM之家PLMHome-国产软件践行者

Catia二次开发源码分享:获得几何图形集等节点

  [复制链接]

2018-2-22 13:14:09 2696 0

admin 发表于 2018-2-22 13:14:09 |阅读模式

admin 楼主

2018-2-22 13:14:09

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

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

x
获得几何图形集等节点
* U, X6 F5 T5 ^' j5 e
$ U6 _3 |7 l& i% W0 i  k+ l

8 B5 X7 ]+ E' x- w' L例 1:获得零件中的所有几何体的代码如下。
  h, G2 r+ G& C; a6 V$ XCATIPartRequest *pIPartRequest =NULL ;& `, m& y8 B: ?* k& m+ a0 A
HRESULT rc = spPart->QueryInterface(IID_CATIPartRequest,(void**)&pIPartRequest );) C+ o! r4 `* e, \, B* v" U
if ( SUCCEEDED(rc) )6 y, u( l0 s4 d+ N
{
0 ?! J" g" ?3 H% rCATLISTV(CATBaseUnknow_var) ListBodies;//所有几何体7 n2 \7 z2 W+ c% P& }! J
CATUnicodeString ViewContext ="MfDefault3DView" ;6 \3 E: T5 y( w$ }7 \* d% {% b
rc = pIPartRequest->GetSolidBodies(ViewContext,ListBodies);/ `7 T, A4 }2 C5 B6 D5 y1 X
}
$ c3 E  X- i7 L例2:获得零件中的所有有序几何图形集的代码如下。7 K0 V# B8 K! [- k
CATIDescendants_var spDescendantsOnPart = spPrtPart;& r$ X+ K- s0 w
CATListValCATISpecObject_var spSpecOGSs;//所有有序几何图形集2 ^! X. H8 l6 _3 F& ?( W
piDescendantsOnPart->GetAllChildren("CATIMmiOrderedGeometricalSet", spSpecOGSs);* M" b' \( _, ]7 ?& B
例3:获得零件几何体的代码如下。
# }: o5 G" _# M% _CATBaseUnknow_var spMainBody;//零件几何体
- p( f/ C6 e) tpIPartRequest->GetMainBody(ViewContext,spMainBody);
7 w9 J( a# l  g. t例4:获得CATBody 的代码如下。
& a/ M4 K' W; W% fCATIBodyRequest *pIBodyRequest= NULL;+ h: x: m: y, n0 c
spMainBody ->QueryInterface(IID_CATIBodyRequest,(void**) &pIBodyRequest);- {0 c0 n6 v, M
CATLISTV(CATBaseUnknown_var) ListResult ;
4 @! T8 N; D% fpIBodyRequest->GetResults("",ListResult);
: l" g" ]. t, ~CATIGeometricalElement * pIGeometricalElement = NULL ;
% B5 r  A/ f4 d# T3 e1 f4 mfor (int i=1 ; i<= ListResult.Size(); i++)
0 [- F& I; ~. D9 u; E. ]{& F: J) E! r+ k: [8 V
CATBaseUnknown_var spResult = ListResult;
6 h" ?) Q9 h  X& I) kspResult->QueryInterface(IID_CATIGeometricalElement ,(void**) &pIGeometricalElement );  e. X8 B5 A9 X& R/ g: k2 t
CATBody_var spBodyResult = pIGeometricalElement->GetBodyResult();7 D, w. ?" g( [( Z: m% N* ^0 v
}
+ a; K" K. B( R; p+ l# L, d: _$ W, `4 M

( E) ?+ k5 k& o& h+ k3 H
& L5 k$ j8 m6 k7 d
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了