CN108959707B - 一种基于Unity的BIM模型纹理材质可视化方法 - Google Patents
一种基于Unity的BIM模型纹理材质可视化方法 Download PDFInfo
- Publication number
- CN108959707B CN108959707B CN201810543405.8A CN201810543405A CN108959707B CN 108959707 B CN108959707 B CN 108959707B CN 201810543405 A CN201810543405 A CN 201810543405A CN 108959707 B CN108959707 B CN 108959707B
- Authority
- CN
- China
- Prior art keywords
- model
- unity
- texture
- revit
- information
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/13—Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Geometry (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- Architecture (AREA)
- Mathematical Analysis (AREA)
- Structural Engineering (AREA)
- Pure & Applied Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Civil Engineering (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种基于Unity的BIM模型纹理材质可视化方法,包括将模型从Revit链接到3Dmax并导出,然后载入Unity中,使得模型在Unity中可以多个可区分的子模型形式进行显示;利用Revit导出所述模型的组成元素及其纹理和/或材质列表,以及所述组成元素及其纹理和/或材质与所述模型的点面对应关系文件;对导入Unity的模型进行预处理,以保证模型和/或子模型的大小和/或位置显示准确;将所述组成元素及其纹理和/或材质信息添附到模型的对应位置,获得具有纹理材质的模型。本发明技术方案的方法,针对现有技术中直接导出没有纹理材质,且没有Submesh的问题,利用3d Max的转换功能以及Revit的二次开发,实现一种包含Submesh的BIM模型到Unity并可以确保材质及显示位置/大小的高品质导入。
Description
技术领域
本发明属于BIM可视化领域,具体涉及一种基于Unity的BIM模型纹理材质可视化方法。
背景技术
施工文件对准确资讯的需求来自多方面,包括图纸、采购细节、环境状况、文件提交程序和其它与建筑物品质规格相关的文件。支持建筑信息模型的人士期望这样的技术,可以为设计、承造、建筑物业主/经营者建立沟通的桥梁,提供处理工程项目所需要的即时相关资讯。而提供准确资讯的方法是经由工程的各个参与方在各自执行工作的责任期间,就其拥有的资讯,对这个建筑信息模型进行增添和参考。由于查询建筑信息模型能提供各类适切的资讯,协助决策者做出准确的判断,同时相比于传统绘图方式,在设计初期能大量地减少设计团队成员所产生的各类错误,以至于后续承造厂商所犯的错误。电脑系统能用碰撞检测的功能,用图形表达的方式知会查询的人员关于各类的构件在空间中彼此碰撞或干涉情形的详细资讯。由于电脑和软体具有更强大的建筑资讯处理能力,相比目前的设计和施工建造的流程,这样的方法在一些已知的应用中,已经给工程项目带来正面的影响和助益。
建筑信息模型(Building Information Modeling)又称建筑信息化管理(Building Information Management)或者建筑信息制造(Building InformationManufacture),是以建筑工程项目的各项相关信息数据作为基础,通过数字信息仿真模拟建筑物所具有的真实信息,通过三维建筑模型,实现工程监理、物业管理、设备管理、数字化加工、工程化管理等功能。BIM具有信息完备性、信息关联性、信息一致性、可视化、协调性、模拟性、优化性和可出图性等特点。其将建设单位、设计单位、施工单位、监理单位等多个项目参与方集成在同一平台上,共享同一建筑信息模型,有利于项目的可视化、精细化管理和建造。
目前,BIM直接导出的FBX文件是没有纹理材质的,即无法对BIM模型中特定对象进行观察检测,也无法将实际(含有纹理材质)的设施设备在BIM模型中对应显示其纹理材质,从而便于对设施设备进行管理等。而且,这种导出文件中没有Submesh(子模型),也就是说导出的文件中所有对象只有一种材质,但是往往我们的BIM模型是有多个submesh的,即由多个材质组成。例如,在一个办公区域的BIM模型中,对于其中的一个具体的对象如包括边框和显示屏的电脑,就只能将其显示为一个整体,既无法在导出的文件中对电脑的边框和显示屏进行区分,也无法观察到边框和显示屏的构成材质结构。但是这种纹理材质的区分显示是很有必要的,如利用某一建筑物的电网进行检测的时候,需要对其中的用电设备进行单独显示。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种基于Unity的BIM模型纹理材质可视化方法及系统,至少可以部分解决上述问题。本发明技术方案的方法,针对目前通过Revit直接导出BIM模型的FBX文件没有纹理材质的情况,首先在Revit中搭建起完整的BIM模型,然后将其从Revit中载入到3Dmax,然后再从3Dmax中导出BIM 模型的FBX文件;可以实现对整个BIM模型中的组成子部件进行单独可视化显示。
为实现上述目的,按照本发明的一个方面,提供了一种基于Unity的BIM模型纹理材质可视化方法,其特征在于,包括
S1将模型从Revit链接到3Dmax并导出,然后载入到Unity中,使得所述模型在Unity中可以多个可区分识别的子模型形式进行显示;
S2利用Revit导出所述模型对应的纹理和/或材质列表,以及所述纹理和/或材质与所述模型的点面对应关系,将其转换为Unity可识别形式,获取每种材质的外观配置文件,以及所述纹理和/或材质与所述模型的点面对应关系文件;
S3根据所述外观配置文件和/或点面对应关系文件对载入Unity的模型进行校正修复,使得所述模型在Unity中的显示与Revit一致;
S4对导入Unity的模型进行预处理,建立模型坐标系和本地坐标系的变换关系,以保证模型和/或子模型的大小和/或位置显示准确;
S5在大小和/或位置显示准确模型中,根据所述组成元素及其纹理和/或材质与所述模型的属性信息及其与模型的点面对应关系,将所述组成元素及其纹理和/或材质信息添附到模型的对应位置,获得具有纹理材质的模型。
作为本发明技术方案的一个优选,步骤S2包括,
S21从Revit中导出模型对应的纹理和/或材质列表,以及所述纹理和/或材质与所述模型的点面对应关系;
S22依次获取所述材质的属性信息以建立该材质的初始外观配置文件,以及所述纹理和/或材质与所述模型的初始点面对应关系文件;
S23筛选所述初始外观配置文件和/或初始点面对应关系文件中的信息,对Unity不能识别的信息进行辨认并将其转换为Unity可识别形式,并将其更新到初始外观配置文件和/或初始点面对应关系文件中;
S24遍历初始外观配置文件和/或初始点面对应关系文件,生成外观配置文件和/或点面对应关系文件。
作为本发明技术方案的一个优选,步骤S3包括,
S31比较模型在Revit和Unity中的显示状态,筛选出模型在Unity中与在Revit 中显示不一致的异形子模型;
S32根据异形子模型从Revit中对应导出的纹理和/或材质信息和/或点面对应关系,在Unity反向生成对应纹理材质,并将其添附到对应位置;
S33依次对每个异形子模型进行显示校正,以使所述模型在Unity中的显示与在Revit中一致。
作为本发明技术方案的一个优选,步骤S4包括,
S41对模型对象进行分析处理,删除不可见模型;
S42对Revit中导出的模型的比例因子进行调节;
S43将网格碰撞器添加到模型中。
作为本发明技术方案的一个优选,步骤S5包括,
S51在Unity中载入点面对应关系文件,结合模型信息,获取材质与子模型之间的点面对应关系;
S52读取材质列表,根据每种材质的外观配置文件反向构建材质;
S53将构建好的材质按照所述点面对应关系附加到对应的子模型上;
S54遍历所有子模型,完成整个模型纹理材质的添附。
为实现上述目的,按照本发明的一个方面,提供了一种基于Unity的BIM模型纹理材质可视化系统,其特征在于,包括
模型转换模块,用于将模型从Revit链接到3Dmax并导出,然后载入到Unity中,使得所述模型在Unity中可以多个可区分识别的子模型形式进行显示;
信息映射模块,用于利用Revit导出所述模型对应的纹理和/或材质列表,以及所述纹理和/或材质与所述模型的点面对应关系,将其转换为Unity可识别形式,获取每种材质的外观配置文件,以及所述纹理和/或材质与所述模型的点面对应关系文件;
显示校正模块,用于根据所述外观配置文件和/或点面对应关系文件对载入Unity的模型进行校正修复,使得所述模型在Unity中的显示与Revit一致;
坐标处理模块,用于对导入Unity的模型进行预处理,建立模型坐标系和本地坐标系的变换关系,以保证模型和/或子模型的大小和/或位置显示准确;
模型导出模块,用于在大小和/或位置显示准确模型中,根据所述组成元素及其纹理和/或材质与所述模型的属性信息及其与模型的点面对应关系,将所述组成元素及其纹理和/或材质信息添附到模型的对应位置,获得具有纹理材质的模型。
作为本发明技术方案的一个优选,信息映射模块包括,
Revit信息模块,用于从Revit中导出模型对应的纹理和/或材质列表,以及所述纹理和/或材质与所述模型的点面对应关系;
信息初始化模块,用于依次获取所述材质的属性信息以建立该材质的初始外观配置文件,以及所述纹理和/或材质与所述模型的初始点面对应关系文件;
信息更新模块,用于筛选所述初始外观配置文件和/或初始点面对应关系文件中的信息,对Unity不能识别的信息进行辨认并将其转换为Unity可识别形式,并将其更新到初始外观配置文件和/或初始点面对应关系文件中;
文件生成模块,用于遍历初始外观配置文件和/或初始点面对应关系文件,生成外观配置文件和/或点面对应关系文件。
作为本发明技术方案的一个优选,显示校正模块包括,
比较模块,用于比较模型在Revit和Unity中的显示状态,筛选出模型在Unity 中与在Revit中显示不一致的异形子模型;
修正模块,用于根据异形子模型从Revit中对应导出的纹理和/或材质信息和/或点面对应关系,在Unity反向生成对应纹理材质,并将其添附到对应位置;
遍历模块,用于依次对每个异形子模型进行显示校正,以使所述模型在Unity中的显示与在Revit中一致。
作为本发明技术方案的一个优选,坐标处理模块包括,
预处理模块,用于对模型对象进行分析处理,删除不可见模型;
比例调节模块,用于对Revit中导出的模型的比例因子进行调节;
碰撞器模块,用于将网格碰撞器添加到模型中。
作为本发明技术方案的一个优选,模型导出模块包括,
点面对应模块,用于在Unity中载入点面对应关系文件,结合模型信息,获取材质与子模型之间的点面对应关系;
反向构建模块,用于读取材质列表,根据每种材质的外观配置文件反向构建材质;
材质添附模块,用于将构建好的材质按照所述点面对应关系附加到对应的子模型上;
子模型遍历模块,用于遍历所有子模型,完成整个模型纹理材质的添附。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,具有以下有益效果:
1)本发明技术方案的方法,采用了首先在Revit中搭建起完整的BIM模型,然后将其从Revit中载入到3Dmax,然后再从3Dmax中导出BIM模型的FBX文件的方法;可以实现对整个BIM模型中的组成子部件进行单独可视化显示。
2)本发明技术方案的方法,在将模型导入Unity之后,对在Unity中显示错误的子模型进行筛选,通过导出模型在Revit中的绘制参数(显示参数),并将其对应到Unity 中,使得Unity可以生成对应的纹理材质对显示错误的子模型进行修正,以保证模型在 Unity中显示结果的准确性。
3)本发明技术方案的方法,在将模型导入Unity后,对其在Unity中的显示数据进行了筛选(如删除实际不可见的空模型等),并对FBX模型的比例因子进行了调节,以保证模型才能显示在合理的位置上,避免出现出现模型大小与模型通过Lumion导出的FBX或Revit直接导出的FBX大小位置不符等情况。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。下面结合具体实施方式对本发明进一步详细说明。
本实施例中,为了让导出的BIM模型具有详细的纹理材质,采用了以下步骤:
步骤一:将模型从Revit链接到3Dmax并导出,然后载入到Unity中。通过Revit 的模型选项,可以将BIM模型直接链接到3Dmax,在3Dmax的视图中导出BIM模型文件,然后再将导出的BIM模型文件载入到Unity中。其原因在于,BIM模型直接从Revit中导出的FBX文件的导出效果近乎白模,模型对象几乎没有纹理材质。在使用3Dmax导出的时候,首先需要在Revit中搭建起完整的BIM模型,然后将其从Revit中链接到3Dmax,然后再从3Dmax中导出BIM模型的FBX文件。将导出获得的FBX文件载入到Unity,通过3Dmax导出的BIM模型FBX文件会在Unity中以多个小模型的形式呈现。每个小模型具有确定格式的名称,例如本实施例中的名称格式优选为“栏杆扶手不锈钢-1050mm [634607]”,其中“634607”是“栏杆扶手”在Revit模型中的材质ID。事实上,通过 3Dmax从Revit中直接导出的BIM模型FBX文件是单元素导出的,即BIM模型中的同种对象都是相同的小模型进行表示,且这些小模型都是可以同其他元素进行区分显示的,与BIM模型整体在视觉上是可以区分开来的。但是,这些小模型不具备区分不同部分及其材质的能力,例如,在一个办公区域的BIM模型中,包括若干个显示器,每个显示器在模型中都以同样的显示器小模型表示。实际中,一个具体的显示器包括显示器边框和显示器屏幕,且两者材质也有所不同;但是在上述显示器小模型只是可以将显示器整体进行独立显示,其并不能展示显示器边框和屏幕两者材质的差别。因此需要进一步对上述小模型进行处理。
步骤二:获取BIM模型中材质的对应关系和点面的对应关系,用于在Unity中利用这些材质信息和点面对应关系反向重建构成与Revit中显示一致的模型。BIM模型在 Revit中创建的过程中,会使用到多种纹理材质信息,这些纹理材质信息在通过3Dmax 导出到Unity的过程中,可能会出现丢失和显示错误的问题。如一个具体的小模型具有多层结构,每层结构具有不同的纹理材质,但是Unity在对其进行显示的时候,可能会出现将多层结构的不同纹理材质渲染成同一材质的情况,从而影响在Unity中最终显示出来的BIM模型的准确性。因此,需要在Unity中对应构建出模型的纹理材质,并将其添附到对应的位置。
具体来说,从Revit中可以导出BIM模型使用的各个子模型及其使用的材质的信息文件(每个子模型由多种材质构成,每种材质都具有特定的材质信息,如墙体的子模型中,一面墙体包括涂层外墙、混凝土墙体、装饰层、涂层内墙等多种材质,每层材质不同,其材质信息也有差异),从而形成一个组成元素的纹理材质信息列表。本实施例中,组成元素可理解为子模型或者是revit中的构件,每个revit文件优选由多个构件组成,每个构件由多个材质进行渲染显示。一个revit文件中可以包含很多个材质(后面可能会用的)的定义(配置),以供再次生成该材质时进行调用。
依次获取每个子模型对应包含的元素的材质的ID、颜色、透明度、贴图图片路径等信息,Unity利用这些信息,对模型中出现显示丢失和显示错误的部分进行修正,使其与Revit导出前的BIM模型显示一致。也就是说,从Revit中导出BIM模型的时候,模型中所使用的材质信息也会一起按照一定的规则导出,如将模型按层级分为多个子模型,每个子模型对应导出一个材质信息文件。使得Unity可以根据这些对应生成的材质信息文件,在将BIM导入的时候对应生成相应的纹理材质。
本实施例中,上述修正是以子模型为单位进行的。即首先对导入Unity的BIM模型与Revit中的BIM模型进行比较,找出Unity中与之不一致(包括显示错误、丢失等) 的部分(异形子模型),根据Revit中对应导出的材质信息,在Unity反向生成纹理材质,逐个对每个显示不一致的异形子模型进行显示校正,最终使得在Unity中最终获得的BIM模型与在Revit中显示的BIM模型相一致。
本实施例中,从Revit中可以导出该BIM模型在绘制过程中使用的全部材质信息列表,每个材质拥有对应的识别ID,其相应的颜色、透明度、贴图图片路径等信息也可以进行配置。对于Revit导出的材质信息,有些信息Unity无法直接进行识别(如在导出信息中,材质的凹凸性以一个Unity无法识别的参数A代表),就需要将这些无法直接识别的信息进行辨认和/或映射(如识别A即为凹凸性,或者是将A映射为材质的凹凸性,确定凹凸性在Unity中对应的参数代码B,在A与B之间形成映射关系,即将Revit 导出的A信息识别为Unity的B信息),进一步找出这些信息所具体对应的材质属性,将其转换为Unity可识别的形式后,Unity才能利用这些信息对特定材质进行反向生成,以完成BIM模型的校正修复。
作为本实施例中的一个具体说明,对于整个BIM模型乃至一个具体的子模型来说,其需要保持使用的纹理材质准确,例如一个办公区域的BIM模型中的一个具体的子模型(如一台显示器)中可能包含有多种材质(如显示器边框和显示屏,具体的材质对象不同);然后获取每个材质的属性(如:显示器边框的材质属性,显示屏的材质属性),这些属性包括资源、连接属性和通用属性等;获取上述属性中的UIDefinition属性及AdvancedUIDefinition属性,找出这些属性在Revit中具体代表什么,以获取BIM模型在Revit中的外观定义配置文件。在获得的外观配置文件中,包含有该材质对应的 ID,Label(面板名称),checkbox(是否应用)等属性;同时,Lable(面板)由若干子元素组成的,还可获取子元素的ID,label属性等。其中,ID可对应UIDefinition 属性节点的兄弟属性的名字,Lable表示属性的类型,根据这种对应关系,可以获取每个材质的显示组成。即该种材质在Revit中的显示组成,如面板的凹凸性、反光性等属性,然后根据同一材质在Unity中的定义,Unity就可以利用这些属性信息反向生成对应的纹理材质。
一个材质外观配置由多个面板项组成(比如金属,高光,浮雕等),一个面板项由多个子配置项组成,来说明这个面板项的各个参数。本实施例中取到材质的属性ID,对应的就是这些面板或其子项的ID属性,而这个配置项的含义对应面板或其子项的Label属性。例如,在一个具体的StackPanel面板中,面板类型属于Relief Pattern(浮雕) 类型,对应stone_pattern属性,本实施例中使用状态优选有3个子信息,其中Bump Pattern对应属性stone_pattern;Image(图片)对应stone_pattern_map属性;Amount 对应stone_pattern_amount属性。进而,从Panel的配置,结合材质的属性,可以获取每个材质的常规显示信息,包括凹凸、高光、反射等具体信息。
也就是说,对于一个确定的BIM模型来说,构成该模型的纹理材质信息都以表格的形式列了出来,这个列表经过格式转换,可供Unity进行访问,进而根据格式转换后的材质信息列表,结合BIM模型在Revit中的纹理材质信息,可以准确地反向生成对应的纹理材质,以保证最终在Unity中呈现出来的模型既可以对子模型单独观察(可区分),也具有准确的纹理材质信息。
另外,确定了模型所使用的材质信息,还需要确定模型的哪个区域对应那种材质,即为模型与材质的点面对应关系。本实施例中,通过继承IExportContext导出类,可以获取revit元素ID(即revit内部对小模型的标识ID)应用了哪些材质ID及每个材质在该元素中有多少个面、多少个点。本实施例中这种对应关系优选以表格形式呈现,即为点面对应关系表。面与点在OnFaceBegin及OnPolymesh中可以获取。将材质对应关系表和点面对应关系表导出到XML文件中,以供Unity进行识别。
步骤三:对FBX文件进行预处理。本实施例中包括三个方面,第一,分析模型里的对象(即子模型,一个模型优选由多个子模型组成),对这些对象进行筛选处理,如删除名含指南针、三维等的对象,例如实际不可见的空模型;第二,调节FBX模型的比例因子,即对模型坐标系和本地标系进行坐标变换。作为本实施例的优选,筛选处理的作用是为了跟Lumion转出来的模型进行位置匹配,进而把这个3dmax转出的FBX模型在 Unity中显示比例因子及位置大小进行调整(或变换)。本实施例中,优选将FBX模型的比例因子由1调成100,把模型内的第一层子对象的三维坐标位置除本地对应轴的缩放大小作为新的坐标位置,本地缩放比例改成(1,1,1)。经过上述坐标变化后,模型才能显示在合理的位置上,否则的话会出现模型大小与模型通过Lumion导出的FBX或Revit 直接导出的FBX大小位置不符等情况。最后,优选将模型中所有含有渲染器的对象添加网格碰撞器,以进一步实现模型的高度模拟。
步骤四:在Unity中载入FBX文件及元素关系及材质信息文件(材质对应关系表和点面对应关系表),分析得出元素材质并将其附加到模型上。在Unity中载入材质对应关系表和点面对应关系表的XML文件,通过经过预处理的FBX文件中对象名称内包含的 RevitID信息,获取点面对应关系表中包含的面数和点数的材质列表,然后根据模型的子模型(SubMesh)信息对比该材质列表的面数和点数,分析得出BIM模型的每个子模型对应哪种材质,进而根据材质的ID,从材质信息列表中获取材质的具体贴图、颜色、透明度、凹凸性或高光等参数信息。根据这些信息在Unity中构建材质,并将其附加到对应的子模型(SubMesh)上。模型全部都附加上材质后,把整个模型转换为prefab 体,完成BIM模型在Unity中的加载。
例如,一个子模型(SubMesh)有3248个面,5122个点,根据关系表中该元素的材质点面数表中,找到最接近此面数及点数的对应材质,并将其添附到子模型(SubMesh) 上。如果该材质不存在或纹理贴图跟关系表里的颜色及贴图不一致,则根据关系表里的颜色及贴图修改材质或新增材质。一个模型中包括多个子模型(SubMesh),依次进行上述步骤。直至遍历整个模型的所有子模型(SubMesh),最终生成具有准确的材质信息和显示位置的完整。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (6)
1.一种基于Unity的BIM模型纹理材质可视化方法,其特征在于,包括
S1将模型从Revit链接到3Dmax并导出,然后载入到Unity中,使得所述模型在Unity中可以多个可区分识别的子模型形式进行显示;
S2利用Revit导出所述模型对应的纹理和/或材质列表,以及所述纹理和/或材质与所述模型的点面对应关系,将其转换为Unity可识别形式,获取每种材质的外观配置文件,以及所述纹理和/或材质与所述模型的点面对应关系文件;
S3根据所述外观配置文件和/或点面对应关系文件对载入Unity的模型进行校正修复,使得所述模型在Unity中的显示与Revit一致;
S4对导入Unity的模型进行预处理,建立模型坐标系和本地坐标系的变换关系,以保证模型和/或子模型的大小和/或位置显示准确;
S5在大小和/或位置显示准确的模型中,根据组成元素及其纹理和/或材质与所述模型的属性信息及其与模型的点面对应关系,将所述组成元素及其纹理和/或材质信息添附到模型的对应位置,获得具有纹理材质的模型;
所述步骤S3包括,
S31比较模型在Revit和Unity中的显示状态,筛选出模型在Unity中与在Revit中显示不一致的异形子模型;
S32根据异形子模型从Revit中对应导出的纹理和/或材质信息和/或点面对应关系,在Unity中反向生成对应纹理材质,并将其添附到对应位置;
S33依次对每个异形子模型进行显示校正,以使所述模型在Unity中的显示与在Revit中一致;
所述步骤S5包括,
S51在Unity中载入点面对应关系文件,结合模型信息,获取材质与子模型之间的点面对应关系;
S52读取材质列表,根据每种材质的外观配置文件反向构建材质;
S53将构建好的材质按照所述点面对应关系附加到对应的子模型上;
S54遍历所有子模型,完成整个模型纹理材质的添附;
其中,所述组成元素为子模型或revit中的构件。
2.根据权利要求1所述的基于Unity的BIM模型纹理材质可视化方法,其中,所述步骤S2包括,
S21从Revit中导出模型对应的纹理和/或材质列表,以及所述纹理和/或材质与所述模型的点面对应关系;
S22依次获取所述材质的属性信息以建立该材质的初始外观配置文件,以及所述纹理和/或材质与所述模型的初始点面对应关系文件;
S23筛选所述初始外观配置文件和/或初始点面对应关系文件中的信息,对Unity不能识别的信息进行辨认并将其转换为Unity可识别形式,并将其更新到初始外观配置文件和/或初始点面对应关系文件中;
S24遍历初始外观配置文件和/或初始点面对应关系文件,生成外观配置文件和/或点面对应关系文件。
3.根据权利要求2所述的基于Unity的BIM模型纹理材质可视化方法,其中,所述步骤S4包括,
S41对模型对象进行分析处理,删除不可见模型;
S42对Revit中导出的模型的比例因子进行调节;
S43将网格碰撞器添加到模型中。
4.一种基于Unity的BIM模型纹理材质可视化系统,其特征在于,包括
模型转换模块,用于将模型从Revit链接到3Dmax并导出,然后载入到Unity中,使得所述模型在Unity中可以多个可区分识别的子模型形式进行显示;
信息映射模块,用于利用Revit导出所述模型对应的纹理和/或材质列表,以及所述纹理和/或材质与所述模型的点面对应关系,将其转换为Unity可识别形式,获取每种材质的外观配置文件,以及所述纹理和/或材质与所述模型的点面对应关系文件;
显示校正模块,用于根据所述外观配置文件和/或点面对应关系文件对载入Unity的模型进行校正修复,使得所述模型在Unity中的显示与Revit一致;
坐标处理模块,用于对导入Unity的模型进行预处理,建立模型坐标系和本地坐标系的变换关系,以保证模型和/或子模型的大小和/或位置显示准确;
模型导出模块,用于在大小和/或位置显示准确的模型中,根据组成元素及其纹理和/或材质与所述模型的属性信息及其与模型的点面对应关系,将所述组成元素及其纹理和/或材质信息添附到模型的对应位置,获得具有纹理材质的模型;
所述显示校正模块包括,
比较模块,用于比较模型在Revit和Unity中的显示状态,筛选出模型在Unity中与在Revit中显示不一致的异形子模型;
修正模块,用于根据异形子模型从Revit中对应导出的纹理和/或材质信息和/或点面对应关系,在Unity中反向生成对应纹理材质,并将其添附到对应位置;
遍历模块,用于依次对每个异形子模型进行显示校正,以使所述模型在Unity中的显示与在Revit中一致;
所述模型导出模块包括,
点面对应模块,用于在Unity中载入点面对应关系文件,结合模型信息,获取材质与子模型之间的点面对应关系;
反向构建模块,用于读取材质列表,根据每种材质的外观配置文件反向构建材质;
材质添附模块,用于将构建好的材质按照所述点面对应关系附加到对应的子模型上;
子模型遍历模块,用于遍历所有子模型,完成整个模型纹理材质的添附;
其中,所述组成元素为子模型或revit中的构件。
5.根据权利要求4所述的一种基于Unity的BIM模型纹理材质可视化系统,其中,所述信息映射模块包括,
Revit信息模块,用于从Revit中导出模型对应的纹理和/或材质列表,以及所述纹理和/或材质与所述模型的点面对应关系;
信息初始化模块,用于依次获取所述材质的属性信息以建立该材质的初始外观配置文件,以及所述纹理和/或材质与所述模型的初始点面对应关系文件;
信息更新模块,用于筛选所述初始外观配置文件和/或初始点面对应关系文件中的信息,对Unity不能识别的信息进行辨认并将其转换为Unity可识别形式,并将其更新到初始外观配置文件和/或初始点面对应关系文件中;
文件生成模块,用于遍历初始外观配置文件和/或初始点面对应关系文件,生成外观配置文件和/或点面对应关系文件。
6.根据权利要求5所述的一种基于Unity的BIM模型纹理材质可视化系统,其中,所述坐标处理模块包括,
预处理模块,用于对模型对象进行分析处理,删除不可见模型;
比例调节模块,用于对Revit中导出的模型的比例因子进行调节;
碰撞器模块,用于将网格碰撞器添加到模型中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810543405.8A CN108959707B (zh) | 2018-05-31 | 2018-05-31 | 一种基于Unity的BIM模型纹理材质可视化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810543405.8A CN108959707B (zh) | 2018-05-31 | 2018-05-31 | 一种基于Unity的BIM模型纹理材质可视化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108959707A CN108959707A (zh) | 2018-12-07 |
CN108959707B true CN108959707B (zh) | 2022-09-20 |
Family
ID=64492305
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810543405.8A Active CN108959707B (zh) | 2018-05-31 | 2018-05-31 | 一种基于Unity的BIM模型纹理材质可视化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108959707B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110779527B (zh) * | 2019-10-29 | 2021-04-06 | 无锡汉咏科技股份有限公司 | 一种基于多源数据融合和视觉深度学习的室内定位方法 |
CN113034692B (zh) * | 2021-04-29 | 2022-12-06 | 上海智大电子有限公司 | 一种基于bim的地下管廊数据初始化方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104537715A (zh) * | 2015-01-09 | 2015-04-22 | 中国电建集团昆明勘测设计研究院有限公司 | 一种实现fbx三维模型自动转换为obj三维模型的方法 |
CN106951076A (zh) * | 2017-03-15 | 2017-07-14 | 河南省交通规划设计研究院股份有限公司 | 基于bim的高速公路模型vr展示方法 |
CN107393013A (zh) * | 2017-06-30 | 2017-11-24 | 网易(杭州)网络有限公司 | 虚拟漫游文件生成、显示方法、装置、介质、设备和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10146891B2 (en) * | 2012-03-30 | 2018-12-04 | Honeywell International Inc. | Extracting data from a 3D geometric model by geometry analysis |
-
2018
- 2018-05-31 CN CN201810543405.8A patent/CN108959707B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104537715A (zh) * | 2015-01-09 | 2015-04-22 | 中国电建集团昆明勘测设计研究院有限公司 | 一种实现fbx三维模型自动转换为obj三维模型的方法 |
CN106951076A (zh) * | 2017-03-15 | 2017-07-14 | 河南省交通规划设计研究院股份有限公司 | 基于bim的高速公路模型vr展示方法 |
CN107393013A (zh) * | 2017-06-30 | 2017-11-24 | 网易(杭州)网络有限公司 | 虚拟漫游文件生成、显示方法、装置、介质、设备和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108959707A (zh) | 2018-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6041958B2 (ja) | オブジェクトデザイン用ユーザインタフェースの改良 | |
EP2216740A2 (en) | Three-dimensional process planning | |
CN108537519A (zh) | 一种基于bim的建筑设计方法 | |
CN107292042A (zh) | 一种bim建模方法 | |
CN108959707B (zh) | 一种基于Unity的BIM模型纹理材质可视化方法 | |
CN113538706B (zh) | 基于数字沙盘的房景展示方法、装置、设备及存储介质 | |
CN106504317A (zh) | 一种三维模型的外观纹理提取方法及装置 | |
CN112528379A (zh) | 一种建筑模型生成方法、装置及电子设备 | |
Fernandes | Advantages and disadvantages of BIM platforms on construction site | |
CN105426601A (zh) | 一种基于bim的多样性设计方案汇报方法及其系统 | |
Ajayi et al. | Facilitating compliance with BIM ISO 19650 naming convention through automation | |
CN111309321A (zh) | 一种基于数据驱动的可定制化gui系统 | |
CN110942280A (zh) | 一种设计师协同参与的交互方法 | |
Nechyporchuk et al. | The conformity of the tools of selected software programs for 4D building modeling | |
CN116796516A (zh) | 建筑信息模型参数可视化施工模拟方法 | |
Orihuela et al. | Application of virtual and augmented reality techniques during design and construction process of building projects | |
Macheret et al. | Automated design systems based on the use of three-dimensional object modeling techniques | |
US10055811B2 (en) | System and method for generating interactive 2D projection of 3D model | |
CN114170377A (zh) | 一种基于bim的历史建筑特色构件族库构建方法及系统 | |
JP2021169947A (ja) | 物体認識装置及び物体認識方法 | |
Wickman et al. | Defining quality appearance index weights by combining VR and CAT technologies | |
KR102506912B1 (ko) | 자동화된 도면 변환 방법 | |
Urban et al. | Development process of customised products, supported by technologies, a case of tailor-made furniture | |
CN113449420B (zh) | 一种影像实景管控平台三维测量数据分析方法 | |
Patacas et al. | Supporting building owners and facility managers in the visualisation of an Integrated Asset Information model (AIM) based on open standards |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |