PLM之家PLMHome-工业软件与AI结合践行者

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

  [复制链接]

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

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

admin 楼主

2018-2-22 13:14:09

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

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

x
获得几何图形集等节点
' S: m' W, d, g) D! b1 M" t  J; `1 r* T* F, o0 n# V% k  `

% [. ]3 f- ~- z* o; _例 1:获得零件中的所有几何体的代码如下。
8 }% T8 t' Y9 H7 J% H! D0 JCATIPartRequest *pIPartRequest =NULL ;
: R3 D0 f* f9 R3 P2 |+ O& \HRESULT rc = spPart->QueryInterface(IID_CATIPartRequest,(void**)&pIPartRequest );
( p8 D* U* E; @) z2 O' r; _if ( SUCCEEDED(rc) )5 {1 C) I' s! E/ f% x  m3 P' N. H$ W
{
$ j# S& n$ J. N7 s% l! E! k. QCATLISTV(CATBaseUnknow_var) ListBodies;//所有几何体
% @, ?( ?' i8 M( q/ Z( l; s, RCATUnicodeString ViewContext ="MfDefault3DView" ;0 S. ~: \& ~2 L& m
rc = pIPartRequest->GetSolidBodies(ViewContext,ListBodies);$ C! Z  O! e5 `3 v( B  ~
}
; ~* Z. b: m5 V* c4 [: `6 B. L7 i例2:获得零件中的所有有序几何图形集的代码如下。; I  s: q* @) ~' K+ _0 X1 b
CATIDescendants_var spDescendantsOnPart = spPrtPart;
  Y! A% ^+ e- V0 E' `7 mCATListValCATISpecObject_var spSpecOGSs;//所有有序几何图形集  j; ]+ g* L" j* h6 f
piDescendantsOnPart->GetAllChildren("CATIMmiOrderedGeometricalSet", spSpecOGSs);
& H' ~1 z/ ]4 G% {2 C例3:获得零件几何体的代码如下。6 \; |  B* o4 ]- y  B
CATBaseUnknow_var spMainBody;//零件几何体
1 o% A3 d9 y- LpIPartRequest->GetMainBody(ViewContext,spMainBody);
) e- \: y- X# [. Z7 C' t& c5 C例4:获得CATBody 的代码如下。2 x$ I3 ^, ]0 M, n8 t- k
CATIBodyRequest *pIBodyRequest= NULL;
* s  U7 s2 `; I" i/ X" L3 i/ [6 SspMainBody ->QueryInterface(IID_CATIBodyRequest,(void**) &pIBodyRequest);
6 }7 K  V2 w1 C. H7 |: Q6 NCATLISTV(CATBaseUnknown_var) ListResult ;( u+ u8 m0 F- m+ [! j, M
pIBodyRequest->GetResults("",ListResult);# {. G* e  [% B: y' z/ Q$ \# c2 b
CATIGeometricalElement * pIGeometricalElement = NULL ;
) {1 W$ r& y: M$ ifor (int i=1 ; i<= ListResult.Size(); i++)% ], L7 ~: V3 U1 e3 X% r, `5 Y
{
$ h) K8 W% o: l$ N% D2 W: u7 R5 CCATBaseUnknown_var spResult = ListResult;  M$ `5 V# @6 e; [4 v: ^: |7 q
spResult->QueryInterface(IID_CATIGeometricalElement ,(void**) &pIGeometricalElement );+ W8 _3 R8 [; @: J" h
CATBody_var spBodyResult = pIGeometricalElement->GetBodyResult();
  Z- U& @' ~, M2 A  I}* c( C4 J) z% D" k3 q/ @
  ~$ d4 y( b% f( c

! _4 K, K' ~" G) l* r& m
, S0 j/ u, \8 X
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了