应用于Houdini的Revit模型处理方法与流程

文档序号:21444359发布日期:2020-07-10 17:33阅读:532来源:国知局
应用于Houdini的Revit模型处理方法与流程

本发明涉及工程信息模型技术领域,尤其涉及一种应用于houdini的revit模型处理方法。



背景技术:

如今技术发展越来越快,对软件应用、工作效率和建模精度的要求已经越来越受行业的重视与关注。传统三维软件处理revit常规模型可能需要8-10小时,不能满足效率要求,因此,有必要提供一种新的revit模型处理方法,提供模型处理效率。



技术实现要素:

本发明主要是针对现有技术的不足,提供一种应用于houdini的revit模型处理方法,可以在houdini图像软件操作以及revit模型处理时,极大地提升效率。

本发明所采用的技术方案为:一种应用于houdini的revit模型处理方法,其包括以下步骤:

从revit软件中将模型数据按种类分别导入至houdini图形软件中;

在所述houdini图形软件中,对模型数据按种类分别建立一个类节点,每个所述类节点关联有多个子节点,每个所述子节点关联于所属种类模型一子部分的模型数据;

分别提取各个类节点下所有子节点的模型数据,将所属种类模型的各个子部分合成为一个种类模型;

整体提取各个类节点的模型数据,将各个所述种类模型合成为一个完整的建筑模型,建立关联于所述建筑模型的总节点;

在所述总节点添加一个属性节点;

建立所述属性节点与待处理的子节点之间的数据关联;

对所述属性节点添加数据类型参数,所述数据类型参数被同步赋予给待处理的子节点,对所述子节点对应的模型部分进行模型处理。

本发明模型处理方法主要通过属性节点的参数修改,即可跨模块进行修改材质模块和渲染模块的数据,无需在houdini中进行模块的重复切换去获得效果,大大提高了图像处理效率。

作为本发明revit模型处理方法的较佳实施方式,从revit软件中导出的所述模型数据的种类选自桥架、风管、水管、墙体。

作为本发明revit模型处理方法的较佳实施方式,所述模型数据以fbx格式导入至所述houdini图形软件中,且导入时,在所述houdini图形软件中对所导入数据进行是否为fbx格式的判断,若是则导入,若否则不导入。

作为本发明revit模型处理方法的较佳实施方式,在分别提取各个类节点下所有子节点的模型数据之前,还包括步骤:对所述类节点和所述子节点统一进行重新命名。

作为本发明revit模型处理方法的较佳实施方式,所述houdini图形软件对建立的所述类节点和子节点以英文字母、字符及空格的组合作为原始命名,所述重新命名为删除所述原始命名中的所有空格位。

作为本发明revit模型处理方法的较佳实施方式,在合成得到各个所述种类模型后,将各个所述种类模型以一定规则重新进行排列。

作为本发明revit模型处理方法的较佳实施方式,在合成得到完整的所述建筑模型后,将所述建筑模型归位于界面坐标系的中心位置。

作为本发明revit模型处理方法的较佳实施方式,对所述属性节点添加的数据类型参数形式包括:整型参数、浮点参数及字符串参数。

作为本发明revit模型处理方法的较佳实施方式,所述模型处理包括添加材质和图形渲染;在对所述属性节点添加数据类型参数的步骤中,建立需添加材质的材质节点的材质模块以及需渲染的渲染节点的渲染模块,通过将所述数据类型参数同步关联到所述材质节点和所述渲染节点的模型数据上,对所述材质节点添加材质,对所述渲染节点进行图形渲染。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明应用于houdini的revit模型处理方法的流程图。

具体实施方式

以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。

下面结合附图和具体实施例对本发明做进一步详细的说明。

参见图1所示,本发明提供了一种应用于houdini的revit模型处理方法,其主要包括如下步骤:

步骤s1、从revit软件中将模型数据按种类分别导入至houdini图形软件中;

步骤s2、在houdini图形软件中,对模型数据按种类分别建立一个类节点,每个类节点关联有多个子节点,每个子节点关联于所属种类模型一子部分的模型数据;

