NX Open API编程技术(txt+pdf+epub+mobi电子书下载)


发布时间:2020-09-17 14:31:55

点击下载

作者:汪锐

出版社:电子工业出版社

格式: AZW3, DOCX, EPUB, MOBI, PDF, TXT

NX Open API编程技术

NX Open API编程技术试读:

前言

时间过得真快,转眼进入CAD/CAM行业已经15年了。一直以来,软件的二次开发都是自己非常喜欢研究的领域,回想当年在AutoCAD R12中用AutoLisp完成的公差标注工具、图幅分区标记、明细表自动读取工具等一个个二次开发的程序,虽然功能比较简单,但却是日常工作中离不开的小工具。

随着对这个行业的逐渐了解,所接触到的企业客户也越来越多,有的企业在引入了CAD/CAM软件系统后应用得非常成功,而有的企业却无法推广,最后软件被搁置一边。通过对这些企业的了解,发现应用成功的企业,其软件系统与业务特点结合得比较紧密,并按照企业特点进行了定制,有的还依托软件进行二次开发;而应用得不好的企业,均反映软件操作复杂,与日常的业务特点相距甚远,要达成一个日常看似简单的任务,需要繁复的操作才能实现。

NX是西门子工业软件公司推出的新一代数字化产品开发系统,它提供了同类产品中最出色的CAD/CAE/CAM的完全关联性的一体化集成应用程序套件,涵盖产品设计、仿真、制造和完整开发流程。

基于通用软件平台进行必要的二次开发,能够将企业业务流程、专业知识及使用习惯与NX软件的强大功能有机结合起来,实现快速、高效的专业应用,是企业CAD/CAE/CAM系统深化应用的必经之路。

在通用软件系统上,按照企业业务需求进行二次开发,可以很好地解决通用软件与企业业务特点结合的问题,但相应地,对开发人员也提出了更高的要求。本书的编写目的即在于为广大读者系统而全面地介绍NX软件二次开发的基本方法和基本流程,以期有更多的读者能够从一般的NX软件使用者或普通的程序员成为NX二次开发的人员,能够基于NX开发出一个个在日常工作中常用的小工具,提高工作效率和工作质量。

本书的编写得到了西门子工业软件(上海)有限公司刘明孝经理的大力支持,西门子工业软件(上海)研发中心的同事张传顺给予了细致的审校,西门子工业软件(上海)有限公司张振亚高级顾问在选题方面给予了指导,并提供部分实例,在此对他们表示最诚挚的谢意。另外,感谢电子工业出版社的许存权编辑,是他的辛勤工作使本书能够很快与读者见面。

本书所需程序代码和实例模型,请到华信教育资源网(www.hxedu.com.cn)找到本书网页,即可下载,或发邮件到xucg@phei.com.cn索取。

西门子工业软件(上海)有限公司 汪锐

2012年3月于成都

第1章 概述

本书旨在介绍如何使用NX Open API进行NX软件的二次开发,通过本书的介绍,读者可以了解如何使用Visual Basic.NET,C#,C/C++,Java及NX的操作记录工具,基于NX通用API接口进行NX软件的二次开发。另外,在本书中对NX菜单、工具条等的用户化设置及扩充也进行了细致的介绍。

1.读者应具备的基本技能

由于本书面向的是对NX二次开发感兴趣的读者,所以,读者应具备以下的基本技能,才能更好地理解本书中描述的技术内容。

● 熟练地使用NX软件进行设计。

● 了解NX零件、装配建模的基本概念。

● 了解NX软件授权机制。

● 能够使用操作记录工具。

● 掌握将操作记录的代码转换为应用程序代码的过程。● 了解通用API的概念。

● 熟练使用Visual Studio,Visual Basic.NET,C#,C/C++或Java等开发语言进行程序开发。

● 能够自主查阅并读懂Open API类库说明文档。

2.关于本书的文字格式说明

本书的文字格式说明见表1-1。表1-1 本书的文字格式说明

第2章 NX Open API简介

