多语言展示
当前在线:429今日阅读:126今日分享:42

UG开发实战002:二次开发环境搭建

UG是一款集CAD/CAM/CAE/PADM于一身的软件系统,不仅支持实体造型、曲面造型、参数化造型、零件装配和工程图创建等功能,还提供了强大的二次开发工具UG/Open,允许用户通过该工具对UG进行二次开发。UG/Open是UG开发工具的总称,由API, Grip, Menus cript ,UIStyler组成。UG/Open 是在Microsoft Visual C++ 集成环境下开发编译的,所以UG二次开发优先选择C/C++/C#来实现,当然Java等主要高级语言开发也是支持的。
工具/原料

UG

方法/步骤
1

在我们安装UG的时候,在安装路径的..\Siemens\NX 9.0\UGOPEN\vs_files目录下有三个文件夹,分别是VB、VC、VC#,这是UG在VS中支持二次开发的语言和引导文件。我们将这三个文件夹复制到VS安装目录下对应的VB、VC、VC#文件夹中,VS会自动载入该模板。

2

打开Visual Studio 2015,在新建项目窗口中的VB、VC++、VC#对应模块中可以看到NX9 Open Wizard模版(这里我安装的是Visual Studio 2015和NX9.0)。

3

创建NX项目时遇到如下错误提示:找不到指定的模组,这是因为NX配置中指向的Visual Studio 开发版本与当前安装的Visual Studio 版本不匹配。

4

进入VS的安装目的...VC\vcprojects目录下,打开NX9_Open.vsz文件,将里面的Visual Studio版本号改为你安装的Visual Studio版本,这里我安装的是Visual Studio 2015,对应的是14.0。同理VC、VB也一样,将对应的NX9_VB.vsz、NX9_VCS.vsz文件中的版本更新下就可以使用啦。

5

现在我们就可以新建一个NX项目了,根据提示选择你需要创建的程序类型,是内部式还是外部式的,外部式无法利用UG的交互界面。接着需要选择开发语言C或C++,Use Open++ Calls是是否使用Use Open++的回调函数。

6

下一步选择激活应用程序的方法和卸载程序的方法,Automatically (ufsta)为使用ufsta方法作为入口函数,UG启动时自动加载;Explicitly (ufusr)为使用ufsta方法作为入口函数,在UG中选择程序手动加载;From a User Exit为使用用户出口函数作为函数入口,当用户执行某个功能时激活程序。卸载程序分别是当UG进程结束时自动卸载、当应用程序结束时自动卸载和手动选择程序卸载。

7

完成之后我们就创建了一个NX9 Open Wizard1项目了,程序中自动添加了ufsta( char *param, int *returnCode, int rlen )、ufusr_ask_unload( void )和report_error( char *file, int line, char *call, int irc)函数,其中ufsta( )是UG的入口函数,ufusr_ask_unload()是卸载处理函数,report_error()是错误处理函数,主要工作ufsta( )中完成。

推荐信息