基于Pro/Toolkit的Creo 2.0二次开发过程研究

2015-01-01 02:26程相文邢树雪
机械工程与自动化 2015年5期
关键词:二次开发对话框控件

程相文,邢树雪

(河北联合大学 机械工程学院,河北 唐山 063009)

0 引言

Creo 2.0软件是PTC 2010年发布的一个整合Pro/E、ProductView和CoCreate三大软件并重新分发的新型CAD设计软件包,其目的在于解决目前多CAD系统数据共用、CAD系统难用等问题,并集成了多个可互操作的应用程序,其功能覆盖整个产品开发领域。面对日益多样化的用户要求,为了能更好地满足具体产品的设计需求,达到提高经济效益的目的,需要应用Creo 2.0提供的二次开发工具Pro/Toolkit进行二次开发,形成具体零部件的参数化设计系统,这一研究工作是Creo 2.0软件应用过程中的一项重要任务。

1 参数化设计概念

参数化设计就是使零件模型中的不可变参数变量化,使其变成可以在一定范围内任意调整的可变参数。修改零件模型中的可变参数,可以得到新的不同的零件模型。参数化的零件模型中建立的一些约束关系,正是表达了设计者的设计目的。参数化设计极大地提高了零件模型的修改和重新生成的速度,在产品的相似设计、系列设计及CAD系统的二次开发方面均有很大的实用价值[1]。

2 参数化设计系统

参数化设计系统主要由主程序、数据编辑、三维建模、Creo数据库、API接口等5个部分构成,如图1所示。主程序可以和Creo数据库以及数据编辑进行双向的数据传输,其他各模块都可以通过主程序来进行调用。主程序作为交换数据的中心,直接连接着Creo数据库、API接口、数据编辑、三维建模等4个模块[2-3]。

3 基于Pro/Toolkit二次开发步骤及环境

3.1 选择运行模式

Pro/Toolkit应用程序有同步和异步两种工作模式。同步模式下,Pro/Toolkit应用程序一定会和Creo系统一起运行。同步模式又有动态连接(DLL)和多进程两种模式。动态连接模式是用户将编写好的程序在开发环境下编译后系统会生成dll文件,Creo和应用程序进程同步,通过调用一定的函数来实现两者之间的信息交换。多进程模式是用户将编写好的程序在开发环境下编译后系统会生成exe文件,Creo和应用程序在自己的进程中各自运行,消息系统会实现两者间的信息交换。设计者可根据情况选择以上两种模式。异步模式下,无需启动Creo,能单独运行Pro/Toolkit应用程序。由于在同步模式时代码简单且程序运行较快,这就方便了设计者编程和修改,所以在开发时我们选用同步模式。在确定了开发模式之后,我们需要完成对开发环境的设置[4]。

图1 参数化设计系统结构

3.2 环境设置

利用向导在Visual Studio 2010环境中新建MFC DLL类型项目,为了统一编译Pro/Toolkit函数、MFC函数和API函数,需要对Visual Studio 2010进行正确的环境设置,具体设置如下:

(1)项目—属性,在“配置属性”下选择“常规”,然后选择“字符集”为“使用多字节字符集”。

(2)在“配置属性”下选择“C/C++”,然后在“常规”的“附加包含目录”中添加Pro/Toolkit头文件路径(以本人安装路径为例):

(3)在“C/C++”的“代码生成”选项中将“运行库”改为“多线程DLL(/MD)”

(4)在“链接器”选项中选择“常规”,然后在“附加库目录”中添加Pro/Toolkit库文件路径(以本人安装路径为例)。

(5)在“链接器”选项中选择“输入”,然后在“附加依赖项”中添加 mpr.lib、psapi.lib、protk_dllmd.lib和netapi32.lib。

4 基于Pro/Toolkit二次开发基本方法

使用Pro/Toolkit开发应用程序包含3个基本步骤:编写源文件、生成可执行文件、注册并运行。

4.1 编写源文件

Pro/Toolkit应用程序的主程序与一般C语言的程序有所区别,必须包含两个称为user_initiaiize()和user_terminate()的函数。user_initialize()是 Pro/Toolkit的初始化函数,此函数应包含用户或第三方开发的Pro/Toolkit应用程序所需的一切初始化信息(例如对系统菜单的扩展、对话框的创建等)。user_terminate()是Pro/Toolkit的结束中断函数。

