基于Pro/E的三维发布物爆炸视图技术研究

2017-09-29 00:57邱博瑨王鹏顾婷婷
科学家 2016年13期

邱博瑨 王鹏 顾婷婷

摘要 目前,描述Pro/E模型多数选择文本和二维图纸结合的方式,对于缺少经验或缺乏一定技能的用户获得相关信息比较困难。本文利用Pro/E系统自带的开发工具Pro/TOOLKIT对Pro/E进行二次开发,并充分利用三维数据协同工作软件ProductView安装方便、快捷,占用内存小的优势,对其进行二次开发从而建立了强大的三维交互式网页。从而实现用户无需安装Pro/E软件,通过网页可三维交互式的远程访问设计人员所发布的装备模型爆炸视图的目标。

关键词 爆炸视图;Pro/E;网页交互式

中图分类号 TP3 文献标识码 A 文章编号 2095—6363(2016)13—0059—01

为提高3DManual软件与Pro/E的数据交换的集成度,对Pro/E的三维模型爆炸视图显示技术进行了研究,从而进一步实现脱离Pro/E将制作好的三维电子交互手册发布成网页,最终通过浏览器远程访问手册信息。如图1所示为3DManual软件的设计思想及其实施步骤。

装配体的爆炸图是将装配体中的每个零件与其他零件分开表示。爆炸视图仅影响组件的外观部分,不改变原设计意图和组件之间的实际距离,主要目的是便于观察装配体的结构,所以常常用于制作产品结构说明书。实现在3DManual软件中集成Pro/E爆炸视图的发布关键要解决的是Pro/E爆炸视图模型信息提取和模型轻量化以及如利用提取的信息和轻量化在网页中访问。本文利用Pro/E系统自带的开发工具Pro/TOOLKIT对Pro/E进行二次开发。Pro/TOOLKIT中有大量的c语言库函数,利用它可以直接调用Pro/E软件的数据信息,使得Pro/E以外的程序调用Pro/E的数据库和内部应用程序安全有效。ProductView可以对三维模型进行查看、标记以及测量等,它安装方便快捷同时占用内存很小,本文对ProductView进行二次开发,从而实现了Pro/E爆炸视图模型的远程交互式浏览。

1爆炸视图的Pro/E模型轻量化

为了Pro/E模型能够在网页中被三维交互式访问,就需要将Pro/E模型存储为ProductView能够显示的格式,即模型轻量化。模型轻量化的一般方法是将模型存储为“.pvs”以及相应的“.pva”文件,或改变文件proepview.pvr的参数。具体实现是利用Pro/TOOLKIT中介绍的函数ProProductviewrmattedxport。但是爆炸视图比较特殊,这种一般方法无法实现爆炸视图的Pro/E模型轻量化。通过研究发现控制爆炸视图的显示,其本质就是对每个零件以爆炸视图的位置进行重新定位零件位置。具体方法为读取Pro/E模型爆炸视图中零件的位置矩阵,利用函数“SetInstanceLocation”对ProductView模型显示进行控制,重新定位ProductView模型组件中各零件的位置,从而实现网页中爆炸视图的显示。

2爆炸视图的模型信息提取

读取指定模型组件和组件的所有零件单位、分别提取爆炸视图名称、分别提取所有爆炸视图各零件矩阵。利用Pro/TOOLKIT提供的函数可以获得相应的模型信息。如函数“ProUnitsystemUnitGet”可获得模型组件或零件单位,函数“ProModelitemNameGet”可获得的模型视图名称,函数“ProAsmcomppathTrfGet”可获得模型组件或零件矩阵。

3爆炸视图矩阵处理

综上ProductView与Pro/E中的位置矩阵区别具体总结如下:

1)Pro/E中的位置矩阵为3×4矩阵,ProductView位置矩阵为4×4矩阵;

2)Pro/E中有组件单位和组件的零件单位,组件与零件的单位有可能存在不同,有“英尺”和“毫米”两种可能,Product View中组件和零件单位只有一种“米”;

3)Pro/E中的位置矩陣包含(ΔX,ΔY,ΔZ)而ProductView中的位置矩阵的(ΔX,ΔY,ΔZ)为(1,1,1):

4)Pro/E中组件中的零件位置矩阵是相对于组件的,而Product View中组件的零件位置与组件无关,是相对于零坐标系的。

根据ProductView与Pro/E中的位置矩阵区别,Pro/E中的位置矩阵转换成ProductView的位置矩阵具体实现方法如图2所示。

4结论

本文在3DManual软件平台上,通过对爆炸视图Pro/E模型轻量化、爆炸视图的模型信息提取、爆炸视图矩阵变换等一系列处理,实现了脱离Pro/E将制作好的三维电子交互手册发布成网页,最终实现通过浏览器远程访问手册信息的目标,使得对于Pro/E爆炸视图模型的描述摆脱传了对旧有方法的依赖,为缺少经验或缺乏一定技能的需求人群获取模型信息扫除了障碍。endprint