PLM之家PLMHome-工业软件践行者

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

  [复制链接]

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

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

admin 楼主

2018-2-22 13:14:09

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

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

x
获得几何图形集等节点
3 F/ j2 \! w$ _5 y
/ V5 c, L4 [: Y1 P
: z9 ^* ?7 p9 j0 X) H8 I
例 1:获得零件中的所有几何体的代码如下。
$ b& G4 {, E: h' j7 I/ A' v" Y/ [CATIPartRequest *pIPartRequest =NULL ;- B; e8 [* a6 P' A1 B  I3 F! ^6 F
HRESULT rc = spPart->QueryInterface(IID_CATIPartRequest,(void**)&pIPartRequest );
) ]  X6 i! U$ v4 @0 E) Vif ( SUCCEEDED(rc) )
, o! a3 O) ?7 H! D5 W4 _) u{, }* L5 w' I; U- l
CATLISTV(CATBaseUnknow_var) ListBodies;//所有几何体
) l$ Y! S( [! c7 }+ qCATUnicodeString ViewContext ="MfDefault3DView" ;
1 J5 Y& B" w0 V7 grc = pIPartRequest->GetSolidBodies(ViewContext,ListBodies);* s& N" G9 X) P# B: `
}
8 V, n6 M5 I4 V$ |5 V例2:获得零件中的所有有序几何图形集的代码如下。; `/ D& C/ w& E
CATIDescendants_var spDescendantsOnPart = spPrtPart;
( p7 W. H) o- QCATListValCATISpecObject_var spSpecOGSs;//所有有序几何图形集
) T" q2 u% k( O3 ]' kpiDescendantsOnPart->GetAllChildren("CATIMmiOrderedGeometricalSet", spSpecOGSs);
/ i4 \, u" m5 Z+ J例3:获得零件几何体的代码如下。. i3 Z6 D% j8 D. `0 y3 S3 z- p6 N
CATBaseUnknow_var spMainBody;//零件几何体8 x2 q* Z7 A3 H; J
pIPartRequest->GetMainBody(ViewContext,spMainBody);  {5 `  S+ D6 ]$ I# G1 P/ H- U
例4:获得CATBody 的代码如下。
$ k& [+ n; w( HCATIBodyRequest *pIBodyRequest= NULL;
. S4 f* b5 ?4 E) m1 z, fspMainBody ->QueryInterface(IID_CATIBodyRequest,(void**) &pIBodyRequest);, T6 H+ R% b4 t. ~; f! m& u, m
CATLISTV(CATBaseUnknown_var) ListResult ;5 f$ D" W$ }+ x% k  n6 Q
pIBodyRequest->GetResults("",ListResult);
8 g% @6 m2 \( @+ ZCATIGeometricalElement * pIGeometricalElement = NULL ;
) u+ S, W0 U$ x1 ^+ f3 }for (int i=1 ; i<= ListResult.Size(); i++)
# P  B, c. I6 q2 _{
! {( b9 @1 R8 F5 d6 ?4 u7 mCATBaseUnknown_var spResult = ListResult;
6 \0 c! E2 c- z" _% pspResult->QueryInterface(IID_CATIGeometricalElement ,(void**) &pIGeometricalElement );
: I$ F& A! z3 S3 ?# G6 rCATBody_var spBodyResult = pIGeometricalElement->GetBodyResult();
2 ~7 p- P9 p- K0 x& p. u/ v}
/ H: S# u1 I$ e5 L" A, N
  M8 F7 Q  E& S5 p6 v* m
2 j/ u+ H& b* N, V- e2 S- g
/ R) z# Y$ |- o) J
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了