步骤s3、分别提取各个类节点下所有子节点的模型数据,将所属种类模型的各个子部分合成为一个种类模型;

步骤s4、整体提取各个类节点的模型数据,将各个种类模型合成为一个完整的建筑模型,建立关联于建筑模型的总节点;

步骤s5、在总节点添加一个属性节点;

步骤s6、建立属性节点与待处理的子节点之间的数据关联;

步骤s7、对属性节点添加数据类型参数,数据类型参数被同步赋予给待处理的子节点,对子节点对应的模型部分进行模型处理。

本发明revit模型处理方法主要通过属性节点的参数修改,即可跨模块进行修改材质模块和渲染模块的数据,无需在houdini中进行模块的重复切换去获得效果,大大提高了图像处理效率。

下面对本发明revit模型处理方法的各个步骤进一步展开说明如下:

houdini是一款三维计算机图形软件,可运行于linux,windows,macos等操作系统,是完全基于节点模式设计的产物,其结构、操作方式等和其它的三维软件有很大的差异。houdini自带的渲染器是mantra,基于reyes渲染架构,因此也能够快速的渲染运动模糊、景深和置换效果。在houdini软件中通常将各个构件在界面上显示成一个节点,再将各个节点之间的关联路径用线条连接,以便于查看和管理。

进一步地,在houdini中,主要分为以下七个模块chop(channel途径编辑模块)、cop(后期合成模块)、dop(动力学结算模块)、sop(geometry几何模块)、rop(输出缓存模块)、shop(材质模块)、vop(可视化编辑模块),不同模块分别处理不同的数据,实现不同的功能。

本发明方法主要实现三大功能,nodecontrol(节点控制)功能、addtupletools(添加元件工具)功能以及importandexport(导入导出)功能。其中,nodecontrol功能主要用于控制和操作sop模块中节点,可以使节点在sop模块下的不同geometry层级中仍保持节点本身数据和属性(可支持上述步骤s5~s7的操作);addtupletools功能主要用于为节点添加int(整型)、float(浮动)、string(字符串)三种数据类型,将节点变成控制器,可用于控制不同模块下拥有int、float、string三种数据的节点,无需重复切换模块调整数据(支持上述s6的操作);importandexport功能分别是用于导入和导出数据(支持上述步骤s1~s4的操作),可以批量处理从其他三维软件导出的fbx模型和alembic模型,然后再对模型数据进行处理,导出进入其他软件做后期处理。

进一步来说,nodecontrol功能主要包含以下四个子功能createnull(创建属性节点)、addcolor(添加颜色)、changecolor(改变颜色)、createobjmerge(创建对象合并)和setobjmer(设置对象)功能相同,区别在于setobjmer可以自己选择生成节点的位置。

createnull功能使用时,首先选择某一个节点,在该节点下游自动创建一个节点修改名称并添加标识颜色。

addcolor功能使用时会在后台判断整个工程文件所有节点类型,如果节点类型符合程序所需求的类型,该功能会自动为节点添加标识颜色,在茫茫节点大海中,方便软件操作者快速找到自己所需要查找的节点。

changecolor功能使用时先选择某一个或者某一些节点,每次点击功能按钮时,会随机为节点添加标识颜色。

createobjmerge功能使用时会为所选择的节点创建object_merge节点,并为节点重新命名,该节点可拷贝至其它geometry层级,并保留原节点的属性。

addtupletools功能使用时,选择所需的数据类型,在节点创建相应数据类型的属性,该属性可以跨模块进行数据关联,无需操作者跨模块进行数据修改。

importandexport栏中,import部分是从外部导入其它三维软件所创作的模型,如revit导出的fbx格式文件可以导入进houdini中,采用import功能可访问计算机本地硬盘读取文件,采用rename(重命名)、aorf(格式转换)、recomb(重编辑)、blast(搜索)等功能,即可快速完成模型的规划与整理,为下一步渲染和导出做好充分的工作;export部分是将调整好的模型快速导出,也可以根据创作者的需求按顺序导出。

下面结合一具体的实施例,进一步来说明本发明应用于houdini的revit模型处理方法的操作流程。