秉承“开放性设计”的理念,NX提供了一套完整的工具,使用户能够捕捉并且重用设计过程中的知识,而开放性和自动化是这套工具的核心,也是NX开发接口命名为“Open”的原因。在这个完整的工具体系下,在使用NX提供的灵活解决方案捕捉到用户工作过程中的知识后,还能够为其添加友好的用户交互界面,并将其集成到NX统一的集成框架中,使用户在使用这些包含用户特定知识的工具时,具有与使用原始NX一样的用户体验。图2-1描述了NX Open API的统一对象架构。图2-1 NX Open API统一对象架构

1.完整的NX开发工具

● 可以选择多种开发语言及界面设计工具,允许用户选择最适合自身特点的开发环境。图2-2描述了NX Open API所支持的开发工具的种类。

● 记录和回放(操作记录),能快速地进行基于NX自动化的程序开发。

● 对于各种开发语言,提供了统一的通用 API 接口,这个统一的接口基于 NX 统一的对象模型,无论采用何种开发语言进行开发,得到的系统特性都是相同的。

● NX的完整开发工具还包括知识熔接(Knowledge Fusion),这部分的内容不在本书的研讨范围。

2.NX Open开发工具(1)基于通用API接口的开发语言

● NX Open for C++

● NX Open for.NET

● NX Open for Java(2)以前使用的开发工具

● Open C

● Open C++

● NX Open GRIP(3)其他工具

● 操作记录Journaling

● 用户界面编辑器NX Open Block UI Styler

● 菜单MenuScript

● 知识熔接Knowledge Fusion图2-2 NX Open API开发工具集合

第3章 NX Open对象模型

与大多数面向对象的应用程序一样,NX也提供了完整的对象模型,用于描述其创建并管理的点、线、面、体、特征、零件、视图、属性等对象,这些系统对象包括但并不限于几何元素,了解NX Open的通用对象模型,有利于了解NX对象的体系架构,能够清楚地认识到用户正要操作的是哪个对象,它属于哪个集合,它自身又包含哪些集合,如何去访问这些对象及使用什么函数等。图3-1描述了NX对象模型的结构、属性、事件及各对象模型之间的关系。图3-1 NX Open API对象模型结构

以图3-1中最左边长方体创建过程为例,简单说明如下,例如,现在要在NX中生成一个简单的长方体,用户将使用Block这个特征去创建,按照手工的操作步骤,应当是首先启动NX,然后新建一个文件,接着在这个零件文件中创建一个Block特征并详细指定其长宽高的参数,最后按“确认”键创建此方块。

在NX Open中,流程基本上也是类似的,首先是启动NX,在程序中找到NX的进程(Session),然后在这个进程中查找当前打开的零件(PartCollection)及当前工作部件(Work),接着就要看当前工作部件中已经建立的特征集合(FeatureCollection),并在其中使用长方体创建对象(CreateBlockFeatureBuilder)去建立一个长方体(Block)特征,在这个特征对象上设置长宽高等参数,最后提交创建特征(CommitFeature)完成整个操作。

小提示

我们注意到整个创建的流程,无论是用手工操作还是使用NX Open程序去创建,基本上是一致的,也就是说,基于自动化接口的软件二次开发,其程序的思路与手工操作应当有一定程度的相似性,手工可以完成的烦琐工作,可以使用程序自动完成,以提高设计效率。

NX完整的对象模型,请参考以下手册:

● NX Open for C++Reference Guide,NX Open C++参考手册。

● NX Open for Java Reference Guide,NX Open Java参考手册。

● NX Open for.NET Reference Guide,NX Open.NET参考手册。

那么,如何得到NX Open完整的对象模型的详细信息呢?我们可以使用集成开发环境,例如,Visual Studio或Eclipse,在其中选择相应的NX Open对象,就可以看到其详细的描述信息,包含其属性、方法、对象的类型、输入/输出参数的要求等。另外,也可以在安装帮助文件后,查看HTML格式的对象描述信息。图3-2为在Visual Studio的对象浏览器中查看到的NX Open对象模型界面,图3-3为在Eclipse中使用Package Explorer查看到的NX Open对象模型界面,图3-4为帮助文件中描述的NX Open对象模型界面。图3-2 在Visual Studio的对象浏览器中查看到的NX Open对象模型图3-3 在Eclipse中使用Package Explorer查看到的NX Open对象模型图3-4 帮助文件中描述的NX Open对象模型

第4章 完成第一个NX用户化程序“Hello NX”

对软件开发人员来说,“Hello World”应该不会陌生,当学习一种新的编程软件的时候,这往往是编写的第一个程序。那么现在就来编写第一个NX Open的应用程序,把它叫做“Hello NX”。

对于NX三维软件来说,最基本的操作莫过于在三维环境下创建一个最基本的特征,例如,长方体、圆柱等,现在就来尝试利用NX Open创建一个长方体特征。

在NX Open所提供的开发套件里,操作记录是一个非常有用的工具,它能够将用户在NX中进行的手工操作在后台以特定的NX Open语言记录下来,通过回放这个操作记录文件,就可以重现用户刚才的操作,也就是说,用户所完成的工作在操作记录工具的帮助下可以快速地进行重用。

首先在NX的用户默认设置中对操作记录所使用的语言进行设置,如图4-1所示。本书中所有代码的例子都将使用Visual Basic.NET,对于熟悉C++、C#或Java的读者,可参考相应的参考手册获取帮助。

然后可以新建一个零件并开始进行操作记录。如图4-2所示,启动操作记录工具,该工具可以在进行相关NX操作的时候,在后台将相应的NX Open代码记录下来。这需要指定一个文件来保存记录下来的代码,如图4-3所示。

当操作记录命令激活后,在菜单和工具条命令上都将出现一个小的绿色标记提示用户,该提示符号表明当前命令是否可以被操作记录记录下来,如图4-4所示。

在操作记录命令激活的状态,可以按照正常的建模操作命令进行三维模型的创建,插入一个长方体设计特征,如图4-5所示。然后设置长方体的详细参数——长、宽、高及原点,并单击“确定”按钮,如图4-6所示。这个创建长方体的命令执行完成后,将在NX的图形显示窗口出现一个长方体的三维实体特征,如图4-7所示。

当所有操作命令结束后,就可以结束操作记录工具,停止录制将退出操作记录激活的状态,图4-8显示了如何停止操作记录的操作。

接下来可以进行操作记录的回放,按图4-9的提示创建一个新的零件文件,在这个零件文件中,重新创建一个长方体,但这次不是采用用户交互的方式进行长方体的创建,而是对操作记录进行回放,利用刚才记录的创建长方体的代码来创建这个三维几何特征。图4-10显示了如何回放刚刚创建的操作记录的操作。图4-1 设置操作记录语言图4-2 开始录制NX的操作记录图4-3 选择一个文件保存当前操作图4-4 工具条命令上的绿色标记表明命令是否被记录图4-5 插入一个长方体图4-6 输入长方体特征的参数图4-7 生成了一个长方体图4-8 停止操作记录图4-9 创建一个新的零件文件图4-10 回放现有的操作记录

如图4-11所示,选择刚刚创建的操作记录文件,并单击“运行”按钮,应该看到一个长方体出现在屏幕上,第一个NX Open应用程序正确运行了,看来,使用NX Open进行NX二次开发也并不是件很难的事。图4-11 选择刚才记录下来的操作记录文件

现在来看看操作记录究竟记录了什么?找到刚才记录的Hello_NX.vb文件,用Visual Studio打开进行研究。值得注意的是,由于是NX操作记录工具的自动记录,记录的代码中可能会有一些冗余的信息,这不影响程序的正常使用,关键是需要了解其中的编程方法和使用了哪些关键的对象类型及其成员函数。注意添加到其中以仿宋体文字显示的注释信息。

程序头,当前操作记录的版本及创建时间等信息。

声明对系统库及NX Open库的引用。

模块定义及主程序定义开始。

获得当前NX的运行程序进程及当前工作零件和当前显示零件。

设置撤销标记点。

在当前工作文件中获得特征集合对象,并得到其中的BlockFeatureBuilder对象,该对象用于创建长方体特征。

设置长方体特征的布尔运算类型。

设置长方体特征布尔运算的工具体。

这一段也是设置长方体特征布尔运算的工具体,但和上面的一段重复了,没关系,不影响程序的运行。

设置撤销标记点。

设置长方体特征的创建方式为原点和边长方式。

试读结束[说明:试读内容隐藏了图片]

下载完整电子书


相关推荐

最新文章


© 2020 txtepub下载