CN102609991B - 三维实体模型轻量化优化方法 - Google Patents

三维实体模型轻量化优化方法 Download PDF

Info

Publication number
CN102609991B
CN102609991B CN201210018297.5A CN201210018297A CN102609991B CN 102609991 B CN102609991 B CN 102609991B CN 201210018297 A CN201210018297 A CN 201210018297A CN 102609991 B CN102609991 B CN 102609991B
Authority
CN
China
Prior art keywords
file
model
virtools
dimensional entity
entity model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201210018297.5A
Other languages
English (en)
Other versions
CN102609991A (zh
Inventor
刘虎
田永亮
白金鹏
马云鹏
罗明强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beihang University
Original Assignee
Beihang University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beihang University filed Critical Beihang University
Priority to CN201210018297.5A priority Critical patent/CN102609991B/zh
Publication of CN102609991A publication Critical patent/CN102609991A/zh
Application granted granted Critical
Publication of CN102609991B publication Critical patent/CN102609991B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

一种三维实体模型轻量化优化方法,该方法基于CATIA、三维引擎Virtools以及3DMAX三种软件,利用CATIA对相关CAD模型进行特定格式的存储,然后将相关实体模型导入到Virtools中,利用Virtools对实体模型进行优化运算,再利用Virtools对模型进行存储,最后将实体模型导入3DMAX中以完成模型的材质处理、贴图、烘焙等工作。该方法包括以下几个步骤:步骤一:用CATIA软件对三维实体模型文件进行特定格式的保存;步骤二:利用Virtools平台打开三维实体模型文件;步骤三:利用Virtools平台对三维实体模型文件进行轻量化处理;步骤四:三维实体模型的导出;步骤五:用3DMAX软件导入轻量化后的三维实体模型。

Description

三维实体模型轻量化优化方法
【技术领域】
本发明一种三维实体模型轻量化优化方法,具体涉及模型的导出、模型格式转换、优化运算以及模型再导入等过程,属于航空航天仿真领域。
【背景技术】
目前,在航空航天仿真领域,一个重要的工作是把三维实体模型从相关计算机辅助设计CAD软件(如产品开发解决方案CATIA软件)导入到仿真图形处理软件(如三维动画软件3DMAX等)中进行处理。但是由于三维实体模型包含了很多参数信息,它的文件体积通常很大,这就为后期的图形处理设备提出了很高的要求,同时也使图形处理的效率降低,困难加大。不符合现阶段科技发展的需求,有待改进。
【发明内容】
本发明提供了一种三维实体模型轻量化优化方法,该方法能在保证模型仿真效果的前提下有效降低文件体积,提高开发效率,降低开发成本。本发明基于CATIA、三维引擎Virtools以及3DMAX三种软件,是在三者组成的平台上实现对三维实体模型的轻量化优化。
本发明的目的在于提供一种三维实体模型轻量化优化方法,应用该方法,在航空航天仿真的三维实体模型构建阶段,文件体积被有效减小,设备要求明显降低。相关开发人员可以利用较低的成本以较高的效率完成航空航天仿真开发工作。从而解决在网络环境下,航空航天产品协同开发过程中,尤其是航空航天设计到航空航天制造、仿真的过程中,复杂产品模型数据交换、远程传输困难等瓶颈问题。
本发明是一种三维实体模型轻量化优化方法,其主要内容是:利用CATIA对相关CAD模型进行特定格式的存储,然后将相关实体模型导入到Virtools中,利用Virtools对实体模型进行优化运算,再利用Virtools对模型进行存储,最后将实体模型导入3DMAX中,用以完成模型的材质处理、贴图、烘焙等工作。
本发明是一种三维实体模型轻量化优化方法,该方法具体步骤如下:
步骤一:用CATIA软件对三维实体模型文件进行特定格式的保存:
步骤1.1用CATIA软件打开所要处理的三维实体模型
打开步骤:运行CATIA软件,在打开的软件界面中选择“File”菜单,打开所需处理的三维实体模型文件。
步骤1.2用CATIA软件对三维实体模型文件进行特定格式的存储
存储步骤:选择“File”菜单,在其中选择“Save as”菜单项,在打开的对话框中设置工程名称和存储路径,选择存储格式为“3dxml”,从而完成三维实体模型文件的存储。
步骤二:利用Virtools平台打开三维实体模型文件
Virtools是达索公司出品的软件,是一款三维实体模型整合处理平台,本发明将在Virtools平台上通过编写与运行相应代码实现模型的轻量化处理。
具体实现:运行Virtools平台,在启动的平台界面中选择“Resource”菜单,在下拉菜单中选择“Import file”选项,打开步骤一中存储的三维实体模型文件。
步骤三:利用Virtools平台对三维实体模型文件进行轻量化处理
步骤3.1编写三维实体模型处理代码:
具体实现:Virtools平台主要是借助Building Blocks对三维实体模型进行操作。Building Blocks即“操作功能模块”,简称“BB”,对其的使用是Virtools平台操作的核心。Virtools平台中提供多种BB,实现包括“对象管理”、“场景管理”、“脚本管理”、“状态”、“粒子”、“控制器”、“渲染”、“数据效果”、“脚本”、“服务器”等三维模型开发所需的各方面功能。此外,Building Blocks还支持外部的编辑,用户可以根据需要,用C语言编写.cpp文件,实现其个人在开发过程中所需的个性化功能,以提高开发效率或实现特殊功能。鉴于此,步骤三首先需要编写C程序代码以实现三维实体模型的对外输出。编写三维实体模型处理代码的具体方法如下所述:
步骤3.1.1建立代码的头文件:
Virtools要求相应的.cpp文件包含Building Blocks的属性信息、可编辑参数信息,头文件将完成这两部分信息的声明。
步骤3.1.2新文件的存储:
Virtools将会建立新的目标模型文件,用于存储和编辑已有的三维实体模型,如果创建不成功(这种不成功包括输入参数不正确或者存储路径无效等)将会返回并且报错。
步骤3.1.3模型贴图存储:
三维实体模型的贴图将以图片的方式进行保存,在这一步骤中,将会为模型贴图创建文件夹并对相应的贴图进行保存。
步骤3.1.4模型材质信息的存储:
三维实体模型的材质信息是obj文件的必要要求,在这一步骤中,将会把模型的材质信息写入到mlt文件中。
步骤3.1.5将顶点世界坐标写入obj文件:
在步骤三中的小步骤1.5中,利用辅助物体获取物体的世界坐标,并把世界坐标写入到obj文件中。
步骤3.1.6将顶点的UV信息写入obj文件:
UV信息被用来确定贴图的位置坐标信息,写入obj文件后,贴图的参考位置将被确定。
步骤3.1.7将顶点的法线坐标写入obj文件:
顶点的法线坐标将被用来确定贴图的方向,写入obj文件后,贴图的朝向将被确定。
步骤3.1.8将构成图的顶点索引写入obj文件:
在这里曲面被离散称为多个顶点,顶点的位置坐标,所对应的贴图等信息被写入obj文件。
步骤3.1.9按照材质顺序将面分别写入obj文件:
通过步骤3.1.1至3.1.9,已经定义了贴图位置、方向的材质将被赋予所对应的面上,由此完成了obj文件的所有内容。
步骤3.2编写三维实体模型的处理Building Blocks:
步骤3.2主要实现.cpp文件到Virtools功能实现模块间的转换,即.cpp代码到Building Blocks间的转换。具体步骤如下:
步骤3.2.1保存前述.cpp文件;
步骤3.2.2运行Virtools扩展开发工具包;
步骤3.2.3选择建立Building Blocks运行向导;
步骤3.2.4完善有关信息,完成向导;
步骤3.2.5将前述.cpp文件摘入向导生成的文件中,完成Building Blocks的创建。
步骤四:三维实体模型的导出:
运行Virtools,在Building Blocks标签中导入新建的Building Blocks至schematic栏中,目标填写路径、所保存组、文件名、是否导出贴图、是否导出材质、贴图类型等。完成后,单击界面右下方的运行按钮,即可完成模型的转换。
步骤五:用3DMAX软件导入轻量化后的三维实体模型
运行3DMAX软件,在主菜单中选择“导入”,在弹出的选择列表中选择要进行导入的obj文件,即已完成轻量化并由Virtools导出的文件,双击进行导入,即完成三维实体模型轻量化优化方法。
本发明优点及功效在于:提供的该三维实体模型轻量化优化方法,能在保证模型仿真效果的前提下有效降低文件体积,提高开发效率,降低开发成本。本发明基于CATIA、三维引擎Virtools以及3DMAX三种软件,是在三者组成的平台上实现对三维实体模型的轻量化优化。
【附图说明】
图1是步骤一至步骤四的流程图。
图2是步骤三利用Virtools平台对三维实体模型文件进行轻量化处理的流程图。
本发明中英文符号含义说明如下:
CATIA:CATIA是法国达索公司(Dassault)的产品开发旗舰解决方案。作为PLM协同解决方案的一个重要组成部分,它可以帮助制造厂商设计他们未来的产品,并支持从项目前阶段、具体的设计、分析、模拟、组装到维护在内的全部工业设计流程。
Virtools:Virtools是一套整合软件,可以将现有常用的档案格式整合在一起,如3D的模型、2D图形或是音效等。Virtools是一套具备丰富的互动行为模块的实时3D环境虚拟实境编辑软件,可以制作出许多不同用途的3D产品,如网际网络、计算机游戏、多媒体、建筑设计、交互式电视、教育训练、仿真与产品展示等。
3DMAX:3DMAX是Autodesk公司开发的基于PC系统的三维动画渲染和制作软件。
Building Blocks:Virtools软件中的功能实现模块,相关人员通过使用不同的Building Blocks以实现软件的功能。
3dxml、cpp、obj:本方法中所涉及平台使用的相关文件后缀名。
File、Save as...:CATIA的菜单项。
Resource、Import file...:Virtools的菜单项。
Schematic:Virtools中的功能栏。
【具体实施方式】
下面结合图1和图2,对本发明中的各部分设计方法作进一步的说明:
本发明是一种三维模型轻量化优化方法,该方法具体步骤如下:
步骤一:用CATIA软件对三维实体模型文件进行特定格式的保存
步骤1.1用CATIA打开所要处理的三维实体模型:
打开步骤:运行CATIA,选择“File”菜单,打开所需处理的三维实体模型文件。
步骤1.2用CATIA对三维实体模型文件进行特定格式的存储:
存储步骤:选择File菜单,选择“Save as”菜单项,在打开的对话框中设置工程名称和存储路径,选择存储格式为“3dxml”,完成文件的存储。
步骤二:利用Virtools平台打开三维实体模型文件
Virtools是达索公司出品的一款三维模型整合处理平台,本方法将在此平台上通过编写与运行相应代码实现模型的轻量化处理。
具体实现:运行Virtools,选择Resource菜单,选择Import file选项,打开上一步骤中存储的模型文件
步骤三:利用Virtools平台对三维实体模型文件进行轻量化处理
步骤3.1编写三维实体模型处理代码:
具体实现:Virtools软件主要是借助Building Blocks对模型进行操作的。Building Blocks即操作功能模块,不同的模块用以实现不同的功能。此外,Building Blocks支持外部的编辑,用户可以根据需要编写.cpp文件实现特殊的功能。鉴于此,本方法首先需要编写c程序代码以实现模型的对外输出。具体方法如下所述,
步骤3.1.1建立代码的头文件:
Virtools要求相应的.cpp文件包含Building Blocks的属性信息、可编辑参数信息,头文件将完成这两部分信息的声明。
实现函数代码示例:
步骤3.1.2新文件的存储:
程序将会建立新的目标模型文件,如果创建不成功(这种不成功包括输入参数不正确或者存储路径无效等)程序将会返回并且报错。
实现函数代码示例:
步骤3.1.3模型贴图存储:
模型的贴图将以图片的方式进行保存,这里将会为模型贴图创建文件夹并对相应的贴图进行保存。
实现函数代码示例:
步骤3.1.4模型材质信息的存储:
模型的材质信息是obj文件的必要要求,这里将会把模型的材质信息写入到mlt文件中。
实现函数代码示例:
步骤3.1.5将顶点世界坐标写入obj文件:
本步骤包括利用辅助物体获取物体的世界坐标,并把世界坐标写入到obj文件中。
实现函数代码示例:
步骤3.1.6将顶点的UV信息写入obj文件:
UV信息被用来确定贴图的位置坐标信息,写入obj文件后,贴图的参考位置将被确定。
实现函数代码示例:
//将顶点的UV信息写入o bj文件
步骤3.1.7将顶点的法线坐标写入obj文件:
顶点的法线坐标将被用来确定贴图的方向,写入obj文件后,贴图的朝向将被确定。
实现函数代码示例:
步骤3.1.8将构成图的顶点索引写入obj文件:
在这里曲面被离散称为多个顶点,顶点的位置坐标,所对应的贴图等信息被写入obj文件。
步骤3.1.9按照材质顺序将面分别写入obj文件:
在这里前述已经定义了贴图位置、方向的材质将被赋予所对应的面上,由此完成了obj文件的所有内容。
步骤3.2编写模型处理Building Blocks
具体实现:本步骤主要实现cpp文件到Virtools功能实现模块间的转换,即cpp代码到Building Blocks间的转换。具体步骤如下:
步骤3.2.1保存前述.cpp文件;
步骤3.2.2运行Virtools扩展开发工具包;
步骤3.2.3选择建立Building Blocks运行向导;
步骤3.2.4完善有关信息,完成向导;
步骤3.2.5将前述.cpp文件摘入向导生成的文件中,完成Building Blocks的创建。
步骤四:三维实体模型的导出
运行Virtools,在Building Blocks标签中导入新建的Building Blocks至schematic栏中,目标填写路径、所保存组、文件名、是否导出贴图、是否导出材质、贴图类型等。完成后,单击界面右下方的运行按钮,即可完成模型的转换。
步骤五:用3DMAX软件导入轻量化后的三维实体模型
运行3DMAX软件,在主菜单中选择“导入”,在弹出的选择列表中选择要进行导入的obj文件,即已完成轻量化并由Virtools导出的文件,双击进行导入,即完成三维实体模型轻量化优化方法。

Claims (1)

1.一种三维实体模型轻量化优化方法,其特征在于:该方法具体步骤如下:
步骤一:用CATIA软件对三维实体模型文件进行特定格式的保存:
步骤1.1用CATIA软件打开所要处理的三维实体模型:
运行CATIA软件,在打开的软件界面中选择“File”菜单,打开所需处理的三维实体模型文件;
步骤1.2用CATIA软件对三维实体模型文件进行特定格式的存储:
选择“File”菜单,在其中选择“Save as”菜单项,在打开的对话框中设置工程名称和存储路径,选择存储格式为“3dxml”,从而完成三维实体模型文件的存储;
步骤二:利用Virtools平台打开三维实体模型文件:
运行Virtools平台,在启动的平台界面中选择“Resource”菜单,在下拉菜单中选择“Import file”选项,打开步骤一中存储的三维实体模型文件;
步骤三:利用Virtools平台对三维实体模型文件进行轻量化处理:
步骤3.1编写三维实体模型处理代码:
步骤3.1.1建立代码的头文件:
建立代码的头文件,完成对三维实体模型相应的.cpp文件包含操作功能模块Building Blocks的属性信息、编辑参数信息的声明;
步骤3.1.2新文件的存储:
建立新的目标模型文件,用于存储和编辑已有的三维实体模型,如果创建不成功将会返回并且报错;
步骤3.1.3模型贴图存储:
将三维实体模型的贴图以图片的方式进行保存,为模型贴图创建文件夹并对相应的贴图进行保存;
步骤3.1.4模型材质信息的存储:
将三维实体模型的材质信息写入到mlt文件中;
步骤3.1.5将顶点世界坐标写入obj文件:
利用辅助物体获取物体的世界坐标,并把世界坐标写入到obj文件中;
步骤3.1.6将顶点的UV信息写入obj文件:
UV信息被用来确定贴图的位置坐标信息,写入obj文件后,贴图的参考位置将被确定;
步骤3.1.7将顶点的法线坐标写入obj文件:
顶点的法线坐标被用来确定贴图的方向,写入obj文件后,确定贴图的朝向;
步骤3.1.8将构成图的顶点索引写入obj文件:
曲面为离散的多个顶点,将顶点的位置坐标、所对应的贴图信息写入obj文件;
步骤3.1.9按照材质顺序将面分别写入obj文件:
将已经定义了贴图位置、方向的材质赋予所对应的面上,由此完成了obj文件的所有内容的写入;
步骤3.2编写三维实体模型的处理操作功能模块Building Blocks:
步骤3.2实现.cpp文件到Virtools功能实现模块间的转换,即.cpp代码到操作功能模块Building Blocks间的转换;具体步骤如下:
步骤3.2.1保存前述.cpp文件;
步骤3.2.2运行Virtools扩展开发工具包;
步骤3.2.3选择建立操作功能模块Building Blocks运行向导;
步骤3.2.4完善有关信息,完成向导;
步骤3.2.5将前述.cpp文件写入向导生成的文件中,完成操作功能模块Building Blocks的创建;
步骤四:三维实体模型的导出:
运行Virtools,在操作功能模块Building Blocks标签中导入新建的操作功能模块Building Blocks至schematic栏中,填写路径、所保存组、文件名、是否导出贴图、是否导出材质、贴图类型;完成后,单击界面右下方的运行按钮,即完成模型的转换;
步骤五:用3DMAX软件导入轻量化后的三维实体模型:
运行3DMAX软件,在主菜单中选择“导入”,在弹出的选择列表中选择要进行导入的obj文件,即已完成轻量化并由Virtools导出的文件,双击进行导入,即完成三维实体模型轻量化优化方法。
CN201210018297.5A 2012-01-19 2012-01-19 三维实体模型轻量化优化方法 Active CN102609991B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210018297.5A CN102609991B (zh) 2012-01-19 2012-01-19 三维实体模型轻量化优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210018297.5A CN102609991B (zh) 2012-01-19 2012-01-19 三维实体模型轻量化优化方法

Publications (2)

Publication Number Publication Date
CN102609991A CN102609991A (zh) 2012-07-25
CN102609991B true CN102609991B (zh) 2014-12-24

Family

ID=46527331

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210018297.5A Active CN102609991B (zh) 2012-01-19 2012-01-19 三维实体模型轻量化优化方法

Country Status (1)

Country Link
CN (1) CN102609991B (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104217049A (zh) * 2013-05-31 2014-12-17 北京空间技术研制试验中心 一种复杂系统三维模型的轻量化显示方法
CN105005642B (zh) * 2015-06-25 2017-11-21 北京航空航天大学 一种三维模型批量格式转换及轻量化方法
CN105303618B (zh) * 2015-06-25 2019-02-12 苏州蜗牛数字科技股份有限公司 一种基于3dmax脚本技术进行模型贴图优化制作的方法
CN105069018B (zh) * 2015-07-13 2018-08-03 中车青岛四方机车车辆股份有限公司 一种基于catia平台的厂区模型漫游浏览方法及系统
US10303811B2 (en) 2015-07-31 2019-05-28 Autodesk, Inc. Deep-learning based functional correlation of volumetric designs
CN105550389A (zh) * 2015-11-03 2016-05-04 徐工集团工程机械股份有限公司 一种产品模型的轻量化处理方法及装置
CN106875464B (zh) * 2017-01-11 2021-03-16 丝路视觉科技股份有限公司 三维模型文件处理方法、上传方法及客户端
CN107392561A (zh) * 2017-06-06 2017-11-24 青岛中德信息服务有限公司 基于bim和互联网的建筑环境全景化展现方法
CN107818594A (zh) * 2017-09-06 2018-03-20 北京矩阵空间科技有限公司 三维模型文件格式系统及读取方法
CN107742037A (zh) * 2017-10-27 2018-02-27 北京空间技术研制试验中心 航天器模型数据简化方法
CN108009354A (zh) * 2017-11-29 2018-05-08 中冶南方工程技术有限公司 转炉倾动力矩的计算方法
CN109583031A (zh) * 2018-11-02 2019-04-05 成都飞机工业(集团)有限责任公司 一种Catia数模轻量化处理方法
CN109978978B (zh) * 2019-02-27 2023-11-21 壹仟零壹艺网络科技(北京)有限公司 SketchUp模型轻量化处理方法和系统
CN110347976B (zh) * 2019-05-22 2023-10-17 广州明珞汽车装备有限公司 快速导出设备数据模型的方法、系统、装置和存储介质
CN111259474B (zh) * 2020-01-13 2021-04-13 陕西心像信息科技有限公司 大体量bim模型数据处理及加载方法和设备
CN111681401A (zh) * 2020-06-19 2020-09-18 江西飞尚科技有限公司 基于BIM信息流的高支模lora传输安全监测装置及方法
CN114419233A (zh) * 2021-12-31 2022-04-29 网易(杭州)网络有限公司 模型生成方法、装置、计算机设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101976466A (zh) * 2010-09-25 2011-02-16 西北工业大学 一种三维便携工艺文件的生成方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101976466A (zh) * 2010-09-25 2011-02-16 西北工业大学 一种三维便携工艺文件的生成方法

Also Published As

Publication number Publication date
CN102609991A (zh) 2012-07-25

Similar Documents

Publication Publication Date Title
CN102609991B (zh) 三维实体模型轻量化优化方法
Shi et al. A multiuser shared virtual environment for facility management
CN106200983B (zh) 一种结合虚拟现实与bim实现虚拟现实场景建筑设计的系统
CN111833436A (zh) 一种基于Unity 3D的自适应装配指导方法及系统
CN107832558A (zh) 数字舞台创意场景智能生成方法
Bao The application of intelligent algorithms in the animation design of 3D graphics engines
CN108153932B (zh) 桌面式三维虚拟维修模型的建模系统
Zhou et al. Computer-aided process planning in immersive environments: A critical review
Gao et al. Realization of music-assisted interactive teaching system based on virtual reality technology
CN112667072A (zh) 大学生职业行为习惯养成训练虚拟系统及方法
CN202049490U (zh) 煤矿采掘设备虚拟现实系统
Fu et al. Easyvrmodeling: Easily create 3d models by an immersive vr system
Wainer et al. Tools for graphical specification and visualization of DEVS models
CN116229788A (zh) 虚拟服务器组装仿真培训系统设计方法、系统及应用方法
Hu et al. A rapid development method of virtual assembly experiments based on 3d game engine
CN112132962A (zh) 基于虚拟现实的城轨车辆检修作业工艺研究方法
Jiang et al. Animation scene generation based on deep learning of CAD data
Kang et al. Animation Character Generation and Optimization Algorithm Based on Computer Aided Design and Virtual Reality
CN109064557A (zh) 一种通过图纸数据进行3d建模的方法、系统、终端及介质
CN108648564A (zh) 一种基于vr技术的微观化学辅助教学系统
Wang CAD Modeling Process in Animation Design Using Data Mining Methods
Anagnostopoulos et al. An industrial simulator utilizing a gaming platform
CN115762251B (zh) 基于虚拟现实技术的电力机车车体组装方法
CN113238743B (zh) 一种模拟训练系统虚实混合控制方法
Zhang 3D Interactive model design based on Multimedia Animation Technology

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant