Pro/E二次开发的关键技术*
作者:佚名; 更新时间:2014-12-05

 
摘要:  本文深入研究并实现了运用Pro/E的二次开发工具Pro/TOOLKIT进行程序自动特征建模技术,提出用动态链接库方式实现用微软基本类库(MFC)开发Pro/E对话框界面的通讯机制,并给出了实现方案和程序示例。 

关键字:  CAD 二次开发 特征建模 

  
The Key Technology About Application Development Of Pro/E 

  
Abstract: Based on the research of the application development in Pro/E, the paper presents a automatic feature modeling method by Pro/Toolkit. It describes the implement of information transformation mechanism in interfaces with DLL and basic class libraries, and shows the example of the system. 

Key words: CAD; Application Development; Feature Model
  
1         引言 
自动建模指面对特定的产品,根据用户输入的参数或根据运用CAD系统进行设计产生的数据结果,系统应能动态地、自动地将模型建造出来,本文称这种技术为程序自动建模。Pro/E是一种采用了特征建模技术,基于统一数据库的参数化的通用CAD系统。利用它提供的二次开发工具Pro/TOOLKIT,在Pro/E的基础上进行二次开发,可以比较方便地实现面向特定产品的程序自动建模功能,并且可以把较为丰富的非几何特征如材料特征、精度特征加入所产生的模型中,所有信息存入统一的数据库,是实现CAD/CAE/CAM集成的关键技术之一。本文分别对几何特征和非几何特征的程序自动建模技术进行论述。 
CAD系统要和其它系统集成往往需要通用数据库接口。然而直到20版的Pro/TOOLKIT仍没有提供数据库编程接口。另外,弹出式对话框是目前最先进最流行的一种人机交互界面,能向用户提供图形与文字共存的可视化环境,使操作更为自然、简便和快速,但Pro/TOOLKIT只提供下拉式菜单(包括菜单栏标题及其菜单项)的编程接口,而没有提供开发对话框的编程接口。本文研究并开发了Pro/TOOLKIT与MFC的接口,利用MFC强大的功能实现对话框的开发与数据库的访问。 
    
2  几何特征的程序自动建模方法分析 
对于几何特征的程序自动建模,Pro/TOOLKIT提供了以下三种方法来实现: 
  
2.1 特征描述 
每一个特征由不同的特征元素树(feature element tree)来定义。在程序中对每个特征元素树的全部变量赋值一次,就可以产生一个特征,多个特征的积累就形成产品模型。特征元素树包含的信息分为四类[1] : 
(1)  特征本身的所有选项和属性。如特征类型名称、隆起或切槽特征等的深度计量方式、孔的放置方式等。 
(2)       特征与已存在的几何实体的参考关系。 
(3)       用于构造特征的平面图形的起始位置。 
(4)       所有的尺寸值。 
目前这种方法还不成熟,因为它有以下三个缺点: 
(1)   要由程序产生模型,程序必须包含产品模型的所有信息,从底层起由程序构建模型,编程量十分大。 
(2)   因为每种特征由不同的特征元素树来描述,所以编程难度大而且所编程序非常难于理解。 
(3)   并不是所有的特征都可以用这种方法产生[1]。 
                                         
2.2 族表 
这种方法的步骤是:预先手工构建产品模型,把它作为族表的类属件(generic part),然后在族表中定义各个控制参数来控制模型的形状大小,这样就可在程序中通过改变各个参数的值来得到所需要的衍生件。这个衍生件的产生是独立存在的,不需要为它定义参考基准。 
  
2.3用户定义特征 
与族表法相同之处是同样要预先手工构建产品模型。模型创建后定义要包含的几何特征、参考基准、可变尺寸以及可变尺寸的记号(symbol),然后将这些信息存为一个后缀为gph的文件。这样就可以在程序中通过这个文件来改变可变尺寸,产生所需的衍生件。与族表法不同的是,这种方法所编的程序过程与手工建模过程比较相似,因而易于理解且编程较易,因而在本文着重探讨运用这种方法的技巧。 
  
