CATIA二次开发(CAA)技术基础之零件设计
第五章 零件设计
5.1 零件设计环境
图 5.1 零件设计环境
零件设计环境中,MyPart1 中包含参考平面(包括 XY 平面、YZ 平面、ZX 平面)、轴系、 参数、几何图形集、有序几何图形集、零件几何体、几何体、集合中的几何体等节点。
几何图形集是无序建模,一般全曲面建模就是他比较管用;有序几何图形集,他里面可以 包含集合中的几何体,几何图形集,几何特征,但建模方式是有序的;几何体是直接插入零件 环境下,他里面可以包含几何图形集,有序几何图形,几何特征,但建模方式是有序的;集合 中的几何体在插入前会询问用户,他可以放在树的根目录下也可以放在有序几何图形集里面,
还可以在插入的同时把有序几何图形集里的特征集合到(集合中的几何体)里面。
5.2 零件设计接口介绍
5.2.1 操纵零件的一般步骤
图 5.2 操纵零件的主要接口及步骤
5.2.2 获得 CATIPrtPart
参考代码如下: CATIPrtContainer_var
spPrtContainer = spContainer;
CATIPrtPart_var spPrtPart = spPrtContainer ->GetPart();
5.2.3 获得零件下所有节点
方法一:利用 CATIDescendants 接口 CATIDescendants_var
spDescendantsOnPart = spPrtPart;
CATListValCATISpecObject_var spSpecObjects;
piDescendantsOnPart->GetAllChildren(\TISpecObject\ spSpecObjects); 方法二:利用 CATContainer 中的 ListMembersHere 方法 SEQUENCE(CATBaseUnknown_ptr) ListObj;
long NbObj = piRootContainer->ListMembersHere(\TISpecObject\ for(int j=0;j 注意:\表示将所有的节点列出,如果想要只列出某种元素,可以将该 参数设置为相应的接口,例如\表示所有的点。 5.2.4 获得参考平面 参考平面包括 XY 平面、YZ 平面、ZX 平面,参考代码如下: CATListValCATISpecObject_var spReferencePlanes; spReferencePlanes = spPrtPart->GetReferencePlanes(); 注意:spReferencePlanes 为包含三个元素的数组,数组元素依次为 xy 平面, yz 平面和 zx 平 面。 如果要使用 yz 平面,则参考代码如下: CATISpecObject_var 5.2.5 获得轴系 参考代码如下: spyzPlane = spReferencePlanes[2]; CATIMf3DAxisSystemManager_var spAxisSystem = NULL_var; spPrtPart->QueryInterface(IID_ CATIMf3DAxisSystemManager,(void**)& spAxisSystem); //得到的所有轴系 CATLISTV(CATIMf3DAxisSystem_var) oAxisSystemList; spAxisSystem ->GetAxisSystems(oAxisSystemList); 5.2.6 获得参数 方法一:利用 CATIDescendants 接口 CATIDescendants_var spDescendantsOnPart = spPrtPart; CATListValCATISpecObject_var spSpecObjects; piDescendantsOnPart->GetAllChildren(\TICkeParm\ spSpecObjects); 方法二:利用 CATIParmPublisher 中接口 CATIParmPublisher_var spParmPublisher = spPrtPart; CATListValCATISpecObject_var ListFound; spParmPublisher->GetAllChildren(\TICkeParm\ 方法三:利用 CATContainer 中的 ListMembersHere 方法 SEQUENCE(CATBaseUnknown_ptr) ListObj; long NbObj = spContainer ->ListMembersHere(\TICkeParm\ for(int j=0;j CATIAlias_var spAlias = ListObj[j]; cout< 5.2.7 获得几何图形集等节点 该节主要介绍获得几何图形集、有序几何图形集、零件几何体、几何体、集合中的几何体 等节点的方法,主要方法流程图如图 5.3 所示。 获得CATIPrtPart 获得CATIPartRequest GetAllBodies GetSurfBodies GetSolidBodies 几何图形集 GetMainBody 有序几何图形集 零件几何体 集合中的几何体 几何体 CATIMmiNonOrderedGeometricalSet CATIMmiOrderedGeometricalSet CATIGSMTool CATIMechanicalTool 获得CATIBodyRequest CATBody 图 5.3 流程图 例 1:获得零件中的所有几何体的代码如下。 CATIPartRequest *pIPartRequest =NULL ; HRESULT rc = spPart->QueryInterface(IID_CATIPartRequest, (void**)&pIPartRequest ); if ( SUCCEEDED(rc) ) { CATLISTV(CATBaseUnknow_var) ListBodies;//所有几何体 CATUnicodeString ViewContext =\ ; rc = pIPartRequest->GetSolidBodies(ViewContext,ListBodies); } 例 2:获得零件中的所有有序几何图形集的代码如下。 CATIDescendants_var spDescendantsOnPart = spPrtPart; CATListValCATISpecObject_var spSpecOGSs;//所有有序几何图形集 piDescendantsOnPart->GetAllChildren(\TIMmiOrderedGeometricalSet\ spSpecOGSs); 例 3:获得零件几何体的代码如下。 CATBaseUnknow_var spMainBody;//零件几何体
相关推荐:
- [实用模板]第八章:法国“新浪潮”与“左岸派”
- [实用模板]2021年北京上半年临床医学检验技师生物
- [实用模板]SAP GUI 7.10客户端安装配置文档
- [实用模板]2001年临床执业医师资格考试综合笔试试
- [实用模板]36机场工作实用英语词汇总结
- [实用模板](一)社会保险稽核通知书
- [实用模板]安全教育主题班会材料
- [实用模板]濉溪县春季呼吸道传染病防控应急演练方
- [实用模板]长沙房地产市场周报(1.30-2.3)
- [实用模板]六年级数学上册典中点 - 图文
- [实用模板]C程序设计(红皮书)习题官方参考答案
- [实用模板]中国证监会第一届创业板发行审核委员会
- [实用模板]桥梁工程复习题
- [实用模板]2011学而思数学及答案
- [实用模板]初中病句修改专项练习
- [实用模板]监理学习知识1 - 图文
- [实用模板]小机灵杯四年级试题
- [实用模板]国贸专业毕业论文模板
- [实用模板]教育学概论考试练习题-判断题4
- [实用模板]2015届高考英语一轮复习精品资料(译林
- 00Nkmhe_市场营销学工商管理_电子商务_
- 事业单位考试法律常识
- 诚信教育实施方案
- 吉大小天鹅食品安全检测箱方案(高中低
- 房地产销售培训资料
- 高一地理必修1复习提纲
- 新概念英语第二册lesson_1_练习题
- 证券公司内部培训资料
- 小学英语时间介词专项练习
- 新世纪英语专业综合教程(第二版)第1册U
- 【新课标】浙教版最新2018年八年级数学
- 工程建设管理纲要
- 外研版 必修一Module 4 A Social Surve
- Adobe认证考试 AE复习资料
- 基于H.264AVC与AVS标准的帧内预测技术
- 《食品检验机构资质认定管理办法》(质
- ABB变频器培训课件
- (完整版)小学说明文阅读练习题及答案
- 深思洛克(SenseLock) 深思IV,深思4,深
- 弟子规全文带拼音




