CN116186867A - 管道穿墙套管、翼环和穿墙孔洞的自动建模方法及终端 - Google Patents
管道穿墙套管、翼环和穿墙孔洞的自动建模方法及终端 Download PDFInfo
- Publication number
- CN116186867A CN116186867A CN202310464454.3A CN202310464454A CN116186867A CN 116186867 A CN116186867 A CN 116186867A CN 202310464454 A CN202310464454 A CN 202310464454A CN 116186867 A CN116186867 A CN 116186867A
- Authority
- CN
- China
- Prior art keywords
- group
- wall
- pipeline
- pipelines
- geometric
- 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.)
- Granted
Links
Images
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/10—Numerical modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2113/00—Details relating to the application field
- G06F2113/14—Pipes
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T90/00—Enabling technologies or technologies with a potential or indirect contribution to GHG emissions mitigation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Geometry (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Structural Engineering (AREA)
- Computational Mathematics (AREA)
- Civil Engineering (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Architecture (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种管道穿墙套管、翼环和穿墙孔洞的自动建模方法及终端,包括以下步骤:获取所有穿墙管道直径,并将所有穿墙管道分为若干组;建立被穿墙体的几何实体模型;选择任意一组穿墙管道,生成预留孔洞模型;获取任意一组穿墙管道的中心线,将和Z轴不平行的管道中心线分为a组,将和Z轴平行的管道中心线分为b组;建立a组几何实体,通过布尔运算对a组几何实体进行剪切运算,从而形成套管几何实体,生成套管模型;建立b组几何实体,通过布尔运算对b组几何实体进行剪切运算,从而形成翼环几何实体,生成翼环模型;采用本方案,提供了一种建模工程量更小,自动化更高的,无需提前建立相应族库的管道套管、翼环及相应洞口的建模方法。
Description
技术领域
本发明涉及BIM自动建模技术领域,具体涉及一种管道穿墙套管、翼环和穿墙孔洞的自动建模方法及终端。
背景技术
在工业、市政、建筑工程领域中,一般在有地震设防要求的地区、管道穿墙受震动和管道伸缩变形、或有严密防水要求的构(建)筑物的情况下,在管道穿越处会设置防水套管(翼环)。在一个项目中,管道穿墙套管(翼环)的位置是随机分散的,且数量上也是较多的,若在Revit中进行手动布置,手动放置的工程量是较大的,并且管道穿越处,还要进行洞口族的放置,进行模型开孔,这进一步加大了建模工程量。同时穿墙处不同结构壁厚,不同管道直径的套管尺寸是不同的,每一次放置时还需要调整相应的族参数,所以整个建模过程中套管(翼环)构建的工程量是较大的。因此通过Dynamo平台利用设计的编程程序可以减少一些建模的重复性工作量,但是按照目前的方法,首先需要建立套管(翼环)族库、洞口族库。而在一般的水池等结构模型的设计过程中,需要在穿越顶板的位置设置翼环,其他位置设置套管,所以还要具体根据图纸上的不同放置位置,分别整理好套管、翼环放置点的平面坐标和高程,将所有的位置数据整理完成后,利用Dynamo分别进行放置并调整好放置的方向,同时还需要整理好每个位置上套管(翼环)对应的族参数,在Dynamo中进行相应的赋值后,才能建立精确的工程模型。虽然上述方案利用Dynamo进行建模,但整体上,工程量并没大大减少。
发明内容
本发明为解决现有技术中建模过程工程量较大的问题,目的在于提供一种管道穿墙套管、翼环和穿墙孔洞的自动建模方法及终端,采用本方案,主要结合了Dynamo中布尔运算、条件语句、分类编组等编程程序,提供了一种建模工程量更小,自动化更高的,无需提前建立相应族库的管道套管、翼环及相应洞口的建模方法,无需根据二维图纸收集放置点的空间三维信息、无需调整族放置方向,而根据穿墙管道的位置、管径大小、结构壁厚自动分别放置符合相应尺寸的套管、翼环模型、预留孔洞模型。
本发明通过下述技术方案实现:
一种管道穿墙套管、翼环和穿墙孔洞的自动建模方法,所述方法包括以下步骤:
S1:获取所有穿墙管道直径,在此基础上将所有穿墙管道分为若干组,每组穿墙管道管径相同;
S2:建立被穿墙体的几何实体模型;
S3:选择任意一组穿墙管道,获取所述任意一组穿墙管道的中心线,通过布尔运算,求出管道中心线和墙体几何实体模型的交集点、线段元素,经过计算得到一组圆柱体,从而生成预留孔洞模型;
S4:在上述若干管道中心线中,将和Z轴不平行的管道中心线分为a组,将和Z轴平行的管道中心线分为b组;所述Z轴为垂直于Revit项目中俯视视图平面的轴线;
S5:根据a组中管道中心线和几何实体模型相交的点、线段元素,建立a组几何实体,通过布尔运算对a组几何实体进行剪切运算,从而形成套管几何实体,生成套管模型;
S6:根据b组中管道中心线和几何实体模型相交的点、线段元素,建立b组几何实体,通过布尔运算对b组几何实体进行剪切运算,从而形成翼环几何实体,生成翼环模型;根据b组中管道中心线和几何实体模型相交的点、线段元素,将项目中的管道进行拆分,去除与翼环模型重合的管段,使翼环模型与管道衔接。
S7:重复步骤S3-S6,直至完成每组穿墙管道的套管模型或翼环模型。
进一步优化,所述将所有穿墙管道分为若干组时,组序需按照管道直径从小到大的顺序排列,依次即为0号组、1号组……N号组,N为大于等于0的自然数。
进一步优化,所述步骤S3还包括以下具体步骤:
在求出管道中心线和墙体几何实体模型的交集点、线段元素以后,利用交集点和线段创建出一组圆柱体,在得到一组圆柱体后,需其以空心模型族的形式载入Revit项目中,从而生成预留孔洞模型。
进一步优化,所述步骤S4还包括以下具体步骤:
在获取所述任意一组穿墙管道的中心线后,将获取的所有中心线转化为向量,记为向量组V1,并计算Z轴的向量,记为Z轴向量;随后以是否平行作为判断依据,判断向量组V1和Z轴向量是否平行,若不平行,选取不平行的管道中心线,记为a组;若平行,选取平行的管道中心线,记为b组。
进一步优化,所述步骤S5中,根据a组中管道中心线和几何实体模型相交的点、线段元素,建立a组几何实体时,还包括以下具体步骤:
S51:通过布尔运算,计算a组中管道中心线和墙体几何实体模型的交集,得到新的一组线段,记为L1组,随后计算L1组线段的起点和终点,分别将所述起点和终点记为点组P1和点组P2;
S52:根据点组P1和点组P2,以所述任意一组穿墙管道的穿墙套管的外径为直径,创建第一圆柱体组;
S53:随后再根据点组P1和点组P2,以所述任意一组穿墙管道的穿墙套管的内径为直径,创建第二圆柱体组。
进一步优化,所述步骤S5中,通过布尔运算对a组几何实体进行剪切运算,从而形成套管几何实体,生成套管模型时,还包括以下具体步骤:
S54:将第一圆柱体组内部的第二圆柱体组剪切,从而得到一组第一几何实体组,随后将第一几何实体组的质心记为点组P3;
S55:将L1组线段的方向向量记为向量组V2,随后以点组P3为中心,计算出以向量组V2作为平面法向量的平面组,记为第一平面组,以所述任意一组穿墙管道的穿墙套管的止水片外径为直径,创建第一平面组上的圆,通过填充得到一组圆面,记为第一圆面组,随后根据所述任意一组穿墙管道的穿墙套管的止水片厚度,将第一圆面组双向拉伸,从而得到第三圆柱体组;
S56:然后以所述任意一组穿墙管道的穿墙套管的外径为直径,创建平面组上的圆,通过填充得到一组圆面,记为第二圆面组,随后根据所述任意一组穿墙管道的穿墙套管的止水片厚度,将第二圆面组双向拉伸,从而得到第四圆柱体组;
S57:通过布尔运算,将第三圆柱体组内部的第四圆柱体组剪切,得到第二几何实体组;
S58:最后通过布尔运算,计算第一几何实体组和第二几何实体组的并集,得到一组第三几何实体组,基于所述第三几何实体组,将其转为实心族,批量载入到Revit项目中,生成套管模型。
进一步优化,所述步骤S6还包括以下具体步骤:
S61:通过布尔运算,计算b组中管道中心线和几何实体模型的交集,得到新的一组线段,记为L2组,随后计算出线段组L2组的中点,记为点组P4;
S62:将L2组线段的方向向量记为向量组V3,随后以点组P4为中心,生成以向量组V3作为平面法向量的第二平面组,以所述任意一组穿墙管道的翼环的止水片外径为直径,创建第二平面组上的圆,通过填充得到一组圆面,记为第三圆面组,随后根据所述任意一组穿墙管道的翼环的止水片厚度,将第三圆面组双向拉伸,得到第五圆柱体组;
S63:随后以所述任意一组穿墙管道的的外径为直径,创建第二平面组上的圆,通过填充得到一组圆面,记为第四圆面组,随后根据所述任意一组穿墙管道的翼环的止水片厚度,将第四圆面组双向拉伸,得到第六圆柱体组;
S64:通过布尔运算,将第五圆柱体组内部的第六圆柱体组剪切,得到第四几何实体组。
S65:随后以所述任意一组穿墙管道的的内径为直径,创建第二平面组上的圆,通过填充得到一组圆面,记为第五圆面组,随后根据所述任意一组穿墙管道的翼环结构长度的二分之一,将第五圆面组双向拉伸,得到第七圆柱实体组;
S66:随后以所述任意一组穿墙管道的的外径为直径,创建第二平面组上的圆,通过填充得到一组圆面,记为第六圆面组,随后根据所述任意一组穿墙管道的翼环结构长度的二分之一,将第六圆面组双向拉伸,得到第八圆柱实体组;
S67:通过布尔运算,将第八圆柱实体组内部的第七圆柱实体组剪切,得到第五几何实体组。
S68:最后通过布尔运算,计算第四几何实体组和第五几何实体组的并集,得到一组第六几何实体组,基于所述第六几何实体组,将其转为实心族,批量载入到Revit项目中,生成翼环模型。
S69:将点组P4沿着向量组V3的方向,双向移动所述任意一组穿墙管道的翼环结构长度二分之一的距离,得到的两组点分别记为P5和P6,将P5和P6合并为点组P7,将管道模型按照P7点进行分割拆分,删除翼环模型与当前管道重复的一段管段,即P5与P6点之间的管段,使得翼环模型与管道衔接。
本发明与现有技术相比,具有如下的优点和有益效果:
1、本发明提供的建模方法使用编程程序,将Revit项目中的管道按不同管径进行自动分组,由于不同管径管道对应的套管、翼环、孔洞的尺寸是不一致的,自动分组后再进行后续建模,不同分组都可以使用同一套编程程序结构,进行批量建模,以提高建模效率。
2、本发明提供的建模方法使用编程程序,对Revit项目中按管道走向进行判定,并进行分组,由于水池等市政构筑物一般是在管道垂直穿越顶板、底板时,放置翼环,管道穿越侧墙等其他结构,放置套管,因此判定后进行分组,可以自动识别放置二者的放置位置。
3、本发明提供的建模方法使用编程程序,将Revit中的管道以及穿越的结构转化成几何元素,再进行各种布尔运算,计算出套管、翼环,以及预制孔洞模型的几何实体。由于Revit项目中管道以及侧墙、顶板、底板等结构本身具有位置、尺寸属性,因此转化成几何元素,在此基础上再进行布尔运算得到的套管、翼环、预留孔洞的模型实体,其位置、尺寸是与对应管道的管径、结构厚度自动适应的。可以使得后续所建的套管、翼环、孔洞模型参数的尺寸和管道尺寸是相匹配的,大大减少了人工赋值调整的参数。
4、本发明提供的建模方法,并不需要先建立对应的参数化模型族库后,再调入到Revit项目中的准确放置点,再进行对应的参数调整,使之与不同位置处的管径、结构壁厚相匹配。
5、本发明提供的建模方法,在建立穿墙套管、翼环模型时,自动创建与管道匹配的孔洞模型,能够在进行项目的管线碰撞检测时,避免出现误判。
附图说明
为了更清楚地说明本发明示例性实施方式的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。在附图中:
图1为本发明提供的一种实施例的流程示意图;
图2为本发明提供的一种实施例的穿墙套管模型示意图;
图3为本发明提供的一种实施例的穿墙套管孔洞模型示意图;
图4为本发明提供的一种实施例的翼环模型示意图;
图5为本发明提供的一种实施例的翼环孔洞模型示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。
实施例1:本实施例1提供了一种管道穿墙套管、翼环和穿墙孔洞的自动建模方法,如图1-图4所示,包括以下具体步骤:
S1:利用编程程序提取Revit项目中的所有管道,并根据管道的直径进行分组,相同的管径分为一组,且组序按照管道直径从小到达排列,其分组序号为0、1、2…N依次对应,N为大于等于0的自然数。
具体的,上述步骤中,利用Categories节点提取Revit项目中的所有管道族,再利用All Elements of Categories节点将所有提取的Revit项目中的管道转化为Dynamo中可以识别计算的图元;利用Element.Get Parameter Value By Name节点计算项目中所有提取到的管道的直径,再利用List.Group By Key节点将管道直径作为分组依据,按不同直径进行分组,默认分组排序为管径由小到大排列,分为0号组、1号组、2号组…N号组等依次排列。
S2:利用编程程序将Revit项目中的墙体族或者其他结构族转化成Dynamo中的几何实体形式,记为Solid1。
具体的,上述步骤中,在Categories节点中选择墙体族或者其他结构族,利用AllElements of Categories节点将其转化为Dynamo图元,再使用Element.Geometry将其转化成Dynamo中的几何实体形式,记为Solid1。
S3:利用编程程序创建0号组穿墙管道对应的预留孔洞,并在Revit项目模型中生成。其方法在于将0号组管道以及墙体等结构图元转化成Dynamo中的几何元素,对几何元素进行布尔运算,求其二者交集后,得到相交的点组、线段组,再经过计算得到一组圆柱体,最后将其转化成空心族直接载入项目中,生成预留孔洞模型。
具体的,上述步骤中,利用List.Get Item At Index节点选择上述0号组,,利用节点Element.Get Location将0号组中管道的中心线提取出来,记为中心线ZX,然后运用Geometry.Intersect布尔运算求出几何实体Solid1与中心线ZX的交集,得到的线段记为L0组。然后利用节点Curve.Start Point,计算L0组线段的起点,记为点组P01;然后利用节点Curve.End Point,计算L0组线段的终点,记为点组P02,然后利用节点Cylinder.By PointsRadius,选择上述点组P01和P02,直径取决于0号组管道的外径,利用节Element.GetParameterValueByName直接获取外径值,得到一组圆柱体,记为Cylinder1。然后使用Springs.FamilyInstance.ByGeometry节点,将这组圆柱体Cylinder1以空心模型族的形式载入到Revit项目中,载入过程中利用File Path节点选择“公制常规模型”的族模板文件,利用Categories节点选择“常规模型”,在isVoid中输入Code Block节点编写的“true”字符,利用Code Block节点给每个孔洞模型族赋上名称,自主编写的Code Block字符为:“预留孔洞”+[1..a],其中a的数值由节点List.Count计算出Cylinder1列表的项数。最后就生成了对应穿墙管道的预留孔洞模型。
S4:利用编程程序对0号组穿墙管道的中心线再进行分组,穿越侧墙等结构的管道中心线,即与项目Z轴方向不平行的管道中心线分为一组,记为0a组;其余平行的分为另外一组,记为0b组。
具体的,上述步骤中,在利用节点Element.Get Location获取的0号组中管道的中心线ZX的基础上,再利用Line.Direction节点将上述线段转化成向量,记为向量组V1;利用节点Vector.Z Axis计算出Z轴向量后,利用节点Vector.Is Parallel对向量组V1和Z轴向量进行是否平行的判定,然后以此为依据利用节点List.Group By Key进行分组,与Z轴不平行的,利用节点List.Get Item At Index选取,记为0a组,与Z轴平行的,利用节点List.Get Item At Index选取,记为0b组。
S5:利用编程程序创建0a号组穿墙管道的管道套管,并在Revit项目模型中生成。其方法在于,在Dynamo中计算出穿墙管道的中心线与墙等结构相交的点、线段元素,并以此为基础创建多个几何实体,利用布尔运算对几何实体进行剪切运算,形成套管的几何实体形状后,将其转化成实体族直接载入到Revit项目中,生成套管模型。
具体的,上述步骤中,利用节点Geometry.Intersect对几何实体组Solid1和线段0a组进行布尔运算,求其交集,得到新的一组线段记为L1组。然后利用节点Curve.StartPoint,计算L1组线段的起点,记为点组P1;然后利用节点Curve.End Point,计算L1组线段的终点,记为点组P2,就获取了穿墙管道的中心线与墙等结构相交的点。然后利用节点Cylinder.By Points Radius,选择上述点组P1和P2,直径取决于0号组管道穿墙套管的外径,创建出一组圆柱体组,记为Cylinder2;然后相同的方法,利用节点Cylinder.By PointsRadius,选择上述点组P1和P2,直径取决于0号组管道穿墙套管的内径,创建出一组圆柱体组,记为Cylinder3;然后利用节点Solid.Difference All进行布尔运算,将圆柱体组Cylinder2剪切Cylinder3,得到一组几何实体组,记为几何实体组Solid2。利用节点Solid.Centroid计算几何实体组Solid2的质心,记为点组P3;利用节点Line.Direction计算线段组L1的方向向量,记为向量组V2;利用节点Plane.By Origin Normal创建点组P3为中心,向量组V2为平面法向量的平面组,记为Plane1;然后利用节点Circle.By PlaneRadius创建平面组Plane1上的圆,直径取决于0号组管道穿墙套管的止水片外径,然后使用节点Surface.By Patch将上述圆填充为面,得到一组圆面,记为圆面组cplane1,再使用节点Surface.Thicken将圆形面组cplane1双向拉伸,拉伸厚度取决于0号组管道穿墙套管的止水片的厚度,得到一组圆柱实体,记为Cylinder4。使用同样的方法,利用节点Circle.ByPlane Radius创建平面组Plane1上的圆,直径取决于0号组管道穿墙套管的外径,然后使用节点Surface.By Patch将上述圆填充为面,得到一组圆面,记为圆面组cplane2,再使用节点Surface.Thicken将圆形面组cplane2双向拉伸,拉伸厚度取决于0号组管道穿墙套管的止水片的厚度,得到一组圆柱实体,记为Cylinder5。最后利用Solid.Difference All进行布尔剪切运算,计算几何实体组Cylinder4剪切几何实体组Cylinder5,得到一组几何实体组,记为Solid3。最后利用节点Solid.Union将几何实体组Solid2与Solid3进行布尔运算,求其并集,得到一组几何实体组,记为Solid4。最后使用Springs.FamilyInstance.ByGeometry节点,将这组Solid4以实心模型族的形式载入到Revit项目中,载入过程中利用FilePath节点选择“公制常规模型”的族模板文件,利用Categories节点选择“常规模型”,在isVoid中输入Code Block节点编写的“false”字符,利用Code Block节点给每个套管模型族赋上名称,自主编写的Code Block字符为:“管道套管”+[1..a],其中a的数值由节点List.Count计算出这组Solid4列表的项数。最后就生成了对应穿墙管道套管模型。
S6:利用编程程序创建0b号组穿墙管道的翼环,并在Revit项目模型中生成。其方法在于,在Dynamo中计算出穿墙管道的中心线与顶板等结构相交的点、线段元素,并以此为基础创建多个几何实体,利用布尔运算对几何实体进行剪切运算,形成翼环的几何实体形状后,将其转化成实体族直接载入到Revit项目中,生成翼环模型。
具体的,上述步骤中,利用节点Geometry.Intersect对几何实体组Solid1和线段0b组进行布尔运算,求其交集,得到新的一组线段记为L2组。使用节点Curve.Points AtEqual 计算出线段组L2的中点,记为点组P4;使用节点Line.Direction计算线段组L2的方向向量,记为向量组V3;利用节点Plane.By Origin Normal创建点组P4为中心,向量组V3为平面法向量的平面组,记为Plane2;然后利用节点Circle.By Plane Radius创建平面组Plane2上的圆,直径取决于0号组管道翼环的止水片外径,然后使用节点Surface.By Patch将上述圆填充为面,得到一组圆面,记为圆面组cplane3,再使用节点Surface.Thicken将圆形面组cplane3双向拉伸,拉伸厚度取决于0号组管道翼环的止水片的厚度,得到一组圆柱实体,记为Cylinder6。使用同样的方法,利用节点Circle.By Plane Radius创建平面组Plane2上的圆,直径取决于0号组管道的外径,然后使用节点Surface.By Patch将上述圆填充为面,得到一组圆面,记为圆面组cplane4,再使用节点Surface.Thicken将圆形面组cplane4双向拉伸,拉伸厚度取决于0号组管道翼环止水片的厚度,得到一组圆柱实体,记为Cylinder7。最后利用Solid.Difference All进行布尔剪切运算,计算几何实体组Cylinder6剪切几何实体组Cylinder7,得到一组几何实体组,记为Solid5。
同样的编程节点结构,以点组P4为中心,利用节点Circle.By Plane Radius创建平面组Plane2上的圆,直径取决于0号组管道内径,然后使用节点Surface.By Patch将上述圆填充为面,得到一组圆面,记为圆面组cplane5,再使用节点Surface.Thicken将圆形面组cplane5双向拉伸,拉伸厚度取决于0号组管道翼环结构长度的二分之一,得到一组圆柱实体,记为Cylinder8。同样的编程节点结构,以点组P4为中心,利用节点Circle.By PlaneRadius创建平面组Plane2上的圆,直径取决于0号组管道外径,然后使用节点Surface.ByPatch将上述圆填充为面,得到一组圆面,记为圆面组cplane6,再使用节点Surface.Thicken将圆形面组cplane6双向拉伸,拉伸厚度取决于0号组管道翼环结构长度的二分之一,得到一组圆柱实体,记为Cylinder9。然后利用Solid.Difference All进行布尔剪切运算,计算几何实体组Cylinder9剪切几何实体组Cylinder8,得到一组几何实体组,记为Solid6。最后利用节点Solid.Union将几何实体组Solid5与Solid6进行布尔运算,求其并集,得到一组几何实体组,记为Solid7。
然后使用Springs.FamilyInstance.ByGeometry节点,将这组Solid7以实心模型族的形式载入到Revit项目中,载入过程中利用File Path节点选择“公制常规模型”的族模板文件,利用Categories节点选择“常规模型”,在isVoid中输入Code Block节点编写的“false”字符,利用Code Block节点给每个翼环模型族赋上名称,编写的Code Block字符为:“管道翼环”+[1..a],其中a的数值由节点List.Count计算出这组Solid7列表的项数。最后就生成了对应穿墙管道翼环模型。
最后将需要放置翼环的管道进行拆分,删除与翼环位置重叠的管道部分,使用节点List.Group By Key将管道图元进行分组,分组依据也是使用节点Vector.Is Parallel计算管道图元是否与Z轴平行,根据计算结果“True”、“False”布尔值进行分组,然后使用List.Get Item At Index节点筛选出布尔值为“True”,与Z轴平行的管道图元,记为0c组。以上述点组P4为中心,向量组V3为方向,利用节点Geometry.Translate将点组P4双向移动所述任意一组穿墙管道的翼环结构长度二分之一的距离,得到的两组点分别记为点组P5和点组P6,使用List Create节点将上述两个点组合并,记为点组P7,接着利用节点List.Transpose对点组P7列表进行转置调整列表排列顺序,利用节点Tools.Split PipeBy Points将0c组的管道图元按照点组P7拆分点的顺序进行拆分,拆分后得到的管道图元记为0d组。最后使用节点List.Group By Key将管道图元0d组再进行分组,分组依据为管道是否与几何实体组Solid1有交集,使用节点Element.Get Location计算出0d组管道的中心线,利用节点Geometry.Does Intersect判断出0d组管道的中心线是否与Solid1相交,根据布尔值为真值筛选出的管道图元组,记为管道图元0e组,然后使用List.Drop Items节点将其删除,完成项目中管道翼环与管道的衔接。
S7:创建1、2、3……号组管道的预留孔洞模型的编程节点程序方法与步骤S3完全一致。在建模时,根据项目的实际情况复制相同的程序架构,就能实现不同管径管道穿墙预留孔洞的模型创建。
S8:创建1、2、3……号组管道的穿墙套管、翼环模型的编程节点程序方法与步骤S4~S6完全相同。在建模时,只需根据项目的实际情况复制上述步骤S4~S6相同的程序架构。
本发明提供上述步骤,相对于现有技术中“先进行套管、翼环、孔洞模型族的建立,然后分别整理好上述三种模型族待调入的三维空间坐标、不同放置位置处的模型族参数后,并调整好上述族的放置方向,再利用Dynamo调入到Revit项目中”的方法相比,具有如下优点:由于根据二维图纸整理上述建模所需的空间数据是庞大、繁杂的。本发明无需进行“套管、翼环、孔洞族放置的三维空间坐标”的数据整理;由于套管、翼环、预留孔洞的尺寸受不同管道管径,穿越结构壁厚的影响,本发明方法创建的模型参数能够自动适应不同的管径、结构壁厚,无需对项目中单个套管、翼环、孔洞模型再进行后续大量的参数调整;本发明无需提前建立套管、翼环、孔洞参数族文件;本发明无需调整族的放置方向,即本发明方法所创建模型能够自动适应方向,无需对项目中单个模型再进行后续的方向调整。
实施例2:在一些示例性实施例中,本实施例还提供了一种管道穿墙套管、翼环和穿墙孔洞的自动建模设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,处理器执行计算机程序时实现如实施例1中用于实现“建模工程量更小,自动化更高的,无需提前建立相应族库的管道套管、翼环及相应洞口”目的的一种管道穿墙套管、翼环和穿墙孔洞的自动建模方法的最小技术方案。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本领域普通技术人员可以理解实现上述事实和方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,涉及的程序或者所述的程序可以存储于一计算机所可读取存储介质中,该程序在执行时,包括如下步骤:此时引出相应的方法步骤,所述的存储介质可以是ROM/RAM、磁碟、光盘等等。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (9)
1.一种管道穿墙套管、翼环和穿墙孔洞的自动建模方法,其特征在于,所述方法包括以下步骤:
S1:获取所有穿墙管道直径,在此基础上将所有穿墙管道分为若干组,每组穿墙管道管径相同;
S2:建立被穿墙体的几何实体模型;
S3:选择任意一组穿墙管道,获取所述任意一组穿墙管道的中心线,通过布尔运算,求出管道中心线和墙体几何实体模型的交集点、线段元素,经过计算得到一组圆柱体,生成预留孔洞模型;
S4:在若干管道中心线中,将和Z轴不平行的管道中心线分为a组,将和Z轴平行的管道中心线分为b组;所述Z轴为垂直于Revit项目中俯视视图平面的轴线;
S5:根据a组中管道中心线和几何实体模型相交的点、线段元素,建立a组几何实体,通过布尔运算对a组几何实体进行剪切运算,从而形成套管几何实体,生成套管模型;
S6:根据b组中管道中心线和几何实体模型相交的点、线段元素,建立b组几何实体,通过布尔运算对b组几何实体进行剪切运算,从而形成翼环几何实体,生成翼环模型;根据b组中管道中心线和几何实体模型相交的点、线段元素,将项目中的管道进行拆分,去除与翼环模型重合的管段,使翼环模型与管道衔接;
S7:重复步骤S3-S6,直至完成每组穿墙管道的套管模型或翼环模型。
2.根据权利要求1所述的管道穿墙套管、翼环和穿墙孔洞的自动建模方法,其特征在于,所述将所有穿墙管道分为若干组时,组序需按照管道直径从小到大的顺序排列,依次即为0号组、1号组……N号组,N为大于等于0的自然数。
3.根据权利要求1所述的管道穿墙套管、翼环和穿墙孔洞的自动建模方法,其特征在于,所述步骤S3还包括以下具体步骤:
在求出管道中心线和墙体几何实体模型的交集点、线段元素以后,利用交集点和线段创建出一组圆柱体,在得到一组圆柱体后,需其以空心模型族的形式载入Revit项目中,从而生成预留孔洞模型。
4.根据权利要求1所述的管道穿墙套管、翼环和穿墙孔洞的自动建模方法,其特征在于,所述步骤S4还包括以下具体步骤:
在获取所述任意一组穿墙管道的中心线后,将获取的所有中心线转化为向量,记为向量组V1,并计算Z轴的向量,记为Z轴向量;随后以是否平行作为判断依据,判断向量组V1和Z轴向量是否平行,若不平行,选取不平行的管道中心线,记为a组;若平行,选取平行的管道中心线,记为b组。
5.根据权利要求1所述的管道穿墙套管、翼环和穿墙孔洞的自动建模方法,其特征在于,所述步骤S5中,根据a组中管道中心线和几何实体模型相交的点、线段元素,建立a组几何实体时,还包括以下具体步骤:
S51:通过布尔运算,计算a组中管道中心线和墙体几何实体模型的交集,得到新的一组线段,记为L1组,随后计算L1组线段的起点和终点,分别将所述起点和终点记为点组P1和点组P2;
S52:根据点组P1和点组P2,以所述任意一组穿墙管道的穿墙套管的外径为直径,创建第一圆柱体组;
S53:随后再根据点组P1和点组P2,以所述任意一组穿墙管道的穿墙套管的内径为直径,创建第二圆柱体组。
6.根据权利要求5所述的管道穿墙套管、翼环和穿墙孔洞的自动建模方法,其特征在于,所述步骤S5中,通过布尔运算对a组几何实体进行剪切运算,从而形成套管几何实体,生成套管模型时,还包括以下具体步骤:
S54:将第一圆柱体组内部的第二圆柱体组剪切,从而得到一组第一几何实体组,随后将第一几何实体组的质心记为点组P3;
S55:将L1组线段的方向向量记为向量组V2,随后以点组P3为中心,计算出以向量组V2作为平面法向量的平面组,记为第一平面组,以所述任意一组穿墙管道的穿墙套管的止水片外径为直径,创建第一平面组上的圆,通过填充得到一组圆面,记为第一圆面组,随后根据所述任意一组穿墙管道的穿墙套管的止水片厚度,将第一圆面组双向拉伸,从而得到第三圆柱体组;
S56:然后以所述任意一组穿墙管道的穿墙套管的外径为直径,创建平面组上的圆,通过填充得到一组圆面,记为第二圆面组,随后根据所述任意一组穿墙管道的穿墙套管的止水片厚度,将第二圆面组双向拉伸,从而得到第四圆柱体组;
S57:通过布尔运算,将第三圆柱体组内部的第四圆柱体组剪切,得到第二几何实体组;
S58:最后通过布尔运算,计算第一几何实体组和第二几何实体组的并集,得到一组第三几何实体组,基于所述第三几何实体组,将其转为实心族,批量载入到Revit项目中,生成套管模型。
7.根据权利要求1所述的管道穿墙套管、翼环和穿墙孔洞的自动建模方法,其特征在于,所述步骤S6还包括以下具体步骤:
S61:通过布尔运算,计算b组中管道中心线和几何实体模型的交集,得到新的一组线段,记为L2组,随后计算出线段组L2组的中点,记为点组P4;
S62:将L2组线段的方向向量记为向量组V3,随后以点组P4为中心,生成以向量组V3作为平面法向量的第二平面组,以所述任意一组穿墙管道的翼环的止水片外径为直径,创建第二平面组上的圆,通过填充得到一组圆面,记为第三圆面组,随后根据所述任意一组穿墙管道的翼环的止水片厚度,将第三圆面组双向拉伸,得到第五圆柱体组;
S63:随后以所述任意一组穿墙管道的的外径为直径,创建第二平面组上的圆,通过填充得到一组圆面,记为第四圆面组,随后根据所述任意一组穿墙管道的翼环的止水片厚度,将第四圆面组双向拉伸,得到第六圆柱体组;
S64:通过布尔运算,将第五圆柱体组内部的第六圆柱体组剪切,得到第四几何实体组;
S65:随后以所述任意一组穿墙管道的的内径为直径,创建第二平面组上的圆,通过填充得到一组圆面,记为第五圆面组,随后根据所述任意一组穿墙管道的翼环结构长度的二分之一,将第五圆面组双向拉伸,得到第七圆柱实体组;
S66:随后以所述任意一组穿墙管道的的外径为直径,创建第二平面组上的圆,通过填充得到一组圆面,记为第六圆面组,随后根据所述任意一组穿墙管道的翼环结构长度的二分之一,将第六圆面组双向拉伸,得到第八圆柱实体组;
S67:通过布尔运算,将第八圆柱实体组内部的第七圆柱实体组剪切,得到第五几何实体组;
S68:最后通过布尔运算,计算第四几何实体组和第五几何实体组的并集,得到一组第六几何实体组,基于所述第六几何实体组,将其转为实心族,批量载入到Revit项目中,生成翼环模型;
S69:将点组P4沿着向量组V3的方向,双向移动所述任意一组穿墙管道的翼环结构长度二分之一的距离,得到的两组点分别记为P5和P6,将P5和P6合并为点组P7,将管道模型按照P7点进行分割拆分,删除翼环模型与当前管道重复的一段管段,即P5与P6点之间的管段,使得翼环模型与管道衔接。
8.一种终端,其特征在于,包括至少一个处理器,以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至7中任一所述的管道穿墙套管、翼环和穿墙孔洞的自动建模方法。
9.一种存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的管道穿墙套管、翼环和穿墙孔洞的自动建模方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310464454.3A CN116186867B (zh) | 2023-04-27 | 2023-04-27 | 管道穿墙套管、翼环和穿墙孔洞的自动建模方法及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310464454.3A CN116186867B (zh) | 2023-04-27 | 2023-04-27 | 管道穿墙套管、翼环和穿墙孔洞的自动建模方法及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116186867A true CN116186867A (zh) | 2023-05-30 |
CN116186867B CN116186867B (zh) | 2023-07-25 |
Family
ID=86436856
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310464454.3A Active CN116186867B (zh) | 2023-04-27 | 2023-04-27 | 管道穿墙套管、翼环和穿墙孔洞的自动建模方法及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116186867B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117131582A (zh) * | 2023-10-27 | 2023-11-28 | 北京市第三建筑工程有限公司 | 一种复杂基坑工程模型的快速构建方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180225408A1 (en) * | 2017-02-03 | 2018-08-09 | Ignitor Labs, LLC | System and method for interactive modeling and analysis of 3-d digital assemblies |
CN113360965A (zh) * | 2020-03-06 | 2021-09-07 | 上海大学 | 一种基于Revit的装配式剪力墙自动建模的方法及系统 |
US20220198085A1 (en) * | 2019-04-15 | 2022-06-23 | Fastbrick Ip Pty Ltd | Method and system for designing block layouts for use in block placement during construction |
CN115198878A (zh) * | 2022-07-07 | 2022-10-18 | 广州同程建筑技术有限公司 | 一种环保墙体装配式建筑物及其施工方法 |
CN115525952A (zh) * | 2022-10-08 | 2022-12-27 | 中国电建集团成都勘测设计研究院有限公司 | 一种管道支吊架模型设计的正向构建方法 |
-
2023
- 2023-04-27 CN CN202310464454.3A patent/CN116186867B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180225408A1 (en) * | 2017-02-03 | 2018-08-09 | Ignitor Labs, LLC | System and method for interactive modeling and analysis of 3-d digital assemblies |
US20220198085A1 (en) * | 2019-04-15 | 2022-06-23 | Fastbrick Ip Pty Ltd | Method and system for designing block layouts for use in block placement during construction |
CN113360965A (zh) * | 2020-03-06 | 2021-09-07 | 上海大学 | 一种基于Revit的装配式剪力墙自动建模的方法及系统 |
CN115198878A (zh) * | 2022-07-07 | 2022-10-18 | 广州同程建筑技术有限公司 | 一种环保墙体装配式建筑物及其施工方法 |
CN115525952A (zh) * | 2022-10-08 | 2022-12-27 | 中国电建集团成都勘测设计研究院有限公司 | 一种管道支吊架模型设计的正向构建方法 |
Non-Patent Citations (3)
Title |
---|
YIQUN ZHANG 等: "Research on masonry structure layout design based on BIM technology", 《2018 INTERNATIONAL CONFERENCE ON ADVANCED MECHATRONIC SYSTEMS (ICAMECHS)》, pages 1 - 8 * |
赵强 等: "基于Revit的二次开发在给排水管道优化中的研究", 《安徽建筑大学学报》, vol. 29, no. 3, pages 72 - 78 * |
陆小玲 等: "大直径管道顶管内穿管过路施工技术", 《建筑施工》, vol. 42, no. 7, pages 1269 - 1271 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117131582A (zh) * | 2023-10-27 | 2023-11-28 | 北京市第三建筑工程有限公司 | 一种复杂基坑工程模型的快速构建方法及系统 |
CN117131582B (zh) * | 2023-10-27 | 2024-02-23 | 北京市第三建筑工程有限公司 | 一种复杂基坑工程模型的快速构建方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN116186867B (zh) | 2023-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109359351B (zh) | 一种管道三维建模方法及管道设计方法 | |
CN110826130B (zh) | Bim建模在异形曲面结构形体设计建造中的使用方法 | |
CN116186867B (zh) | 管道穿墙套管、翼环和穿墙孔洞的自动建模方法及终端 | |
CN110851956B (zh) | 一种建设工程管道施工定位信息自动化计算、标注及出图方法 | |
CN104216283B (zh) | 飞机导管加工文件快速生成方法 | |
CN108595800B (zh) | 一种网壳结构建模方法 | |
CN115525952A (zh) | 一种管道支吊架模型设计的正向构建方法 | |
CN115048704B (zh) | 基于Revit的桥梁下部结构建模方法、系统及装置 | |
CN115481515A (zh) | 基于Revit和Dynamo的排水管网模型创建方法 | |
CN105975650A (zh) | 一种夹具结构智能设计方法 | |
CN104143215B (zh) | 索膜结构的信息化模型设计方法 | |
CN114091190B (zh) | 一种结构管相贯线的自动化出图处理方法 | |
CN105022896A (zh) | 一种基于动态编号的apdl建模方法及装置 | |
CN113408042B (zh) | 基于bim的盾构管片参数化图纸生成方法及系统 | |
CN115577865A (zh) | 一种用于制剂工艺的生产房间布局优化方法及装置 | |
CN114970305A (zh) | 一种磁控软体机器人磁性颗粒分布的预测方法 | |
CN113674294A (zh) | 一种3d模型切片处理方法及装置 | |
CN110162897B (zh) | 一种大口径弯管加热导磁体优化方法 | |
CN115270250B (zh) | 基于bim的基础大样详图的自动校审方法、系统及介质 | |
CN113160415B (zh) | 基于三维视觉信息的网格结构工件焊缝定位方法及系统 | |
CN114593738B (zh) | 基于八叉树搜索反光柱的机器人全局定位方法及系统 | |
CN117216836B (zh) | 一种基于Dynamo的闸门设备批量建模方法 | |
Austern et al. | Rationalization and Optimization of Concrete Façade Panels | |
CN111324921B (zh) | 一种基于Grasshopper的空间圆钢管相贯焊节点参数化建模方法 | |
CN113656921B (zh) | 基于pdms平台的三维软管管件生成方法及装置 |
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 |