基于BIM技术的项目进度三维可视化方法转让专利
申请号 : CN202011247723.3
文献号 : CN112446937A
文献日 : 2021-03-05
发明人 : 张天生 , 熊峰 , 王学珍 , 吴宛军
申请人 : 上海宝冶集团有限公司
摘要 :
权利要求 :
1.一种基于BIM技术的项目进度三维可视化方法,其特征在于本方法包括如下步骤:
步骤一、项目进度数据处理,将所需项目进度数据编制成表格数据并存储,表格数据包含但不限于项目进度动画模型需要的数据;
步骤二、动画模型数据处理,动画模型数据采用的动画制作软件工具所支持的格式,包括FBX或OBJ通用格式,动画模型数据单位和坐标值保持一致;
步骤三、采用Python脚本的pandas模块读取表格数据,并转化成动画制作软件工具对应的数据类型,数据类型包括字符串、整型和浮点型;
步骤四、参数化建模,导入项目的BIM模型,BIM模型包括图纸和地形,并通过图纸在地形上精确划分区域,生成区域实体后导入地形,得到单个区域的模型;
步骤五、根据动画模型的内容关联项目进度数据,给每个区域设置项目进度的状态参数,动画制作软件工具通过参数函数获取任意节点的数据,在任何输入状态参数位置输入代码实现状态参数绑定,得到每个区域各个时间点的完成量,绑定任意时间点参数,得到该时间点的状态模型;
步骤六、参数动态化,根据动画模型的内容进行参数动态随时间变化,将项目施工时间单位按照比例映射到动画帧数,得到项目施工的起始帧数,中间帧数按比例数值线性插值,当前帧表示当前项目施工状态,根据参数化模型的设置按比例缩放,实现从原始数据的时间值,映射到动画模型的完成状态;
步骤七、导出动画模型,调整相机视角,添加灯光,采用动画制作软件工具的渲染器或直接调用OpenGL节点,导出预览品质的项目进度动画,利用剪辑软件工具将导出的项目进度动画剪辑成完整的项目进度视频。
2.根据权利要求1所述的基于BIM技术的项目进度三维可视化方法,其特征在于:所述步骤一中项目进度数据包括但不限于施工时间、施工完成量以及施工计划量。
3.根据权利要求1所述的基于BIM技术的项目进度三维可视化方法,其特征在于:所述步骤四中区域划分以图纸的点线面信息作为参考数据,动画制作软件工具独立选取任意参考数据,将选取的参考数据生成划分的区域轮廓。
说明书 :
基于BIM技术的项目进度三维可视化方法
技术领域
背景技术
发明内容
步骤二、动画模型数据处理,动画模型数据采用的动画制作软件工具所支持的格式,包括FBX或OBJ通用格式,动画模型数据单位和坐标值保持一致;
步骤三、采用Python脚本的pandas模块读取表格数据,并转化成动画制作软件工具对应的数据类型,数据类型包括字符串、整型和浮点型;
步骤四、参数化建模,导入项目的BIM模型,BIM模型包括图纸和地形,并通过图纸在地形上精确划分区域,生成区域实体后导入地形,得到单个区域的模型;
步骤五、根据动画模型的内容关联项目进度数据,给每个区域设置项目进度的状态参数,动画制作软件工具通过参数函数获取任意节点的数据,在任何输入状态参数位置输入代码实现状态参数绑定,得到每个区域各个时间点的完成量,绑定任意时间点参数,得到该时间点的状态模型;
步骤六、参数动态化,根据动画模型的内容进行参数动态随时间变化,将项目施工时间单位按照比例映射到动画帧数,得到项目施工的起始帧数,中间帧数按比例数值线性插值,当前帧表示当前项目施工状态,根据参数化模型的设置按比例缩放,实现从原始数据的时间值,映射到动画模型的完成状态;
步骤七、导出动画模型,调整相机视角,添加灯光,采用动画制作软件工具的渲染器或直接调用OpenGL节点,导出预览品质的项目进度动画,利用剪辑软件工具将导出的项目进度动画剪辑成完整的项目进度视频。
具体实施方式
步骤二、动画模型数据处理,动画模型数据采用的动画制作软件工具所支持的格式,包括FBX或OBJ通用格式,动画模型数据单位和坐标值保持一致;
步骤三、采用Python脚本的pandas模块读取表格数据,并转化成动画制作软件工具对应的数据类型,数据类型包括字符串、整型和浮点型;
步骤四、参数化建模,导入项目的BIM模型,BIM模型包括图纸和地形,并通过图纸在地形上精确划分区域,生成区域实体后导入地形,得到单个区域的模型;
步骤五、根据动画模型的内容关联项目进度数据,给每个区域设置项目进度的状态参数,动画制作软件工具通过参数函数获取任意节点的数据,在任何输入状态参数位置输入代码实现状态参数绑定,得到每个区域各个时间点的完成量,绑定任意时间点参数,得到该时间点的状态模型;
其中,输入代码实现状态参数绑定属于参数化建模的一部分,以houdini软件工具为例,任何建模行为都会记录在建模节点中,以参数的形式存在,修改任何可变参数,都会影响当前模型,houdini软件工具提供了在参数入口输入代码的方法,用函数或者内置变量动态的改变修改参数,类似的软件工具3dmax和C4D都有对应的语法代码,即用部分编程的方法进行参数化建模;
步骤六、参数动态化,根据动画模型的内容进行参数动态随时间变化,将项目施工时间单位按照比例映射到动画帧数,得到项目施工的起始帧数,中间帧数按比例数值线性插值,当前帧表示当前项目施工状态,根据参数化模型的设置按比例缩放,实现从原始数据的时间值,映射到动画模型的完成状态;
步骤七、导出动画模型,调整相机视角,添加灯光,采用动画制作软件工具的渲染器或直接调用OpenGL节点,导出预览品质的项目进度动画,利用剪辑软件工具将导出的项目进度动画剪辑成完整的项目进度视频。
项目进度数据以表格形式存储,由于使用的是python脚本,利用pandas模块,它所支持的格式有:CSV、JSON、HTML、剪贴板、MS EXCEL、OpenDocument、SQL等等;
表格记录施工时间、施工完成量、施工计划量以及其他一切需要的数据,只需要包含但不限于动画模型需要的数据;数据表格如下表:
导入项目进度数据的数据格式取决于读取数据的方式,利用python、Js等依赖执行环境的脚本,使用具备读取外部通用或定制格式数据的模块、库、外部可执行程序等内置或第三方的方法读取数据,可使用的数据格式即为本方法支持的格式,建议采用最易修改、学习成本最低的格式,例如text、csv、MS Excel等;
2.动画模型数据处理
动画模型数据的格式可以是FBX、OBJ等通用格式,也可以是使用的动画制作软件工具所支持的其他格式,动画模型单位和坐标值保持一致;
(二)数据转化处理
利用Python脚本,使用pandas模块,读取表格数据,转化成动画软件工具对应的数据类型,具备脚本功能的软件有对应的数据类型,使用的数据类型包括字符串、整型、浮点型,pandas模块完全支持excel的数据类型,包括日期,不需要数据修改人员改变编辑习惯;
数据转化处理,Houdini软件工具通过节点流程读取原始的数据表格,转化分包成不同区域的Houdini软件工具数据;
(三)参数化建模
1.导入BIM模型
Houdini软件工具导入转化为可接受动画模型格式的图纸和地形;
2.处理BIM模型
根据制作的内容,处理导入的模型,以划分区域为例,通过图纸在地形上精确划分区域;
以图纸的点线面信息作为参考数据,Houdini软件工具通过Delete节点独立选取任意参考数据,使用Add节点将选取的参考数据生成轮廓,闭合即为闭合面;划分所需区域后,每个区域由Null节点继承,重命名为每个区域的名称以便后续操作利用;
利用Houdini软件工具转化完的图纸区域,通过Extrude节点生成区域实体,用Boolean节点切分导入的地形,得到单个区域模型;采用同样的方式,用Boolean节点将得到的单个区域模型,用施工完成面标高的平面切分,得到所需的单个区域的各个模型,分别用material节点上色,得到单个区域的模型;
所有区域按照同样的方法生成后用Merge节点和原有地形一起融合到一起,得到Houdini软件工具生成的所有区域;
BIM模型可以来自所有建模软件,可以导出通用或其他软件工具支持的格式,建议采用FBX格式,常用BIM软件Revit可以直接导出FBX格式;
3.关联数据
根据动画显示的内容关联数据,例如,项目进度需要动态显示各区域挖方及填方的状态;通过参数化建模给每个区域设置两个分别控制挖方与填方完成状态的参数,Houdini软件工具通过参数函数获取任意节点的数据,在任何输入参数位置输入代码实现参数绑定,得到每个区域各个时间点的完成量,绑定任意时间点的参数,即可得到该时间点的状态模型;将数据读取和转化视为数据模块,而参数化建模视为动画模块;分离数据和动画模块,可以通过单独的代码节点,管理各个参数的接口,给每个区域的完成量参数预留变量,更新完成量,只需要重新赋值变量,而不需要修改动画模块节点;
将模型通过参数化建模处理为适宜动态化展示的状态,留出必要的参数输入接口,这是原始数据处理和参数化模型分离的重要步骤,模型包括BIM模型以及导入的图纸;可以包括:自建动态参数化模型作为辅助展示进度、自建或导入静态环境、装饰、指示等静态辅助模型;
4.参数动态化
数据已经绑定,根据动画显示的内容实现参数动态随时间变化;根据每个区域各个时间点的完成量展现施工完整过程,将施工时间单位按照一定比例映射到帧数,得到施工的起始帧数,中间帧数按比例数值线性插值;当前帧即表示当前施工状态,根据参数化模型的设置,按比例缩放,实现从原始数据的时间值,映射到模型的完成状态;
动画显示内容可以有自定义的参数化模型,例如,绑定同区域模型一样的完成量参数,生成完成量指示器;
参数动态化完成后,整合所有模型,调整比例,摆放到合适的位置,得到由Houdini软件工具生成的完整参数化动画模型;
参数动态化为动画制作的部分,动画制作包含参数化流程,可以用关键帧方法辅助;可参数化的内容包括:实际进度时间与动画时间的起始对应关系和缩放比例、各个任务之间的时间关系以及任务进度起始时间与参数化模型状态的对应关系;还包括Houdini软件工具内部记录的不同动画片段数据的分离、组合、缩放、替换以及特效叠加;
(四)导出动画
调整相机视角,添加灯光,通过ROP节点,利用合适的渲染器,或者直接调用OpenGL节点,导出预览品质的动画,利用剪辑软件将导出的动画剪辑成完整的视频;
根据渲染器的支持可以到云端渲染,一种最快捷,但质量较差的方法是导出预览品质的动画,即Houdini软件工具直接导出软件视窗中的动画效果,可有部分优化参数加强;根据软件工具的功能支持,可以将不同动画片段批量一键渲染,后期视频剪辑导出三维可视化的项目进度动画视频。