一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于Revit和Dynamo的排水管网模型创建方法与流程

2022-12-20 01:47:00 来源:中国专利 TAG:

基于revit和dynamo的排水管网模型创建方法
技术领域
1.本发明涉及市政排水管网bim技术领域,具体涉及一种基于revit和dynamo的排水管网模型创建方法。


背景技术:

2.随着科学技术的发展,我国的bim技术得到了广泛的应用。在市政给排水工程设计过程中,应用bim技术可实现管道的综合设计、参数设计、协同设计和可视化设计,提高市政给排水工程的设计质量。
3.dynamo是一种基于流的可视化编程软件,现作为revit中的配套插件,用于实现可视化编程、快速建模、参数化设计、批量处理模型信息等功能。
4.现有使用revit创建排水管网设计模型时,大多使用软件mep原生设计工具,需要逐段搭建管网模型,方法笨重效率低下,并且城市排水管网工程覆盖范围广、涉及管线众多、工程绵延数十公里,设计内容经常需要根据现场实际情况进行调整,造成模型数据无法及时有效更新,因此管网bim模型在实际应用中很难发挥其应有的价值。


技术实现要素:

5.本发明的目的就是针对现有技术的缺陷,提供一种基于revit和dynamo的排水管网模型创建方法,可使设计数据能够快速转化为管网模型,从而实现设计数据与模型的实时有效关联,及时反馈设计问题,发挥其应有的价值。
6.本发明提供的一种基于revit和dynamo的排水管网模型创建方法,包括:
7.步骤1:创建revit项目文件,并在项目文件中添加管道类型和管道系统,同时分析排水管网结构和数据,创建检查井构件库;
8.步骤2:创建检查井和管段设计数据库;
9.步骤3:根据步骤2得到的检查井和管段设计数据库特点,利用dynamo编写能与excel数据库联动的参数化排水管网模型创建程序,依次对检查井和管段进行模型创建;
10.步骤4:利用dynamo编写数据录入程序,将排水管网模型在项目应用过程产生的迭代数据,通过excel数据库附加至排水网管模型中,得到最终的排水管网信息模型。
11.较为优选的,所述步骤1包括:
12.步骤1.1:通过revit软件创建项目文件,并在项目文件中添加常用的管道类型和排水工程涉及的管道系统,构建排水管网模型项目文件;
13.步骤1.2:分析检查井构件参数属性,确定构件族样板,通过拉伸、放样融合命令完成检查井构件三维建模;
14.步骤1.3:为检查井构件添加关键属性参数,并将几何属性、材质属性与构件实体模型进行关联;
15.步骤1.4:调试检查井构件几何参数,观察模型是否受参数驱动而变化,若驱动成功,则载入至revit项目文件中;若不成功,返回步骤1.3重新进行关联。
16.较为优选的,所述步骤1.1中添加的管道类型包括混凝土管、钢筋混凝土管、hdpe双壁波纹管、hdpe中空壁缠绕管、铸铁管和钢管;添加的管道系统包括污水系统、废水系统、雨水系统和合流制系统。
17.较为优选的,所述步骤1.2中检查井构件族样板选择公制常规模型.rft族样板。
18.较为优选的,所述步骤1.3中检查井构件的参数属性包括空间属性、几何属性、材质属性和描述属性,所述空间属性包含检查井插入基准点。
19.较为优选的,所述步骤2包括:
20.采用cad软件从排水管网设计图纸中获取关键设计参数,并将其导入至excel表中,并根据项目bim模型应用需求添加必要设计参数,分别得到检查井和管段设计数据库。
21.较为优选的,所述关键设计参数包括检查井编号、井坐标、井面标高、井底标高、井规格、管段起终点检查井编号、管径和管内底标高;所述添加的必要设计参数包括检查井类型、管道系统、管道材质、检查井调整说明和管道调整说明。
22.较为优选的,所述步骤3包括:
23.步骤3.1:打开revit项目文件,利用dynamo的file path节点链接检查井excel设计数据库;
24.步骤3.2:利用code block节点分别提取检查井插入点a点xy坐标信息、检查井类型信息、井面与井底标高信息;
25.步骤3.3:利用point.bycoordinates节点,将x、y、井面标高信息组合成以(x,y,z)为格式的三维空间坐标点阵,再利用familyinstance.bypoint和familytype.byname节点,依次按照各点对应的检查井类型,放置检查井构件;
26.步骤3.4:利用element.setparameterbyname节点,调整对应检查井的井深和井径参数;
27.步骤3.5:利用dynamo的file path节点链接管段excel设计数据库;
28.步骤3.6:利用code block节点提取管段起终点检查井编号、管径、管内底标高、管道系统、管道材质;
29.步骤3.7:利用list.indexof和list.getitematindex的节点组合,根据提取的管道起点终点检查井编号,检索步骤3.2中提取的检查井坐标信息,获取对应的起点和终点xy坐标值;
30.步骤3.8:根据提取的管内底标高信息与管径信息进行数学运算,生成起点和终点管中心z坐标值;
31.步骤3.9:利用line.bystartpointendpoint节点,通过起点和终点坐标生成管道中心线;
32.步骤3.10:利用list.indexof和list.getitematindex的节点组合,将管道中心线与管道类型、管道系统类型相互匹配;
33.步骤3.11:利用python script节点,通过引用内嵌的revitapi程序集编写管段模型构建程序,然后将起终点中心线、管道类型、管道系统、管径尺寸参数在input端进行输入,最终在output端生成管段模型。
34.较为优选的,所述步骤4包括:
35.步骤4.1:利用parameter.createsharedparameter节点为检查井和管段构件添加
所需共享参数;
36.步骤4.2:同时在excel设计数据库中添加与共享参数所对应的表格项,当项目应用过程中产生构件迭代数据时,记录在excel对应项中,然后通过element.setparameterbyname节点,将相关信息录入至对应构件属性列表。
37.较为优选的,所述步骤4.1中添加的共享参数,包括但不限于检查井编号、检查井变更说明、管段编号、管道变更说明和构件编码。
38.本发明的有益效果为:
39.1、本方法是一种基于revit和dynamo的排水管网模型创建方法,通过步骤1,给出了一套基于revit软件的管网模型样板和检查井参数构件创建方法,并通过步骤2,直接采用管网设计参数,生成管网设计数据库,为后续模型创建提供数据支撑,再通过dynamo的file path节点将设计数据库与排水管网模型进行有效关联。从而可及时反馈设计问题,发挥其应有的价值。
40.2、步骤3.7中,优先利用list.indexof和list.getitematindex节点,通过管井与管段共有参数信息,将管井与管段设计数据库进行相互检索与数据提取,解决了排水管网原始设计资料导出的管段设计数据库缺少坐标信息的问题,最后通过步骤4,可对项目应用过程中产生的迭代数据按照需求附加至模型中,如施工阶段,可以录入施工过程中造价、质量、安全信息,运维阶段可以录入设备维修数据、巡检数据信息,从而为不同阶段模型应用提供数据技术支撑。
41.3、通过本方法,可实现基于dynamo的可视化编程实现revit与excel设计数据的交互,建立了一种可以基于常规设计参数快速表达出排水管网的三维整体形态模型的方法,利用原有设计参数就可以快速创建可基于设计参数修改的排水管网模型,解决了传统管网模型逐段创建而效率低下的问题,同时模型与设计数据关联,一旦设计数据发生改变,模型可以同时随设计参数及时高效的进行调整,提高了管网设计、施工、运维参数转化为bim模型的效率,促进bim技术在市政管网工程领域的发展。
附图说明
42.图1是本发明方法的整体流程图。
43.图2是本发明中项目文件及检查井构件库的创建流程图。
44.图3是本发明中检查井模型创建流程图。
45.图4是本发明中排水管段模型创建流程图。
46.图5是revit项目文件中添加的管道类型和管道系统。
47.图6是雨水检查井模型构件与属性列表。
48.图7是从排水管网设计图纸中获取的excel检查井设计数据库。
49.图8是从排水管网设计图纸中获取的excel管段设计数据库。
50.图9是污水检查井模型构件中插入点a位置示意。
51.图10是最终生成的排水管网模型。
具体实施方式
52.为了使本技术所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结
合附图及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
53.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述。
54.应当理解,当在本技术说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
55.还应当理解,在本技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
56.如在本技术说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0057]
另外,在本技术说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0058]
在本技术说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本技术的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。“多个”表示“两个或两个以上”。
[0059]
实施例一
[0060]
本实施例提供了一种基于revit和dynamo的排水管网模型创建方法的较佳实施例,该方法使得设计数据能够快速转化为管网模型,从而实现设计数据与模型的实时有效关联,及时反馈设计问题,发挥其应有的价值。
[0061]
如图1所示,一种基于revit和dynamo的排水管网模型创建方法的实施流程如下:
[0062]
步骤s1:创建项目文件及检查井构件库。创建revit项目文件,并在项目文件中添加管道类型和管道系统,同时分析排水管网结构和数据,创建检查井构件库;
[0063]
步骤s2:创建设计数据库。采用cad软件从排水管网设计图纸中获取关键设计参数,并将其导入至excel表,并根据项目bim模型应用需求添加必要设计参数,分别得到检查井和管段设计数据库;
[0064]
步骤s3:排水管网模型创建。根据步骤s2得到的检查井和管段设计数据库特点,利用dynamo编写能与excel数据库联动的参数化排水管网模型创建程序,依次对检查井和管段进行模型创建;
[0065]
步骤s4:迭代数据附加。利用dynamo编写数据录入程序,将排水管网模型在项目应用过程产生的迭代数据,通过excel数据库附加至排水网管模型中,得到最终的排水管网信
息模型。
[0066]
上述步骤s1实施的具体步骤为:
[0067]
s1.1:通过revit软件创建项目文件,并在项目文件中添加常用的管道类型和排水工程涉及的管道系统,构建排水管网模型项目文件。
[0068]
s1.2:构件几何建模。分析检查井构件参数属性,确定构件族样板,通过拉伸、放样融合命令完成检查井构件三维建模;
[0069]
s1.3:族参数设置。为检查井构件添加关键属性参数,并将几何属性、材质属性与构件实体模型进行关联;
[0070]
s1.4:参数调试。调试检查井构件几何参数,观察模型是否受参数驱动而变化,若驱动成功,则载入至revit项目文件中;若不成功,返回s1.3重新进行关联。
[0071]
s1.1中添加的管道类型,包括混凝土管、钢筋混凝土管、hdpe双壁波纹管、hdpe中空壁缠绕管、铸铁管、钢管;添加的管道系统,包括污水系统、废水系统、雨水系统、合流制系统;
[0072]
s1.2中检查井构件族样板选择公制常规模型.rft族样板;
[0073]
s1.3中检查井构件的参数属性包括空间属性、几何属性、材质属性、描述属性,空间属性主要包含检查井插入基准点a;
[0074]
s1.4中需要重复s1.3步骤,直到几何参数可成功驱动构件模型形体变化。
[0075]
上述步骤s2实施的具体步骤为:
[0076]
s2.1:采用cad软件从排水管网设计图纸中获取关键设计参数,并将其导入至excel表中,并根据项目bim模型应用需求添加必要设计参数,分别得到检查井和管段设计数据库。
[0077]
s2.1中获取的关键设计参数包括检查井编号、井坐标、井面标高、井底标高、井规格、管段起终点检查井编号、管径、管内底标高;添加的必要设计参数包括:检查井类型、管道系统、管道材质、检查井调整说明、管道调整说明、其他。
[0078]
上述步骤s3实施的具体步骤为:
[0079]
s3.1:打开revit项目文件,利用dynamo的file path节点链接检查井excel设计数据库;
[0080]
s3.2:利用code block节点分别提取检查井插入点a点xy坐标信息、检查井类型信息、井面与井底标高信息;
[0081]
s3.3:利用point.bycoordinates节点,将x、y、井面标高信息组合成以(x,y,z)为格式的三维空间坐标点阵,再利用familyinstance.bypoint和familytype.byname节点,依次按照各点对应的检查井类型,放置检查井构件。
[0082]
s3.4:最后利用element.setparameterbyname节点,调整对应检查井的井深和井径参数;
[0083]
s3.5:利用dynamo的file path节点链接管段excel设计数据库;
[0084]
s3.6:利用code block节点提取管段起终点检查井编号、管径、管内底标高、管道系统、管道材质;
[0085]
s3.7:利用list.indexof和list.getitematindex的节点组合,根据提取的管道起点终点检查井编号,检索s3.2中提取的检查井坐标信息,获取对应的起点和终点xy坐标值;
[0086]
s3.8:再根据提取的管内底标高信息与管径信息进行数学运算(管中心标高=管内底标高-管径/2)生成起点和终点管中心z坐标值;
[0087]
s3.9:利用line.bystartpointendpoint节点,通过起点和终点坐标生成管道中心线;
[0088]
s3.10:利用list.indexof和list.getitematindex的节点组合,将管道中心线与管道类型、管道系统类型相互匹配。
[0089]
s3.11:利用python script节点,通过引用内嵌的revitapi程序集编写管段模型构建程序,然后将起终点中心线、管道类型、管道系统、管径尺寸参数在input端进行输入,最终在output端生成管段模型。
[0090]
s3.4中井深=井面坐标-井底坐标。
[0091]
上述步骤s4实施的具体步骤为:
[0092]
s4.1:利用parameter.createsharedparameter节点为检查井和管段构件添加所需共享参数;
[0093]
s4.2:同时在excel设计数据库中添加与共享参数所对应的表格项,当项目应用过程中产生构件迭代数据时,记录在excel对应项中,如设计变更说明、模型编码等,然后可通过element.setparameterbyname节点,将相关信息录入至对应构件属性列表。
[0094]
s4.1中添加的共享参数,包括但不限于检查井编号、检查井变更说明、管段编号、管道变更说明、构件编码,参数类型均为text。
[0095]
实施例二
[0096]
本实施例结合附图对本方法进行进一步说明,其步骤如下:
[0097]
步骤1:创建项目文件及检查井构件库,如图2所示。通过revit软件创建项目文件,并在项目文件中添加常用的管道类型和排水工程涉及的管道系统,管道类型包括混凝土管、钢筋混凝土管、hdpe双壁波纹管、hdpe中空壁缠绕管、铸铁管、钢管,管道系统包括污水系统、废水系统、雨水系统、合流制系统,从而构建排水管网项目文件,如图5所示。
[0098]
分析检查井构件参数属性,选择公制常规模型.rft类型作为构件族样板,通过拉伸、放样融合命令完成检查井构件三维建模;
[0099]
为检查井构件添加空间属性、几何属性、材质属性、描述属性等关键属性参数,并将几何属性、材质属性与构件实体模型进行关联,如图6所示;
[0100]
调试检查井构件几何参数,观察模型是否受参数驱动而变化,若驱动成功,则载入至revit项目文件中,若不成功,返回s1.3重新进行关联,重复此操作直至驱动成功。
[0101]
步骤2:创建设计数据库。采用cad软件从排水管网设计图纸中获取关键设计参数,并将其导入至excel表,根据具体情况添加必要设计参数,分别得到检查井设计数据库(如图7所示)和管段设计数据库(如图8所示);
[0102]
获取的关键设计参数包括:检查井编号、井坐标、井面标高、井底标高、井规格、管段起终点检查井编号、管径、管内底标高;
[0103]
添加的必要设计参数包括:检查井类型、管道系统、管道材质、检查井调整说明、管道调整说明、其他。
[0104]
步骤3:排水管网模型创建,如图3、4所示。打开revit项目文件,利用dynamo的file path节点链接检查井excel设计数据库;利用code block节点分别提取检查井插入点a点
(如图9所示)xy坐标信息、检查井类型信息、井面与井底标高信息;利用point.bycoordinates节点,将x、y、井面标高信息组合成以(x,y,z)为格式的三维空间坐标点阵,再利用familyinstance.bypoint和familytype.byname节点,依次按照各点对应的检查井类型,放置检查井构件。最后利用element.setparameterbyname节点,调整对应检查井的井深(井深=井面坐标-井底坐标)和井径参数;
[0105]
利用dynamo的file path节点链接管段excel设计数据库;利用code block节点提取管段起终点检查井编号、管径、管内底标高、管道系统、管道材质;利用list.indexof和list.getitematindex的节点组合,根据提取的管道起点终点检查井编号,检索s3.2中提取的检查井坐标信息,获取对应的起点和终点xy坐标值;再根据提取的管内底标高信息与管径信息进行数学运算(管中心标高=管内底标高-管径/2)生成起点和终点管中心z坐标值;利用line.bystartpointendpoint节点,通过起点和终点坐标生成管道中心线;利用list.indexof和list.getitematindex的节点组合,将管道中心线与管道类型、管道系统类型相互匹配。利用python script节点,通过引用内嵌的revitapi程序集编写管段模型构建程序,然后将起终点中心线、管道类型、管道系统、管径尺寸参数在input端进行输入,最终在output端生成管段模型。
[0106]
步骤4:迭代数据附加。利用parameter.createsharedparameter节点为检查井和管段构件添加所需共享参数,包括但不限于检查井编号、检查井变更说明、管段编号、管道变更说明、构件编码,参数类型均为text;
[0107]
同时在excel设计数据库中添加与共享参数所对应的表格项,当项目应用过程中产生构件迭代数据时,记录在excel对应项中,如设计变更说明、模型编码等,然后可通过element.setparameterbyname节点,将相关信息录入至对应构件属性列表,得到最终的信息模型,如图10所示。
[0108]
应该明白,公开的过程中的步骤的特定顺序或层次是示例性方法的实例。基于设计偏好,应该理解,过程中的步骤的特定顺序或层次可以在不脱离本公开的保护范围的情况下得到重新安排。所附的方法权利要求以示例性的顺序给出了各种步骤的要素,并且不是要限于所述的特定顺序或层次。
[0109]
在上述的详细描述中,各种特征一起组合在单个的实施方案中,以简化本公开。不应该将这种公开方法解释为反映了这样的意图,即,所要求保护的主题的实施方案需要比清楚地在每个权利要求中所陈述的特征更多的特征。相反,如所附的权利要求书所反映的那样,本发明处于比所公开的单个实施方案的全部特征少的状态。因此,所附的权利要求书特此清楚地被并入详细描述中,其中每项权利要求独自作为本发明单独的优选实施方案。
[0110]
为使本领域内的任何技术人员能够实现或者使用本发明,上面对所公开实施例进行了描述。对于本领域技术人员来说;这些实施例的各种修改方式都是显而易见的,并且本文定义的一般原理也可以在不脱离本公开的精神和保护范围的基础上适用于其它实施例。因此,本公开并不限于本文给出的实施例,而是与本技术公开的原理和新颖性特征的最广范围相一致。
[0111]
上文的描述包括一个或多个实施例的举例。当然,为了描述上述实施例而描述部件或方法的所有可能的结合是不可能的,但是本领域普通技术人员应该认识到,各个实施例可以做进一步的组合和排列。因此,本文中描述的实施例旨在涵盖落入所附权利要求书
的保护范围内的所有这样的改变、修改和变型。此外,就说明书或权利要求书中使用的术语“包含”,该词的涵盖方式类似于术语“包括”,就如同“包括,”在权利要求中用作衔接词所解释的那样。此外,使用在权利要求书的说明书中的任何一个术语“或者”是要表示“非排它性的或者”。
[0112]
以上所述实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围,均应包含在本技术的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献