NXOpen二次开发.pdf

所需积分/C币:46 2019-04-29 13:20:46 1.76MB PDF
收藏 收藏
举报

NX是一款功能强大的 是一款功能强大的 CAD/CAM/CAE 软件,它不仅可以通过 软件,它不仅可以通过 软件,它不仅可以通过 UI 操作来控制各种功能,还 操作来控制各种功能,还 提供了多种应用程序开发包 (API) 对 NX 内部对象进行访问。在这些 内部对象进行访问。在这些 内部对象进行访问。在这些 API 基础上,用户可以 基础上,用户可以 开发各种自动程序,定制 开发各种自动程序,定制 NX 功能,甚至可以在现有 功能,甚至可以在现有 NX 功能之上二次开发新的 功能之上二次开发新的 CAD/CAM/CAE 软
2.7.2编详运行工程. 第三章 Journal. 13 3.1 Journal用户界面 3.1.1 Journal预设置 13 3.1.2 Journal功能覆盖. 13 3.1.3 Journal工具条 3.1.4 Journal Manager. 3. 1.5 Journal Editor 14 3.2 Journal文件, ,,,,,,,,,,,,,,,,,,,,14 3.2.1创建 Journal. 14 3.2.2修改 Journal.. 3.3 Journal到 NXOpen程序 15 3.3.1 Journal identifier概念 15 3.4操作举例,. ●·看 16 第四章\ XOPEN对象模型……. :::::·::::::· 灬19 4.1通用对象模型 19 4.1.1图解显示通川对象模型. 19 4.1.2通用对象类 21 4.1.3通用对象浏览 22 4.2通用NX对象 鲁鲁 .,,,,,,,,,,,23 4.2.1永久NX对象 垂··看,4p··番 ,,,,23 4.2.2临时NX对象 23 4.3通用NX对象操作. 23 43.1通用NX对象标识 23 4.3.2 NX Session对象基本操作. 24 4.3.3通用NX对象遍历与查找. 26 A.3.4通用NX对象创建和编辑. 31 第五章 NXOPEN详细对象 5.1特征对象.. 33 5.1.特征对象属性. ..,,33 5.1.2特征对象与 History tree 33 5.1.3特征对象与Body... 5.1.4特征对象与Face 34 5.1.5特征对象操作. 34 5.2Co1 Lector对象 35 5.2.1 Sccollector 5.2.2 Section 35 第六章 NXOPEN操作 36 6.1模型更新 .,36 6.1.1显小更新. 36 6.1.2部件间更新 36 6.1.3删除对象 ,,,36 6.1.4错误列表. 37 6.2属性操作 37 6.2.1设置属性值. 38 6.2.2遍历对象属性. 39 6.2.3删除对象属性. 6.2.4获得属性对象值. 40 6.2.5属性值操作举例. ,,,,,41 6.3部件操作, 4 6.3.1部件文件遍历 ..41 6.3.2显示部件和工作部件操作 42 6.3.3创建新部件 ...43 6.3.4部件文件加载 44 6.3.5部件文件关闭和保存操作 45 6.3.6部件文件其他操作 47 6.4裝配操作 48 6.4.1常用装配术语. 49 6.4.2基本装配操作 49 6.4.3装配操作举例 49 第七章 Block UI Styler 7.1 Block ui Styler简介. 52 7.1.1 Block ui styler功能特点 52 7.1.2 Block ui styler设计原理 52 7.2 Block UI Styler 7.2.1启动 Block ui Styler 7.2.2 Block ui styler用户界面 53 7.2.3 Block UI Styler操作实例 58 7.3NX加载对话框设计 7.3.1DLⅩ文件加载设置 58 7.3.2DⅩ文件调用方法 ,59 7.3.3对话框缓存和回调 7.3.4对话框和组块属性 64 7.3.5对话框和组块代码标识 7.3.6属性列表 ..65 7.3.7属性值查询和设置方法 ..66 7.4选择组块 ,,66 7.4.10 K Apply按钮管理 ..66 7.4.2选择对象列表. 66 7.4.3 Update回调.. 66 7.4.4 Selection filter设置. .,66 7.1.5 Selection filter回调 67 7.4.6实例说明 67 7.5 Updale回调说明. 67 第一章NX0pen简介 1.1 NX API简介 NX是一款功能强人的 CAD/CAM/CAE软件,它不仅可以通过UⅠ操作来控制各种功能,还 提供了多种应用程序开发包(API)对NX内部对象进行访问。在这些API基础上,用户可以 开发各种自动程序,定制N功能,甚至可以在现有NX功能之上二次开发新的 CAD/CAM/CAE 软件产品。 NX API只有如下特点: 1)多种开发语言支持:C,C+,Java,.Net, Python 2)多种操作系统平台支持: Windows, linux,Unix 3)超过90%的NX功能覆盖率 4)不同NX版本间的良好致性 1.1.1NXAⅠ架构与统一对象模型 NX内部采用统一对象模型米描述NX内部任一对象及其操作。NUI操作和 NX API都是 枃建于ⅨX统一对象模型之上,以确保NXAI与从叮操作访问的是统一的NX内部对象模型 基于不同语言的 NX API都是由同一个NX内部对象转化而来,无论用户采用哪一种语言的 API其最终调用的是同一个内核函数,从而真正实现了平台无关性和开发语言无关性。 1.1.2现有 NX API 自1976年,UG(NX的前身)提供了第一个APⅠGRP起,NX陆续了提供了UG0pen (1997年),KF(2000年), NXOpen(200年)等多种API 1.1.2. 1 GRIP(Graphics Interactive) 种类似LISP的简单交互式图形编程语言。GRIP程序以其运行效率高、简单易学和不 长驻内存的特点深受工程人员的喜爱,但其可实现NX的功能比较少,有一定的局限性。 般适用企业简单的二次开发。 1.1.2.2 UGOpen(也被称为UHLN) 种基于C的NX二次开发AP1,包括3000多个C函数,其功能强大的特点适合企业或 第三方软件公司进行系统、高级的开发。由于它是直接在NX的内部代码的基础上建立的, 所以可实现大部分NX的功能,但它需要有C语言和软件工程等技术的支持,相对比较难学。 1.1.2.3 KF(Knowledge Fusion) 种应用于知识熔接技术的由求解需求驱动的解释性面向对象的语言,是基于知识工程 的智能化的NX二次开发API,其灵活、易学、可以知识驱动的特点适合企业或第三方软件 公司进行专家系统的开发。但是目前它的功能不是很全,所以往往和 UGOpen和 NXOpen结合 起来进行开发。 1.1.2.1 NXOpen 种完仝基于面向对象的新一代N二次开发API。它支持多种开发语言与多种操作系 统平台,覆盖了NX绝大部分功能ε可从 Journal功能直接录制NX的操作生成代码,开发 更为简单,适合工程人员进行简单快速的开发,也适合企业和第三方软件公司进行高级复制 的功能定制。 1.1.3 NX API比较 用户在进行NX二次开发时需要了解各API的特点,结合项目开发的需求,选用适合的 API进行开发。以下在对不同 NX API就易用性,主流性和可扩展性方面进行了较为客观的 比较: 现有 NX API 易用性 主流性 可扩展性 发布的N版木GRIP好非主流开发语言差在NX之前发布 UGOpen 差 主流开发语言 在NX之前发布K较差非主流开发语言差NX NXOpen 较好 主流开发语言 好 NX后随NX版本更新 易用性:开发语言是否清楚,直观,并有较好的帮助文档与代码例程 主流性:是否支持主流的开发语言与主流的IDE(集成开发环境) 可扩展性:代码是否容易移植到新的 NX API 发布的NX版本:要开发的NX版本应该高于 NX API的发布版本,例如,开发的NX 为NX3,那应该选择发布版本低于NX3的API 1.2 NXOPEN概述 NXOpen是从NX4开始提供的全新 NX API工具集,NX4后新增加的NX的功能都支持 NXOpen。 NXOpen直接构建于NX统一对象模型之上,支持多和开发语言与多和开发平台,并 支持NX5以后的新UI- Block styled ui 1.2.1 NXOPEN特性 与NX的其他API相比, NXOpen具有如下的特性: NXOpen Journal功能可录制N的操作直接生成代码,开发非常简单 NXOpen支持的多种开发语言:C,C++,,Net,Java NXOpen支持现有的NXUI开发库: Block Styler, UI Styler NXOpen提供了对 UGOpen API的 Wrapper,以确保 UGOpen开发的程序也有铰好的可移 植性到 NXOpen NX∪pen提供了交互运行,批处理运行以及远程运行等多种运行模式 NXOpen覆盖了绝大部分的NX功能,是目前覆盖功能最全的APl。因为和U操作访问 的是统一对象,所以NX新功能与其 NXOpen的API同时发布 1.2.2 NXOpen API应用程序层次框架 个典型的 NXOpen API应用程序的层次框架图如下。 1)用户程序通过 NXOpen对象对Nx内部对象进行访问和操作 2)用户程序通过 NXOpen对象可以实现NX的绝大部分现有功能 3)用户稈序通过 NXOpen对象 Wrapper可以访问 LGOpen函数和对象 1.2.3 Block Styled UI NX Open API在NX6及其以后的版本支持 Block Styled UI以及 Block styled ui设计 器 Block Ui Styler Block Styled UI是由N提供的,标准化 Block构建,它功能强大,灵活,可用性史 佳,支持各类图形界面手枘( Handle)以及各类UI选择工具,例如智能选择器(Sart Collector)和UI构造器( Constructor) B1 ock UI Styler是 Block Styled UI的设计器 提供5类,共30多种标准化 Block,封装性和可重用性更好 设计UI更灵活 支持自动生成多种开发语言版本的代码:C|,VB.NT,Java,C 1.3 Journamation NXOpen 1. 3. 1 Journal 从NX4开始,NX提供类似Ms0 ffice宏( Macro)的 journal功能,可以对用户操作进行 录制和回放。 Journa1录制的用户操作将直接牛成 NXOpen的代码,在 Journal editor中可 以直接编辑和回放,非常方便。 Journa1产生的各种语言版本的 NXOpen的代码都可以直接 作为 NXOpen的代码范例,让 NXOpen的开发更加容易。 1.3.2 Journamation Journamation是 Journal与 automation的合称, Journal产生的\X0pen代码片段经 过一定的修改,编译后就可以生成二次开发自动程序 automa t ion。 Journamation的程序可 以独立于 Journal editor,以外部模式(exe),内部模式(dl1)在N中运行。一个典型的 Journamation程序的开发沇程应该是 1)分解用户的开发需要为NX的某些基本功能 2) Journal这些基本功能为 NXOpen的代码片断 3)修改 NXOpen代码片断为需要开发的 Journamation 4)如果需要UI,用 Block ui styler设计UI,并产生I的 XOpen代码 5)将 Journamation与U的 NXOpen代码结合,组合为复杂的应用程序 1.4 NXOpen支持语言和平台 NXOpen访问的是同一个统一对象嫫型,不同语言版本的NXen之间可以相互转换。参 考以下每节中不同话言版本的 NXOpen的例子,可以清楚看到这点。本书在后面的章节中 NXOpen的范例将重点以C+版本为主,其他语言版本的 NXOpen的范例可以用C++版本的范 例转化得到。 1.1 Journamation架构实现 NXOpen提供的一致的多语言版本API是通过 Journamation架构来实现的。如下图所示, NX产品开发人员编写通用类接口定义文件,命名为“JA”文件,同时应用NX内部C/C++代 码实现接口定义。然后通过JA编译器编译“JA”文件生成支持JAVA,.NT,C艹等语言的 封装文件,最终编译这些文件生成 最终发布的AP。应用程序开发人员不论基于何种语言进行 NXOpen开发,其和MX产品 开发人员将完全等同的使用这些类的接∏实现功能。 1.4.2 NXOpen for Ctl 1.4.2.1 NXOpen C++API开发包: NX Open C++的头文件位于 KNX install directory) UGOPEN\ NXOpen\ NX Open C+库文件位于 <NX install directory)UGOPEN\ X0penC++库文件包括 libnxopencpp.1ib: NX Open中所有内部对象相关的API动态库 libnxopenuicpp.1ib: Block UI Styler相关的API动态厍 1.4.2.2 NXOpen C++实例: 应用 NXOpen C++创建 Sphere的例子如下图所示 1.4.3 nXopen for. Net NXOpen for.Net包括C#与VB.Net两个版木。 1.4.3.1 NXOpen. Net Apl开发包 NXOpen.NLT库位于 NX install d rectory入 UGIIm NX Open.NET库包括 NXOpen.d11: NX Open中所有内部对象相关的API动态库 NXOpen.UF.d1:NX0pen中对于UFUN函数的 Wrapper动态库 NXOpen. Utilities.dll:对 NX Open的对象的管理和支持类,比如 Session, Manager, Version, Exception等 NXOpenUI.d11: Block ui Styler相关的API动态库 Managedloader.dll:用于在 Journal editor中加载N0pen动态库 C#实例: 应用 NXOpen C#创建 Sphere的例子如下图所小 1.4.3.3 NXOpen VB.net实例

...展开详情
试读 72P NXOpen二次开发.pdf
立即下载 低至0.43元/次 身份认证VIP会员低至7折
抢沙发
一个资源只可评论一次,评论内容不能少于5个字
关注 私信 TA的资源
上传资源赚积分,得勋章
最新推荐
NXOpen二次开发.pdf 46积分/C币 立即下载
1/72
NXOpen二次开发.pdf第1页
NXOpen二次开发.pdf第2页
NXOpen二次开发.pdf第3页
NXOpen二次开发.pdf第4页
NXOpen二次开发.pdf第5页
NXOpen二次开发.pdf第6页
NXOpen二次开发.pdf第7页
NXOpen二次开发.pdf第8页
NXOpen二次开发.pdf第9页
NXOpen二次开发.pdf第10页
NXOpen二次开发.pdf第11页
NXOpen二次开发.pdf第12页
NXOpen二次开发.pdf第13页
NXOpen二次开发.pdf第14页
NXOpen二次开发.pdf第15页

试读结束, 可继续读5页

46积分/C币 立即下载 >