已阅读5页,还剩29页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ACIS基础培训课程安排 1 属性 Attribute 所有从ENTITY派生的类都可以拥有属性属性是在属性类ATTRIB中实现的属性可以保存两个主要目的为了实现功能所做的记号由SPATIAL开发和实现由开发者定义 实现作为属性信息 应用程序的最终用户将会用到由开发者定义 应用程序的最终用户使用 2 实体和属性之间的关系 ENTITY ATTRIB ATTRIB ATTRIB ATTRIB NULL NULL 3 ATTRIB类 从ENTITY类派生是一个抽象类组织实行 OrganizationAttribute 类从ATTRIB类派生应用程序特定属性 ApplicationSpecificAttribute 类从组织属性类派生 4 SPATIAL定义的属性 每个组件有各自的属性实现特定的功能如混合 blend 的半径和颜色普通属性 GentricAttribute 普通属性类来存储一个字符串或一个字符串及其相关联的一个属性值 value ATTRIB GEN NAME属性值可以是integer real string position vector pointer 指向ENTITY的指针 从ATTRIB GEN NAME派生缩短了用户开发的时间良好的兼容性 5 用户自定义属性 定义组织属性类用户有必要使用 sentinel SPATIAL的技术支持应用程序特定属性类应该从组织属性类派生其它子类可以从应用程序特定属性类中派生开发者可以定义属性中包含的数据因为ATTRIB类是从ENTITY类派生的 因此用户在定义自己的属性时 掌握保存 恢复机制是很有帮助的 尤其是用户自定义的属性中包含ENTITY 时 6 以颜色属性为例 在ACIS中颜色是通过属性来实现的 组织属性类 应用程序特定属性类 7 ATTRIB类的重要方法 virtualvoidATTRIB split owner ENTITY virtualvoidATTRIB merge owner ENTITY lotical virtualvoidATTRIB trans owner SPAtransfconst 8 ACISMFC ACISMFC从ACISR11开始 完全放弃使用ACISMFC原因是ACIS的一些显示组件 如GL和GI 已经完全放弃使用 9 ACISHOOPSAppWizard ACISHOOPSAppWizard提供类似ACISMFC的基本功能由SPATIALJAPAN开发和维护 10 ACISHOOPSAppWizard主要特点 使用HOOPS不用学习HOOPS就可以使用HOOPS基本的图形功能如果用户仅仅需要用到一些基本的图形功能 那么就不需要直接用HOOPS来编程 也就是说使用这个AppWizard就已经足够了使得开发者在开发地初级间断可以将经理集中在ACIS上如果需要的话 开发者可以直接使用HOOPS来扩展应用程序的图形显示能力提供一些示例源代码可以学习如何使用ACIS和InterOp和ACISMFC结构类似利用原有的AICSMFC用户顺利地使用GI GL组件过度到使用HOOPS来显示快速搭建测试环境 11 历史机制 Historymechanism 历史机制是什么 可以实现撤销 恢复 Undo Redo Undo 向后滚动 rollback Redo 向前滚动 rollforward 四个主要的类BULLETINBULLETIN BOARDDELTA STATEHISTORY STREAM最常用的API函数api part start state api part note state 12 历史的基本类 DELTA STATE是实现Undo Redo的一个单元BULLETIN BOARD基本上调用一个API函数都会创建一个BULLETIN记录ENTITY改变前和改变后的状态 13 练习 历史机制 目标是通过使用ACISHOOPSAppWizard增加对历史机制的理解使用ACISHOOPSAppWizard创建一个新的工程 History 作为示例AppWizard重一斤个实现SolidBlock的创建编译和构建工程将实现函数 api make gear 的文件复制到该工程文件夹 并加入到该工程中在菜单中加入 Gear 参考SolidBlock的实现 实现创建齿轮的命令 14 练习 历史机制 续上页注释掉 API BEGIN 和 API END 宏 并哼名一个outcome类型的变量result使用 api solid cylinder cone 函数创建一个半径为3 高度为20的圆柱从gearbody中湔区圆柱注释掉 check outcome result 行intdepth 0 api part start state depth API BEGINoutcomeresult api make gear pBody check outcome result 创建圆柱 从齿轮中减去该圆柱if result ok m pAHDoc AddEntity pBody API ENDapi part note state result depth 15 练习 历史机制 intdepth 0 api part start state depth outcomeresult api make gear pBody BODY pCyl SPApositionp3 0 0 10 SPApositionp4 0 0 10 result api solid cylinder cone p3 p4 3 0 3 0 3 0 SPAposition NULL pCyl result api subtract pCyl pBody if result ok m pAHDoc AddEntity pBody api part note state result depth 16 练习 历史机制 修改UNDO REDO创建菜单 Gear2 并复制Gear实现的代码按下面的程序进行相应的修改 intdepth 0 api part start state depth outcomeresult api make gear pBody if result ok m pAHDoc AddEntity pBody api part note state result depth api part start state depth BODY pCyl SPApositionp3 0 0 10 SPApositionp4 0 0 10 result api solid cylinder cone p3 p4 3 0 3 0 3 0 SPAposition NULL pCyl if result ok m pAHDoc AddEntity pCyl api part note state result depth api part start state depth result api subtract pCyl pBody if result ok m pAHDoc UpdateEntity pBody api part note state result depth 17 练习 历史机制 intdepth 0 api part start state depth outcomeresult api make gear pBody if result ok m pAHDoc AddEntity pBody api part note state result depth api part start state depth BODY pCyl SPApositionp3 0 0 10 SPApositionp4 0 0 10 result api solid cylinder cone p3 p4 3 0 3 0 3 0 SPAposition NULL pCyl if result ok m pAHDoc AddEntity pCyl api part note state result depth api part start state depth result api subtract pCyl pBody if result ok m pAHDoc UpdateEntity pBody api part note state result depth 18 BULLETIN类 存储ENTITY类对象在创建 删除或修改时的信息拥有指向新的ENTITY和原来ENTITY的指针 19 BULLETIN类 NULL ENTITY ENTITY old entity ptr new entity ptr BULLETIN ENTITY 新创建的ENTITY 改变之后的ENTITY 修改之前的ENTITY拷贝 删除的ENTITY ChangeBulletin DeleteBulletin CreateBulletin 20 BULLETIN BOARD类 一般来说一个API创建一个BULLETIN BOARDAPI函数中的API BEGIN API END宏对创建一个BULLETIN BOARD通过API函数中的返回值outcome可以得到指向相应的BULLETIN BOARD的指针包含一个或多个BULLETIN 21 DELTA STATE类 每个UNDO REDO操作需要有一个DELTA STATE每个DELTA STATE可以包含一个或多个BULLETIN BOARD next prev DELTA STATE DELTA STATE BULLETIN BULLETIN BULLETIN partner bb 22 DELTA STATE类 23 HISTORY STREAM类 管理DELTA STATE的实用类缺省情况下 系统启动时定义了一个HISTORY STREAMapi get default history 开发者可以设置rollback UNDO 的最大次数HISTORY STREAM set max states to keep 零件 PART 类有一个指向HISTORY STREAM的指针如果使用到PART类 开发者可以使用一些有用的API函数api part start state 标志着一个DS的开始api part note state 标志着一个DS的结束api part roll n states UNDO或REDOapi part name state state命名api part rooo to state 移动到指定名称的state中PART history stream 得到HISTORY STREAM 24 HISTORY STREAM类 DELTA STATE DELTA STATE DELTA STATE DELTA STATE 根DS 当前活动DS 创建DS 25 API BEGIN API END宏 intdepth 0 api part start state depth result api make gear result api solid cylinder cone result api subtract api part note state result depth 26 API BEGIN API END宏 intdepth 0 api part start state depth result api make gear result api solid cylinder cone result api subtract api part note state result depth API BEGIN API END 27 API BEGIN API END宏 intdepth 0 api part start state depth result api make gear result api solid cylinder cone result api subtract api part note state result depth API BEGIN API END API NOP BEGIN API NOP END API NOP BEGIN和API NOP END的效果和取消操作的效果一致 对应的两个宏之间的所有创建 修改和删除是无效的 因此用户需要注意在该宏对之内的ENTITY是否有效 28 出错处理 errorhandling 可以知道API函数调用的结果outcome error number outcome ok check outcome 函数为了创建稳定的API 这是必要的调用系统错误出错处理宏EXCEPTION BEGIN EXCEPTION TRY EXCEPTION CATCH EXCEPTION ENDAPI BEGIN API END 29 出错处理 errorhandling 明确地指出错误 并跟踪该过程中发生了些什么将api solid cylinder cone 函数中的半径参数设置为0首先注释掉API BEGIN和API END运行程序 尝试Undo Redo操作 intdepth 0 api part start state depth API BEGINoutcomeresult api make gear pBody BODY pCyl SPApositionp3 0 0 10 SPApositionp4 0 0 10 result api solid cylinder cone p3 p4 3 0 3 0 3 0 SPAposition NULL pCyl result api subtract pCyl pBody if result ok m pAHDoc UpdateEntity pBody API ENDapi part note state result depth 30 出错处理 errorhandling 明确地指出错误 并跟踪该过程中发生了些什么 续上页 取消注释API BEGIN和API END移去api make gear 前的 outcome 在图示位置在每个api函数调用之后添加 check outcome result 行运行程序 尝试Undo Redo操作 intdepth 0 api part start state depth API BEGINresult api make gear pBody check
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电光源电路部件制造工安全生产意识模拟考核试卷含答案
- 2025年教师资格证(初中英语)面试模拟题库及答案
- 《GB-T 37303.6-2019船舶和海上技术 船舶操纵性 第6部分:模型试验特殊要求》专题研究报告
- 化纤聚合工安全文化模拟考核试卷含答案
- GBT 34749-2017《木材及木质复合材料耐火试验方法 锥形量热仪法》专题研究报告
- 《GBT 8960-2015 涤纶牵伸丝》专题研究报告
- 体育场馆管理员安全检查水平考核试卷含答案
- 香精配制工持续改进评优考核试卷含答案
- 海水珍珠养殖工创新方法竞赛考核试卷含答案
- 《GBT 34916-2017 纳米技术 多壁碳纳米管 热重分析法测试无定形碳含量》专题研究报告
- 2026年国元农业保险股份有限公司管培生校园招聘考试笔试参考题库附答案解析
- T-CES 148-2022 配电网电化学储能系统规划配置导则
- 015《煤矿安全规程》修改条款学习辅导:第十五讲 电气
- 消防设施中断管理操作规范
- 2022北京首都师大附中高一12月月考化学试卷含答案解析
- 机房基本运维知识培训课件
- 道路建筑材料知识培训内容课件
- 事业单位保密知识培训课件
- 房土两税课件
- 全国大学生职业规划大赛《工业互联网技术》专业生涯发展展示【高职(专科)】
- 中国石油安全培训教学课件
评论
0/150
提交评论