Siemens PLM Sortware征文:UG OpenFlight数据交换输出接口开发技术研究
针对目前无法把UG CAD文件直接转换为OpenFlight数据文件的问题,通过分析Parasolid和OpenFlight的数据组织方式和场景描述方式,提出并实现了一个UG到OpenFlight的数据交换接口开发技术方案。该方案在VC6平台下采用UG NX Open C和OpenFlight API混合开发,通过UG CAD模型装配层次、拓扑和参数曲面等相关信息自动提取,曲面离散和多边形网格剖分控制,模型拓扑及层次关系在OpenFlight文件中的重构等步骤,实现了UG CAD模型到OpenFligh
1 前言
Unigraphics(UG)软件是高端CAD/CAE/CAM系统,目前在汽车、航空航天、机械制造等领域应用广泛。OpenFlight格式是MultiGen-Paradigm公司设计开发的视景仿真数据格式,目前广泛应用于视景仿真、虚拟现实等技术领域,它是Vega、Vega Prime等视景仿真开发平台的专用数据格式,多数虚拟现实开发环境都与之兼容。
截至到目前,UG不提供OpenFlight数据交换接口,无法直接把UG模型文件转换为OpenFlight数据文件。然而在场景漫游、虚拟装配/拆卸、虚拟培训、虚拟样机等众多领域,常常需要把UG模型数据转换为OpenFlight数据格式文件。目前较为常用的技术途径是把UG文件转换为某种中性格式(如VRML、STL、PLY等),然后通过某个商用转换软件把中性文件转换为OpenFlight数据文件,这种方式经过多次数据转换,缺陷较大,比较突出的问题是模型的拓扑结构和装配层次在转换过程中的丢失以及转换后生成的多边形数量难以控制。
为解决上述问题,必须开发UG到OpenFlight的数据交换接口。
2 文件描述及组织方式分析
UG和OpenFlight之间的模型转换问题源于视景仿真环境与CAD环境中对形体描述方法的差异,UG采用参数曲面来描述三维几何形体并保留了模型的建模过程,OpenFlight则采用多边形描述任意几何,并通过多边形数量的增减、纹理映射实现对物体的细节描述。
UG几何建模核心Parasolid的模型结构(图1)包括拓扑、几何和相关数据三个部分。其中装配件是一个对其它装配件或体的指针的集合;每一个指针被称为一个实例;变换表示几何操作,包括平移、旋转等,主要依附于实例。
OpenFlight是典型的层次型数据存储格式,各个层次数据之间通过树状结构描述各类节点之间的联系,它通过几何体(Geometry)、层次(hierarchy)和属性(attributes)三种元素定义三维物体。其中几何体把三维模型看作一系列有序坐标点的集合,包含多边形、边和顶点,可以构造平面,并通过一系列平面逼近任意三维形体;几何体通过层次关系组织在一起;属性用来提供节点的附加特性,包括颜色、纹理、材质等属性,从而获得需要的三维可视效果。一个典型的OpenFlight场景结构如图2所示。
可以看出,UG和OpenFlight之间的数据转换的关键在于把参数曲面转换为某种近似程度的多边形网格模型,并按照规定的层次和结构进行多边形网格存储。
Unigraphics(UG)软件是高端CAD/CAE/CAM系统,目前在汽车、航空航天、机械制造等领域应用广泛。OpenFlight格式是MultiGen-Paradigm公司设计开发的视景仿真数据格式,目前广泛应用于视景仿真、虚拟现实等技术领域,它是Vega、Vega Prime等视景仿真开发平台的专用数据格式,多数虚拟现实开发环境都与之兼容。
截至到目前,UG不提供OpenFlight数据交换接口,无法直接把UG模型文件转换为OpenFlight数据文件。然而在场景漫游、虚拟装配/拆卸、虚拟培训、虚拟样机等众多领域,常常需要把UG模型数据转换为OpenFlight数据格式文件。目前较为常用的技术途径是把UG文件转换为某种中性格式(如VRML、STL、PLY等),然后通过某个商用转换软件把中性文件转换为OpenFlight数据文件,这种方式经过多次数据转换,缺陷较大,比较突出的问题是模型的拓扑结构和装配层次在转换过程中的丢失以及转换后生成的多边形数量难以控制。
为解决上述问题,必须开发UG到OpenFlight的数据交换接口。
2 文件描述及组织方式分析
UG和OpenFlight之间的模型转换问题源于视景仿真环境与CAD环境中对形体描述方法的差异,UG采用参数曲面来描述三维几何形体并保留了模型的建模过程,OpenFlight则采用多边形描述任意几何,并通过多边形数量的增减、纹理映射实现对物体的细节描述。
UG几何建模核心Parasolid的模型结构(图1)包括拓扑、几何和相关数据三个部分。其中装配件是一个对其它装配件或体的指针的集合;每一个指针被称为一个实例;变换表示几何操作,包括平移、旋转等,主要依附于实例。
OpenFlight是典型的层次型数据存储格式,各个层次数据之间通过树状结构描述各类节点之间的联系,它通过几何体(Geometry)、层次(hierarchy)和属性(attributes)三种元素定义三维物体。其中几何体把三维模型看作一系列有序坐标点的集合,包含多边形、边和顶点,可以构造平面,并通过一系列平面逼近任意三维形体;几何体通过层次关系组织在一起;属性用来提供节点的附加特性,包括颜色、纹理、材质等属性,从而获得需要的三维可视效果。一个典型的OpenFlight场景结构如图2所示。
可以看出,UG和OpenFlight之间的数据转换的关键在于把参数曲面转换为某种近似程度的多边形网格模型,并按照规定的层次和结构进行多边形网格存储。
本文为e-works原创投稿文章,未经e-works书面许可,任何人不得复制、转载、摘编等任何方式进行使用。如已是e-works授权合作伙伴,应在授权范围内使用。e-works内容合作伙伴申请热线:editor@e-works.net.cn tel:027-87592219/20/21。
责任编辑:童伟
近期热点
相关文章
相关新闻
相关资料
相关热贴
- cad免费教材,cad教材下载系列教材(阳光视频教程sunug.cn)
- cad视频教学下载,cad视频教学,免费cad视频教学(阳光视频教程sunug.cn)
- cad视频教程,cad教程下载,cad论坛(阳光视频教程sunug.cn)
- Cimatron全套视频教材,免费的cimatron教材(阳光视频教程sunug.cn)
- 全套系统的Cimatron IT教程,cimatron it,cimatron it 13下载,cimatron it下载(阳光视频教程sunug.cn)
- Cimatron视频教学下载,Cimatron视频教学,免费Cimatron视频教学(阳光视频教程sunug.cn)
- catia全套视频教材,免费的catia教材(阳光视频教程sunug.cn)
- catia培训教程,catia教程,catia论坛,catia下载(阳光视频教程sunug.cn)
相关博客