(一)从revit软件中将模型根据所需要的分类用fbx格式导出,分类包括“桥架”、“风管”,“水管”,“墙体”。为便于houdini导入,文件名分别命名为“cabletray”、“duct”、“pipe”、“wall”。

进入houdini中,可以将文件路径手动粘贴至导入框内,或者点击按钮自行查找文件路径并确定。

添加好文件路径后,采用import功能,稍等几秒,就可以将revit软件导出的fbx模型全部导入到houdini软件中,导入成功后,会弹出一个窗口告诉使用者已经成功导入(ps:在导入文件夹内fbx模型时,会首先判断文件夹内的文件是否为fbx文件,如果是fbx文件则导入,如果是图片文件或者文本文档类文件,则不会导入)。

(二)模型导入成功后,在houdini界面中,对应四个类别会分别建立cabletray_fbx、pipe_fbx、duct_fbx、wall_fbx四个节点,分别点击进入cabletray_fbx、pipe_fbx、duct_fbx、wall_fbx内会发现里面有很多子节点,每一个子节点都是一小部分模型,同时每一个子节点的命名并不规范,需要重新命名,选择cabletray_fbx、pipe_fbx、duct_fbx、wall_fbx节点,是由rename功能,即可批量化将子节点全部重新命名,提高效率。其中,houdini图形软件对其节点以英文字母、字符及空格的组合作为原始命名,重命名是删除原始命名中的所有空格位,使得命名规范、清晰、紧凑。

(三)重新命名后,需要用createobjmerge功能将fbx内的每一个子模型分别提取出来,成千上万个子节点一一提取的工作量巨大,选中cabletray_fbx、pipe_fbx、duct_fbx、wall_fbx节点分别进行提取子模型,子模型提供完成后,会将其合并成一个整体,并放在一个新的geometry内重新排列。

(四)提取完模型后,模型是合并成四个大部分,为了后期渲染方便,需将模型整合成一个大的整体,在一个大的整体内进行材质渲染时会方便很多,使用recomb功能,将所有模型合并成一个大整体,并且重新命名为all_element,并且同时将模型回归到三维软件的界面坐标中心。

(五)进入all_element内部,使用blast搜索功能(以同种种类的特征参数作为关键词进行同类搜索),分别将上面合并好的模型不同部分提取出来,提取出来后,给不同的部分添加材质,进行渲染。

(六)渲染时,采用addtupletools跨模块数据关联进行跨模块同步渲染,具体做法如下:

①在all_element里面添加一个null节点并重新命名为control,即新建一个属性节点;

②使用addtupletools为control节点添加不同的数据类型,同时在材质模块准备所需的材质节点和渲染模块准备一个渲染节点(材质模块和渲染模块是houdini两个不同的模块);

③将addtupletools创建的数据类型参数拖拽到需要关联材质节点的数据上;

④然后将材质赋予给各个部分,并重新合并成一个整体;

⑤通过control节点上的参数修改,即可跨模块进行修改材质模块和渲染模块的数据,无需在houdini中进行模块的重复切换去获得效果,control节点上的参数修改可以同步影响到其它模块节点的数据参数的修改。

本发明使用python编程语言,在houdini软件操作以及revit模型处理时,效率极大的提升,其它三维软件处理revit常规模型可能需要8-10小时,而该插件针对模型体量较小处理时间为30s-2min,体量较大模型5-10min,效率提升近百倍。只需要几十秒就可以将其全部修改完成,节省大量时间,提升技术人员工作效率。同时也使工作变得轻松,工具的修改性精度更高。

需要说明的是,本说明书所附图式所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容得能涵盖的范围内。同时,本说明书中所引用的如“上”、“下”、“左”、“右”、“中间”及“一”等的用语,亦仅为便于叙述的明了,而非用以限定本发明可实施的范围,其相对关系的改变或调整,在无实质变更技术内容下,当亦视为本发明可实施的范畴。

以上所述仅是本发明的较佳实施例而已,并非对本发明做任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案的范围内,当可利用上述揭示的技术内容作出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1