4.1.1 菜单设计

在基于Pro/Toolkit的Creo系统的二次开发过程中,用户可以添加自定义菜单,这也是开发过程中最常用方法。菜单设计主要有以下几步:①编写txt格式菜单信息文件,并编写代码;②编写扩展名.c格式菜单文件;③编译程序,生成可执行的菜单条菜单及下拉菜单源程序;④编写protk.dat菜单注册文件和代码;⑤注册文件在Creo中的注册运行。

4.1.2 MFC对话框设计

对话框可提供可视化交互式界面,使操作更加方便快捷,但Creo不提供对话框的开发编程接口,需借助Visual Studio 2010来开发对话框,实现程序操作界面的可视化。针对不同的零部件,要充分利用工具栏中的静态文本控件、编辑控件、列表控件、图像控件和组框控件等不同的控件,并对各控件的ID、标题等属性进行设置,以达到功能齐全、简单明了的效果。

4.1.3 程序源文件

编写代码是程序开发的重要部分,其各种功能是通过代码来实现的。Pro/Toolkit程序需要使用MFC类库和Pro/Toolkit函数库中的函数。MFC类库为设计Windows风格的界面提供了强大的技术支持;Pro/Toolkit函数库包含了大量的操作函数,设计者应理解这些函数,并根据既定的格式在Pro/Toolkit程序中使用它们[5]。

4.2 生成可执行文件

通过编译程序生成可执行文件。要生成可执行文件首先需要制作一个make file(即.mak)的文件,也可以由Creo自带的make file文件修改得到。make file工程文件的编写应包括动态链接库或生成可执行文件的名称、源文件位置、包含文件与库文件的位置等内容。Creo为应用程序提供了动态链接库模式和多进程模式,用户可根据实际需要灵活地编译生成文件。需要注意的是:如果用户选择dll模式工作,则需要将源文件生成动态链接库;如果用户选择多进程模式,则必须要将源文件编译成exe文件。也就是说,选择的模式要与编译生成的文件相对应。

4.3 可执行文件在Creo中注册并运行

用户通过注册文件向Creo提供Pro/Toolkit应用程序的一些相关的基本信息,编写好注册文件就可以把Pro/Toolkit应用程序加载到Creo环境中,并在其中运行。注册文件中包含的字段如下:name,startup,allow_stop,exec_file,text_dir,revision,end。手工注册是在启动Creo之后,选择“工具”菜单中的“辅助应用程序”,在“辅助应用程序”对话框中点击“注册”,然后选到注册文件,确定后即完成注册。选中注册的应用程序,点“启动”,则应用程序启动。注册成功之后即可运行Pro/Toolkit应用程序的各种功能。

5 结论

Creo系统软件的通用性能保证我们建立大量的产品的三维模型,但在时间和人员方面的需求也很大。若企业在Creo一系列的通用软件的基础上进行二次开发,一定会极大地提高某些特定产品的生产、设计效率,方便企业的新产品研发和更新,提高企业效益,从而加强企业的市场竞争力。

[1] 付靖渝.基于VB的轴系结构设计系统开发[D].成都:四川大学,2007:2-12.

[2] 缪燕平,何柏林.Pro/Toolkit对Pro/E二次开发参数化设计系统研究[J].机械设计与制造,2008(9):185-187.

[3] 刘超,陈海峰,范晓斌.基于Pro/E二次开发的参数化零件的研究与实现[J].组合机床与自动化加工技术,2009(6):26-29.

[4] 刘文强,胡夏夏,宋士刚.基于Pro/Toolkit的Pro/E参数化设计[J].轻工机械,2011(2):104-107,111.

[5] 肖锋,张超群,邹艳红.基于 Visual C++.NET的 Pro/E二次开发过程研究[J].机械工程与自动化,2008(1):75-76.

猜你喜欢
二次开发对话框控件
浅谈基于Revit平台的二次开发
正常恢复虚拟机
浅谈Mastercam后处理器的二次开发
Bootlace Worms’Secret etc.
What Is Beauty?
关于.net控件数组的探讨
西门子Easy Screen对倒棱机床界面二次开发
浅谈VB的通用对话框《CommonDialog》控件的使用
ASP.NET服务器端验证控件的使用
基于Pro/E二次开发的推土铲参数化模块开发