3        非几何特征的附加  
    运用Pro/TOOLKIT提供的库函数,可以十分方便地将一些非几何特征包括材料特征以及精度特征附加到已建模型中。     
要由程序自动地设置材料特征,较为方便直观的办法是先在pro/e界面上手工编辑多个材料文件,输入它所要求的各种参数值(例如密度、泊松率等),并存为后缀为mat的文件。所输入参数的格式不限,因为存盘后pro/e会自动将参数格式转化为它规定的格式。定义好材料文件后,就可以在程序中将多种材料特征赋给产品模型,并设定其中一种材料为模型的当前使用材料。材料特征信息与产品模型的其它特征信息存于同一数据库中,而模型的当前使用材料的各种参数将在该产品的分析计算中自动被使用[1]。精度特征的附加不需要先产生辅助文件,只需用Pro/TOOLKIT提供的库函数(如ProGtolCreate()等)即可实现。 
  



4.    自动特征建模实例  

    在这个实例中,将利用用户定义特征的方法,用C语言编程,产生一个以缺省座标平面为参考基准的冲头模型,并加入精度特征和材料特征。事实上,只需修改此程序的可变尺寸赋值语句、用户定义特征文件名和材料文件名的给定语句,就能成为其它模型的自动建模函数。

(1)按上面所说的方法先手工构建一任意尺寸的长方体并在头部倒圆角形成冲头模型,按上述方法制作用户定义特征文件(文件名为 “punch.gph”)。冲头模型所包含的几何特征为隆起和圆角,参考基准为缺省座标平面,将长、宽、高和圆角半径定义为可变尺寸,它们的记号分别定为 “length”、“width”、“height”和“rp”。

(2)以下为冲头模型的程序自动建模函数,这个程序可以动态地根据不同的长、宽、高和圆角的输入值,动态地、自动地构造出冲头模型,并在Pro/E窗口中显示出来。

double h , l , w , rp ;

data.n_var_dims = 4;

data.var_dims=(Pro_udf_var_dim*)calloc(4, izeof(Pro_udf_var_dim)); 

ProStringToWstring (data.var_dims[0].name, "length");

data.n_references=3;

data.references=(Pro_udf_reference*)calloc(3, sizeof(Pro_udf_reference)); 

data.references[0].ref_ptr = NULL;

data.references[0].ref_id = 1;

data.n_orientations=2;

data.orientations=(Pro_udf_ref_orient*)calloc(2, sizeof(Pro_udf_ref_orient));

data.orientations[0]=PROUDF_REF_NO_FLIP;

data.n_quadrants=0;

ProStringToWstring(material_name, "Fe.mat");

      Return 0 ;

}

 

5. Pro/E与MFC的接口开发

从本质上说,Pro/E与MFC的接口就是Pro/E系统调用MFC应用程序的途径。本文研究并开发一个Pro/TOOLKIT应用程序来实现该接口。Pro/E系统、Pro/TOOLKIT应用程序与MFC应用程序的通信方式是接口实现的关键之一。本文提出采用动态链接库(DLL)方式实现三者之间的通信。因为通信是通过直接的函数调用实现的,所以有执行速度快的优点。接口方案如图1所示。

核心期刊快速发表
Copyright@2000-2030 论文期刊网 Corporation All Rights Reserved.
《中华人民共和国信息产业部》备案号:ICP备07016076号;《公安部》备案号:33010402003207
本网站专业、正规提供职称论文发表和写作指导服务,并收录了海量免费论文和数百个经国家新闻出版总署审批过的具有国内统一CN刊号与国际标准ISSN刊号的合作期刊,供诸位正确选择和阅读参考,免费论文版权归原作者所有,谨防侵权。联系邮箱:256081@163.com