CN115982814A - 基于bim的楼板轮廓数据转换、楼板拆分和合并的方法 - Google Patents
基于bim的楼板轮廓数据转换、楼板拆分和合并的方法 Download PDFInfo
- Publication number
- CN115982814A CN115982814A CN202211676326.7A CN202211676326A CN115982814A CN 115982814 A CN115982814 A CN 115982814A CN 202211676326 A CN202211676326 A CN 202211676326A CN 115982814 A CN115982814 A CN 115982814A
- Authority
- CN
- China
- Prior art keywords
- curve
- floor slab
- end point
- floor
- line
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 54
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 19
- 238000005452 bending Methods 0.000 claims abstract description 8
- 238000003491 array Methods 0.000 claims description 18
- 238000012163 sequencing technique Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 3
- 238000003860 storage Methods 0.000 claims description 2
- 238000011550 data transformation method Methods 0.000 claims 1
- 238000013461 design Methods 0.000 abstract description 4
- 238000005215 recombination Methods 0.000 abstract description 2
- 230000006798 recombination Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 12
- 230000011218 segmentation Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000004080 punching Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- 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
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Landscapes
- Processing Or Creating Images (AREA)
Abstract
本发明涉及建筑工程设计技术领域,特别是基于BIM的楼板轮廓数据转换、楼板拆分和合并的方法。基于BIM的楼板轮廓数据转换方法,步骤包括:S1获取BIM软件中代表楼板轮廓的多段线数组,多段线数组中的数据包括曲线的端点坐标、代表曲线方向的端点索引以及用于控制曲线弯曲的控制点坐标;曲线的两个端点坐标分别用不同的端点索引代表起始点和末尾点;S2将多段线数组进行曲线方向的调整,获取调整方向后的多段线数组,然后对多段线数组中的曲线按端点连接顺序进行排序后可用于提取楼板轮廓,用于生成分割楼板的分割线或者合并楼板。该方法在BIM软件中对平面几何轮廓进行数据重组,从而可以快捷地生成楼板的轮廓线、对楼板进行切割和合并。
Description
技术领域
本发明涉及建筑工程设计技术领域,特别是涉及基于BIM的楼板轮廓数据转换、楼板拆分和合并的方法。
背景技术
BIM(Building Information Modeling)已经成为建筑业数字化发展的主要技术措施,建筑相关企业在自身业务需求的基础上,不断探索和发展BIM技术,以进一步促进自身业务发展。BIM具有三维可视化,协调性,模拟性,优化性和可出图性等特点。BIM中的所有结构构件都是三维实体,提供的信息量完整,且三维显示直观并可实时观察,BIM的全面应用将大大提高建筑工程的信息化程度,对建筑业科技进步产生巨大影响。
在当前的建筑工程设计中,墙体、柱子、梁、洞口等构件都会与楼板有交接关系,因此需要对楼板进行开洞、局部降板、切分和合并等操作。现有技术中通过BIM软件(例如Autodesk Revit)对楼板进行开洞、局部降板、切分、合并操作依赖于设计师手工绘制,原因在于BIM软件编辑对象的数据特点,无法直接对楼板进行开洞、切割等操作,例如,如果要提取楼板轮廓,需要逐个获取每个楼板边线,如果楼板轮廓处对象较多,不连续的曲线对象不能一次性选中,编辑繁琐且易出错;如果要分割楼板,设计师需要将楼板复制两份,然后在每一个楼板中进行编辑删除不需要的部分,当模型很大时,此操作容易卡顿,易出错且不方便定位;如果要合并多个楼板对象,需要进入一个楼板的编辑状态,然后手动拾取其它楼板的轮廓,然后对轮廓进行交接处理,使得楼板轮廓闭合,完成合并楼板操作,如果楼板中有大量洞口,还需要逐个拾取洞口边界,创建楼板洞口,操作繁琐且易出错。
发明内容
本发明针对在BIM软件中提取楼板轮廓、分割楼板、合并多个楼板的手工绘制过程操作繁琐且易出错的问题,基于BIM软件进行了二次开发,提出了基于BIM的楼板轮廓数据转换、楼板拆分和合并的方法,只要采用本发明的方法将BIM的楼板轮廓数据进行转换,就可以根据转换后的数据实现楼板的轮廓提取,并基于提取的轮廓完成楼板的分割和合并。
为了实现上述发明目的,本发明提供了以下技术方案:
基于BIM的楼板轮廓数据转换方法,包括以下步骤:
S1,获取BIM软件中代表楼板轮廓的多段线数组,所述多段线数组中的数据包括曲线的端点坐标、代表曲线方向的端点索引以及用于控制曲线弯曲的控制点坐标;曲线的两个端点坐标分别用不同的端点索引代表起始点和末尾点;
S2,将所述多段线数组进行曲线方向的调整,获取调整方向后的多段线数组,然后对多段线数组中的曲线按端点连接顺序进行排序后可用于提取楼板轮廓,用于生成分割楼板的分割线或者合并楼板。
作为优选方案,将所述多段线数组进行曲线方向的调整,获取调整方向后的多段线数组,包括以下步骤:
根据所述多段线数组中的数据判断所述楼板轮廓是否为闭合且连续,若是,则选取所述楼板轮廓中任意一段曲线为起始曲线,根据多段线数组中的数据,依次判断相接的下一段曲线的起始点和末尾点指向的方向与相接的上一段曲线的起始点和末尾点指向的方向是否一致,若不一致,则翻转相接的下一段曲线的端点索引,若一致,则保持相接的下一段曲线的端点索引不变,得到排序后的多段线数组,使得排序后的多段线数组中的端点坐标代表的各段线首尾连接。
作为优选方案,组成所述楼板轮廓的线包括:直线、圆弧、螺旋线、椭圆线、赫尔米特曲线或Nurbs曲线构成的连续曲线。
作为优选方案,判断所述楼板轮廓是否为闭合且连续,包括以下步骤:
判断所述楼板轮廓是单条线、两条线还是大于两条线;
单条线的情况下,则单条线连续,根据BIM软件中曲线的IsBound属性,判断所述单条线是否为无界,无界则为闭合曲线,所述楼板轮廓为闭合且连续;
两条线和大于两条线的情况下,首先,计算当前线的相交标识数,相交标识数M=1+Q,其中,Q是其他线与当前线相交的数量;
其次,
两条线的情况下,若每条线的相交标识等于2;并且其中一条线的端点坐标也是另一条线的端点坐标,则两条线连续且闭合;所述楼板轮廓为闭合且连续;
大于两条线的情况下,若每条线的相交标识等于3,并且每条线的端点坐标分别和其他线的端点坐标重叠,所述楼板轮廓为闭合且连续。
进一步地,若所述楼板轮廓为非闭合的,并且是连续的,则所述楼板轮廓为不闭合分割线,对代表不闭合分割线的多段线数组进行排序,使得排序后的不闭合分割线多段线数组用于楼板的切分,具体包括以下步骤:
N=1时,无需调整曲线方向,N为分割线中曲线的数量;
N=2时,比较两条曲线的端点索引,若连接点的端点索引既是其中一条曲线的起始点索引,又是另一条曲线的末尾点索引,则两条曲线方向是一致的,无需调整曲线的方向,否则翻转任意一条曲线的端点索引,使两条曲线方向一致,按照索引方向对两个曲线的端点坐标依次排序;
N≥3时,首先遍历所述不闭合分割线中的每条曲线,计算每条曲线的相交标识M,M=1+Q,其中,Q是其他线与当前线相交的数量,以M=2对应的曲线为起始曲线,对M=2的曲线的端点再次进行是否与其他曲线相交的判断,将M=2的线中和其他曲线的端点无交点的端点确定为不闭合分割线的起始点,然后以不闭合分割线的起始点所在的线为不闭合分割线的起始曲线,依次判断相接的下一段曲线的端点索引指向的方向是否与相接的上一段曲线的端点索引指向的方向一致,如果方向不一致,则翻转相接的下一段曲线的端点索引,如果方向一致,则保持端点索引不变,使得排序后的不闭合分割线多段线数组中端点坐标按连接顺序依次连接后用于画出分割线。
基于相同的构思,还提出了一种基于BIM的楼板拆分方法,采用上述任一所述的一种基于BIM的楼板轮廓数据转换方法将BIM中的楼板轮廓的多段线数组进行曲线方向的调整,转换为排序后的楼板轮廓多段线数组,并根据所述排序后的楼板轮廓多段线数组转换得到平面几何图形;
在所述排序后的楼板轮廓多段线数组代表的平面几何图形轮廓范围内创建代表洞口的多段线数组,同时对所述代表洞口的多段线数组进行排序,基于排序后的洞口多段线数组创建洞口楼板。
作为优选方案,若所述排序后的楼板轮廓多段线数组中包括两个或两个以上闭合且连续的楼板多段线数组,则判断其中一个闭合且连续的楼板多段线数组的端点坐标是否全部落入另一个闭合且连续的楼板多段线数组所代表的闭合线之内,若部分落入,则两个闭合且连续的楼板多段线数组属于相交的关系,若全部落入,则两个闭合且连续的楼板多段线数组属于包含的关系;
基于相交关系获取的相交轮廓和基于包含关系获取的被包含的轮廓均是用于创建洞口对象的轮廓。
基于相同的构思,还提出了基于BIM的楼板合并方法,采用上述任一所述的一种基于BIM的楼板轮廓数据转换方法将BIM中的至少两个楼板轮廓的多段线数组进行曲线方向的调整,转换为排序后的楼板多段线数组,
判断其中一个排序后的楼板多段线数组的端点坐标是否部分落入另一个排序后的楼板多段线数组所代表的闭合线之内,若部分落入,则两个排序后的楼板多段线数组属于相交的关系;
将属于相交的关系两个排序后的楼板多段线数组中的数据进行合并;求得其中一个排序后的楼板多段线数组在另一个排序后的楼板多段线数组所代表闭合线内的端点坐标,并将落入的端点坐标删除,得到合并后的楼板轮廓多段线数组,
对所述合并后的楼板轮廓多段线数组中的各曲线端点坐标进行排序,并且根据端点坐标索引调整各曲线的方向,生成排序后的合并楼板数组,使得依次连接所述排序后的合并楼板数组的端点坐标后画出合并楼板的轮廓。
基于相同的构思,还提出了一种数据处理模块,包括轮廓数据获取模块和轮廓数据处理模块;
所述轮廓数据获取模块用于获取BIM软件中代表楼板轮廓的多段线数组,所述多段线数组中的数据包括曲线的端点坐标、代表曲线方向的端点索引以及用于控制曲线弯曲的控制点坐标;曲线的两个端点坐标分别用不同的端点索引代表起始点和末尾点;
所述轮廓数据处理模块用于将所述多段线数组进行曲线方向的调整,获取调整方向后的多段线数组,然后对多段线数组中的曲线按端点连接顺序进行排序后可用于提取楼板轮廓,用于生成分割楼板的分割线或者合并楼板。
基于相同的构思,还提出了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一项所述的基于BIM的楼板轮廓数据转换方法。
与现有技术相比,本发明的有益效果:
该方法实现了在BIM软件中对面和线进行数据重组,构建方向一致且闭合连续的多段线组数据,从而可以快捷地生成楼板的轮廓线、对楼板进行切割和合并。
附图说明
图1为实施例1中基于BIM的楼板轮廓数据转换方法的流程图;
图2为实施例1中将多个曲线构成多段线组的示意图;
图3为实施例1中原始楼板、获取楼板顶面和获取顶面轮廓线的示意图;
图4为实施例1中多段线组里直线段数据和图形的对应关系以及Nurbs曲线控制点和图像的对应关系;
图5为实施例1中赫尔米特曲线和Nurbs曲线的不同控制方式的示意图;
图6为实施例1中原始端点索引不一致调整为翻转曲线索引的示意图;
图7为实施例1中特殊情况、非闭合曲线组和闭合曲线组的示例;
图8为实施例1中开放分割线的多段线数组分割楼板的示意图;
图9为实施例2中楼板轮廓列表的示意图;
图10为实施例2中单个路径生成的示意图;
图11为实施例2中的闭合多段曲线组和楼板的关系为分离、相交和包含的示意图;
图12为实施例2中基于相交和包含关系生成洞口对象的示意图;
图13为实施例3中的楼板合并操作的示意图;
图14为实施例4中闭合墙体分割楼板的示意图。
具体实施方式
下面结合实施例及具体实施方式对本发明作进一步的详细描述。但不应将此理解为本发明上述主题的范围仅限于以下的实施例,凡基于本发明内容所实现的技术均属于本发明的范围。
实施例1
基于BIM的楼板轮廓数据转换方法,流程图如图1所示,包括以下步骤:
S1,获取BIM软件中代表楼板轮廓的多段线数组。在BIM软件中选取楼板,获取BIM软件中楼板轮廓,楼板轮廓是一个多段线组,后续将多线段组作为整体进行后续步骤的处理。所述楼板轮廓包括组成轮廓的曲线,组成轮廓的曲线后台有相应的多段线数组,多段线数组中的数据包括曲线的端点坐标、代表曲线方向的端点索引以及用于控制曲线弯曲的控制点坐标;一段曲线的两个端点坐标分别用不同的端点索引代表起始点和末尾点。
组成所述楼板轮廓的线包括:直线、圆弧、螺旋线、椭圆线、赫尔米特曲线或Nurbs曲线构成的连续曲线,不成组一次只能选中一条,连续曲线组可以整体选中。图2中展示多个曲线构成多段线组的示意图。
S2,将多段线数组进行曲线方向的调整,获取调整方向后的多段线数组,然后对多段线数组中的曲线按端点连接顺序进行排序后可用于提取楼板轮廓,用于生成分割楼板的分割线或者合并楼板。
作为优选方案,将多段线数组进行曲线方向的调整,获取调整方向后的多段线数组包括以下步骤:
根据所述多段线数组中的数据判断所述楼板轮廓是否为闭合且连续,若是,则选取所述楼板轮廓中任意一段曲线为起始曲线,根据多段线数组中的数据,依次判断相接的下一段曲线的起始点和末尾点指向的方向与相接的上一段曲线的起始点和末尾点指向的方向是否一致,若不一致,则翻转相接的下一段曲线的端点索引,若一致,则保持相接的下一段曲线的端点索引不变,得到排序后的多段线数组,使得排序后的多段线数组中的端点坐标代表的各段线首尾连接。
以楼板为例对步骤S2进行说明:
Revit(Autodesk Revit是BIM软件中的一种,本发明以Autodesk Revit为例对技术方案进行说明,但是并不限定本发明只能用Autodesk Revit软件实现,凡基于本发明的构思,在BIM软件中形成的技术方案,均在本发明的保护范围之内)中的楼板是一个平行多面体,楼板几何信息包含面和边,也有局部突起的复杂楼板,对于常规楼板提取的是轮廓线,复杂楼板的轮廓包含折边。楼板的边数据包含所有边的数据,直接提取轮廓线相对困难,因此采用获取楼板顶面后再获取楼板轮廓信息,楼板轮廓信息包括组成楼板轮廓的曲线,所述曲线的数据包括曲线的端点坐标、代表曲线方向的端点索引以及用于控制曲线弯曲的控制点坐标。图3中展示了原始楼板、获取楼板顶面和获取顶面轮廓线的示意图。Revit进行方案设计过程中,常规方法逐个获取楼板边线,获取的楼板边线不成组,不方便选择,因此,获取楼板轮廓信息后,后台将不同类型的曲线端点坐标在软件中按照预设方向依次排序成组,并且以当前时间为前缀进行命名(如:20221117_组1),生成组后方便对组进行编辑,便于创建和楼板轮廓相关的组件,如栏杆、墙体等;用时间作为前缀方便配合提取,便于回溯设计配合时间。BIM软件中,楼板边线在后台存储形式为多段线数组,多段线数组里存储的是点数据,对于直线段来说,对应存储的是直线段的两个端点坐标P1(x1,y1,z1)和P2(x2,y2,z2),以及指代直线段方向的P1和P2的端点索引;多段线数组里直线段数据和图形的对应关系如图4的上半部分所示。Nurbs曲线控制点和图像的对应关系如图4的下半部分所示,对于曲线来说,对应存储的是曲线的两个端点坐标P3(x3,y3,z3)和P4(x4,y4,z4)和控制点坐标P5(x5,y5,z5),以及指代曲线方向的P3和P4的端点索引。控制点坐标P5(x5,y5,z5)用于控制弯曲,图5中展示了赫尔米特曲线和Nurbs曲线的不同控制方式,其中P1、P2代表赫尔米特曲线的端点,T1和T2分别代表端点P1和P2处的切线方向。步骤S2本质上就是在BIM软件中将代表楼板边线的多段线数组进行曲线方向调整,获取调整方向后的多段线数组,然后对多段线数组中的曲线按端点连接顺序进行排序,排序后的多段线数组可用于提取楼板轮廓,用于后续在显示界面画出楼板轮廓,用于生成分割楼板的分割线,创建楼板洞口以及在显示界面画出合并楼板。
基于楼板轮廓信息生成的排序后的多段线数组在界面显示为多段线组,在后台的数据库中是成组的端点坐标来指代的,但是仅有端点坐标,计算机后台并不知道这些点如何构成几何图形,因此,多段线数组中除了端点坐标还需要指代方向的参数,在多段线数组中还存储了每个端点坐标对应的索引,例如索引为0或1,若端点索引是0,则说明该端点是起始点,若端点索引是1,则说明该端点是末尾点,每条线都有0和1两个索引。
对于闭合曲线,可能存在首尾依次连接的各直线或曲线方向不一致的情况,因此需要对相邻的相交线的首尾点加以区分,如果相交线的末点和首条线的末点相交,则第二条线须翻转方向,交换端点索引,以此方法依次查找所有曲线,对于直线段,交换首尾点的索引即可,对于Nurbs曲线等复杂曲线需反转所有控制点顺序,使其首尾点索引顺序和曲线连接顺序相对应,原始端点索引不一致调整为翻转逆向曲线索引的示意图如图6所示。
判断所述楼板轮廓是否为闭合且连续,包括以下步骤:
判断所述楼板轮廓是单条线、两条线还是大于两条线;
若是单条线,则单条线连续,根据BIM软件中曲线的IsBound属性,判断所述单条线是否为有界线,是有界线则为开放线,无界则为闭合曲线,所述所述楼板轮廓为闭合且连续;
两条线和大于两条线的情况下,首先计算当前线的相交标识数,相交标识数M=1+Q,其中,Q是其他线与当前线相交的数量;
其次,若是两条线,若每条线的标识等于2,则两条线相交;如果其中一条线的两个端点坐标也是另一条线的端点坐标,则两条线连续且闭合;通过判断单个线与所有线的交相交关系,得到当前线的标识,所述楼板轮廓为闭合且连续;
若大于两条线,且每条线的标识等于3,并且每条线的端点坐标分别和其他线的端点坐标重叠,所述楼板轮廓为闭合且连续。
判断楼板轮廓是否为闭合且连续,是根据楼板轮廓对应的多段线数组进行判断的,更为具体的解释如下:
所述楼板轮廓的状态有开放(开放即不闭合)与闭合两种情况,针对开放的楼板轮廓,是用于对楼板进行分割操作,针对闭合的楼板轮廓,是用于对楼板生成洞口对象或者是用于合并楼板,对于开放与闭合这两种轮廓的分割逻辑是不同的,所以需要对获取的楼板轮廓是否闭合进行判断。针对Revit自身的图元,根据几何连接关系以及线与线之间的相交关系得到轮廓是否为闭合。
特殊情况、非闭合曲线组和闭合曲线组的示例如图7所示。以图7为例,对楼板轮廓中是否为闭合且连续进行说明:
相交标识是当前线和曲线组里所有线相交个数的值,该方法通过判断单个线与所有线的交相交关系,得到当前线的相交标识M,相交标识数M=1+Q,其中,Q是其他线与当前线相交的数量,当前线有一条相交线则相交标识M为2,有两条相交线则相交标识M为3,以此类推。将相交标识存在标识列表中,通过线的标识列表进而得到轮廓是否为闭合。首先针对轮廓内的每条曲线,计算该曲线的相交标识。对多段线组分单条曲线、两条线组合、三条线组合三类进行分析,之所以分三类是因为该标识法针对单条线、两条线组合这两种特殊情况无法判断,需要分类并增加判定方法。
当有一条线时,曲线一定连续,所以只需判断其是否闭合,如图7中的示例1所示,计算曲线相交标识时,曲线只和自身相交,不管曲线是否闭合曲线M为1,所以需要特殊处理。Revit中对于曲线分为有界和无界曲线。有界曲线的端点由点确定,无界曲线上的点由向量确定。针对单条线,根据Revit中该单条线的IsBound属性得到其是否为有界线,有界则为开放线,无界则为闭合曲线。
当有两条线时,如图7中的例1所示,曲线除了与自身相交,还与另外一条线相交,所以每条线的相交标识M为2,通过标识无法判断曲线是否闭合。因此对于两条线的曲线组,通过统计其端点物理位置的个数,如果有四个则两个曲线不连续,如果有三个则曲线连续不闭合,如果有两个则曲线连续闭合。
对于三条及以上线组合,轮廓中线的总条数数量为N。如果相交标识2有两个且其他均为标识3,即M_2=2且M_3=N-2,如图7中的示例2所示,如果轮廓内包含一个或多个其他闭合轮廓,则会出现误判。因此在线的相交标识的基础上增加了连续性判断,指定一个连续线判断标识C,初始值为1。从标识为2的任意一个线开始查找和它相交的曲线,找到后C增加1,依次类推,如果C=N则曲线连续,如果C递增为一个定值且C<N,则曲线不连续。
若所述楼板轮廓为非闭合的,并且是连续的,则该楼板轮廓代表不闭合分割线,对所述不闭合分割线中的多段线数组进行排序,排序步骤包括:
不闭合分割线中曲线的数量为K,K=1时无需排序;K=2时,比较两条线连接的端点的索引,若连接的端点的索引是其中一条线的起始点索引,又是另一条线的末尾点索引,则两条线方向是一致的,无需排序,否则翻转任意一条线使两条线方向一致,完成排序;
K≥3时,首先遍历非闭合且连续的分割线中的每条线,计算每条线的相交标识M,所述相交标识M用于代表与当前线相交的相交线的数量,M=2对应的线为起始线,对M=2的线的端点再次进行是否与其他线相交的判断,将M=2的线的端点和其他线端头点无交点的端点确定为分割线的起始点,然后以分割线的起始点为起点,获取以M=2的线的方向与其相交的下一条线,并判断与下一条线相交的相交点的索引,若下一条线的索引指代的方向与M=2的线的方向不同,则对下一条线的端点索引进行翻转,若方向相同,则保持下一条线的端点索引不变,继续依次完成各条线的排序。
通过开放分割线(也叫不闭合分割线)的多段线数组分割楼板的示意图如图8所示,首先查找开放分割线和楼板轮廓线的相交关系,得到相交曲线及其交点,通过交点将曲线切分为两部分或三部分,进而得到楼板轮廓内的分割曲线数组和分割线两侧的楼板轮廓数组,通过内部分割曲线数组和两侧楼板轮廓数组组合得到两个楼板的组合轮廓数组,采用对闭合且连续曲线对应的多段线数组进行排序的方法对新得到的两个楼板的组合轮廓数组进行排序,最后通过楼板轮廓组创建新的楼板。
实施例2
基于BIM的楼板拆分方法,包括以下步骤:
首先,采用实施例1中的步骤S1~S2将BIM中的楼板轮廓的多段线数组进行曲线方向的调整,转换为排序后的楼板轮廓多段线数组,并根据所述排序后的楼板轮廓多段线数组转换得到平面几何图形;
其次,在所述排序后的楼板轮廓多段线数组转换得到平面几何图形轮廓范围内创建代表洞口洞口多段线数组,并对洞口多段线数组进行排序,排序后的洞口多段线数组代表从楼板中拆分出的洞口对象,基于所述排序后的洞口多段线数组创建洞口楼板。
创建代表洞口的排序后的洞口多段线数组的步骤是,在排序后的楼板多段线数组代表的平面几何图形轮廓范围内获取洞口各线段的端点坐标,并且调整索引使各线段的方向一致。
生成楼板洞口对象的方法如下:
待分割的楼板为平面楼板,楼板轮廓中包含原始楼板洞口和最外侧轮廓线,所以内部洞口的所有点在外侧轮廓内。首先获取楼板上的所有轮廓列表,轮廓列表由多个闭合轮廓构成,一个轮廓对应一个多段线数组,轮廓列表中存储了多个轮廓的多段线数组,并且列表中每个闭合轮廓由多个首尾相接的曲线构成。将轮廓列表中的每条曲线上的所有点加入路径列表,每个路径列表是一个闭合轮廓中所有线段的首尾点的列表,表示按路径列表的顺序将点连接起来就能得到平面几何图形,所以通过路径列表将点按照排序依次链接,就构成了单个平面几何图形,遍历每个平面几何图形判断当前图形与其他图形的包含关系,得到最外侧轮廓,最外侧轮廓内其他几何图形对应的路径列表则对应洞口的轮廓。楼板轮廓列表的示意图如图9所示,单个路径生成的示意图如图10所示。
提取到洞口轮廓之后,并没有得到楼板洞口对象,因为楼板洞口与楼板之间相互关系可能是相交或包含,基于相交和包含的关系,洞口对象的生成还有其他步骤。
如图11所示,闭合多段曲线组和楼板的关系有三种,分离、相交和包含。通过将分割线和楼板外侧轮廓线分别转换为点构成的平面路径,然后通过平面几何方法得到其位置关系,排除掉不符合分割要求的分离情况,如图11示例1所示。对于包含关系,根据提取到的洞口轮廓就可以直接创建洞口对象,对于相交的关系,则首选获取相交线的端点坐标,然后删除没有落入楼板范围的坐标点,将剩下的的坐标点与相交线的端点坐标按照同一方向依次连接,得到洞口轮廓,创建洞口对象不会改变原始楼板。基于相交关系获取的相交轮廓和基于包含关系获取的被包含的轮廓均是用于创建洞口对象的轮廓。将剩下的坐标点与相交线的端点坐标按照同一方向依次连接的实现方法与实施例1中对闭合且连续曲线对应的多段线数组进行排序的方法相同。
进一步的,还包括生成洞口内楼板对象,基于相交和包含关系生成洞口对象的示意图如图12所示。
对于相交情况,先将分割线和楼板外侧轮廓线转换为有序点集构造成路径对象,然后求得两个路径的交集,在将交集对应的有序点集转换为有序线段,最后生成洞口区域楼板。对于楼板轮廓包含分割曲线的情况,直接用洞口轮廓创建楼板即可。
实施例3
基于BIM的楼板合并方法,包括以下步骤:
采用实施例1中的步骤S1~S2将BIM中的至少两个楼板轮廓的多段线数组进行曲线方向的调整,转换为排序后的楼板多段线数组,
则判断其中一个排序一致的楼板多段线数组的端点坐标是否部分落入另一个排序一致的楼板多段线数组所代表的闭合线之内,若部分落入,则两个排序一致的楼板多段线数组属于相交的关系。
将属于相交的关系两个排序后的楼板多段线数组中的数据进行合并;求得其中一个排序后的楼板多段线数组在另一个排序后的楼板多段线数组所代表闭合线内的端点坐标,并将落入的端点坐标删除,得到合并后的楼板轮廓多段线数组,
对所述合并后的楼板轮廓多段线数组中的各曲线端点坐标进行排序,并且根据端点坐标索引调整各曲线的方向,生成排序后的合并楼板数组,使得依次连接所述排序后的合并楼板数组的端点坐标后画出合并楼板的轮廓。楼板合并操作的示意图如图13所示。
实施例4
基于相同的构思,还提出了闭合墙体分割楼板的方法,图14给出了闭合墙体分割楼板的示意图:
首先,采用实施例1中的步骤S1~S2将墙体线转换为排序后的楼板多段线数组,获取闭合墙体围合空间的内外侧轮廓线。
通过选择的闭合墙体创建墙体内部空间的房间对象,通过该对象得到房间的内部轮廓数据,作为降板区域的轮廓,读取选择墙体的厚度数据,作为求外侧轮廓线的依据。将内测轮廓线中的曲线和墙体进行匹配,根据不同的墙体厚度对每段曲线做外偏移,通过所有偏移后的曲线得到外侧轮廓,作为楼板上洞口对象的依据,如图14中示例1所示。
其次,创建外侧轮廓对应洞口区域和内测轮廓对应楼板。
创建外侧轮廓线对应的洞口对象,这样房间对应的墙体会自动附着到结构楼板,满足建筑剖面制图要求。然后创建房间内部楼板,并指定相应标高,得到满足要求的房间降板,如图14中示例2所示。
本专利方法可以快速生成楼板轮廓并生成排序后的楼板轮廓点集,帮助用户处理复杂楼板轮廓或快速创建楼板轮廓投影线。通常设计师在创建和楼板轮廓关联的模型时,需要逐个获取每个楼板边线,如果楼板轮廓处对象较多,不连续的曲线对象不能一次性选中,编辑繁琐且易出错,使用楼板轮廓功能,设计师可快速获取目标楼板的轮廓线,进入组内进行相应的偏移或生成对象操作,避免了在多个对象中选择轮廓线的麻烦;
本专利方法可快速生成楼板分割,并且以洞口对象和局部降板的方式呈现,方便设计师和其他专业配合调整。通常在设计过程中,如果要分割楼板,设计师需要将楼板复制两份,然后在每一个楼板中进行编辑删除不需要的部分,当模型很大时,此操作容易卡顿,易出错且不方便定位。利用本专利的方法,只需绘制好分割线,执行命令后即可得到拆分好的楼板,方便、快速、准确。且本专利的方法将之前楼板中的洞口均转换为楼板洞口对象,方便后续配合调整;
本专利方法可快速合并多个楼板,简化繁琐操作,节省时间。常规要合并多个楼板对象,需要进入一个楼板的编辑状态,然后手动拾取其它楼板的轮廓,然后对轮廓进行交接处理,使得楼板轮廓闭合,完成合并楼板操作,如果楼板中有大量洞口,还需要逐个拾取洞口边界,创建楼板洞口,操作繁琐且易出错。使用本专利方法合并楼板方法,选择要合并的楼板即可得到合并后的楼板,且同时处理楼板上的洞口,将其转换为洞口对象,方便快速,节省时间。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.基于BIM的楼板轮廓数据转换方法,其特征在于,包括以下步骤:
S1,获取BIM软件中代表楼板轮廓的多段线数组,所述多段线数组中的数据包括曲线的端点坐标、代表曲线方向的端点索引以及用于控制曲线弯曲的控制点坐标;曲线的两个端点坐标分别用不同的端点索引代表起始点和末尾点;
S2,将所述多段线数组进行曲线方向的调整,获取调整方向后的多段线数组,然后对多段线数组中的曲线按端点连接顺序进行排序后可用于提取楼板轮廓,用于生成分割楼板的分割线或者合并楼板。
2.如权利要求1所述的一种基于BIM的楼板轮廓数据转换方法,其特征在于,将所述多段线数组进行曲线方向的调整,获取调整方向后的多段线数组,包括以下步骤:
根据所述多段线数组中的数据判断所述楼板轮廓是否为闭合且连续,若是,则选取所述楼板轮廓中任意一段曲线为起始曲线,根据多段线数组中的数据,依次判断相接的下一段曲线的起始点和末尾点指向的方向与相接的上一段曲线的起始点和末尾点指向的方向是否一致,若不一致,则翻转相接的下一段曲线的端点索引,若一致,则保持相接的下一段曲线的端点索引不变,得到排序后的多段线数组,使得排序后的多段线数组中的端点坐标代表的各段线首尾连接。
3.如权利要求1所述的一种基于BIM的楼板轮廓数据转换方法,其特征在于,组成所述楼板轮廓的线包括:直线、圆弧、螺旋线、椭圆线、赫尔米特曲线或Nurbs曲线构成的连续曲线。
4.如权利要求2所述的一种基于BIM的楼板轮廓数据转换方法,其特征在于,判断所述楼板轮廓是否为闭合且连续,包括以下步骤:
判断所述楼板轮廓是单条线、两条线还是大于两条线;
单条线的情况下,则单条线连续,根据BIM软件中曲线的IsBound属性,判断所述单条线是否为无界,无界则为闭合曲线,所述楼板轮廓为闭合且连续;
两条线和大于两条线的情况下,首先,计算当前线的相交标识数,相交标识数M=1+Q,其中,Q是其他线与当前线相交的数量;
其次,
两条线的情况下,若每条线的相交标识等于2;并且其中一条线的端点坐标也是另一条线的端点坐标,则两条线连续且闭合;所述楼板轮廓为闭合且连续;
大于两条线的情况下,若每条线的相交标识等于3,并且每条线的端点坐标分别和其他线的端点坐标重叠,所述楼板轮廓为闭合且连续。
5.如权利要求1所述的一种基于BIM的楼板轮廓数据转换方法,其特征在于,若所述楼板轮廓为非闭合的,并且是连续的,则所述楼板轮廓为不闭合分割线,对代表不闭合分割线的多段线数组进行排序,使得排序后的不闭合分割线多段线数组用于楼板的切分,具体包括以下步骤:
N=1时,无需调整曲线方向,N为分割线中曲线的数量;
N=2时,比较两条曲线的端点索引,若连接点的端点索引既是其中一条曲线的起始点索引,又是另一条曲线的末尾点索引,则两条曲线方向是一致的,无需调整曲线的方向,否则翻转任意一条曲线的端点索引,使两条曲线方向一致,按照索引方向对两个曲线的端点坐标依次排序;
N≥3时,首先遍历所述不闭合分割线中的每条曲线,计算每条曲线的相交标识M,M=1+Q,其中,Q是其他线与当前线相交的数量,以M=2对应的曲线为起始曲线,对M=2的曲线的端点再次进行是否与其他曲线相交的判断,将M=2的线中和其他曲线的端点无交点的端点确定为不闭合分割线的起始点,然后以不闭合分割线的起始点所在的线为不闭合分割线的起始曲线,依次判断相接的下一段曲线的端点索引指向的方向是否与相接的上一段曲线的端点索引指向的方向一致,如果方向不一致,则翻转相接的下一段曲线的端点索引,如果方向一致,则保持端点索引不变,使得排序后的不闭合分割线多段线数组中端点坐标按连接顺序依次连接后用于画出分割线。
6.基于BIM的楼板拆分方法,其特征在于,采用权利要求1-4任一所述的一种基于BIM的楼板轮廓数据转换方法将BIM中的楼板轮廓的多段线数组进行曲线方向的调整,转换为排序后的楼板轮廓多段线数组,并根据所述排序后的楼板轮廓多段线数组转换得到平面几何图形;
在所述排序后的楼板轮廓多段线数组代表的平面几何图形轮廓范围内创建代表洞口的多段线数组,同时对所述代表洞口的多段线数组进行排序,基于排序后的洞口多段线数组创建楼板。
7.如权利要求6所述的基于BIM的楼板拆分方法,其特征在于,若所述排序后的楼板轮廓多段线数组中包括两个或两个以上闭合且连续的楼板多段线数组,则判断其中一个闭合且连续的楼板多段线数组的端点坐标是否全部落入另一个闭合且连续的楼板多段线数组所代表的闭合线之内,若部分落入,则两个闭合且连续的楼板多段线数组属于相交的关系,若全部落入,则两个闭合且连续的楼板多段线数组属于包含的关系;
基于相交关系获取的相交轮廓和基于包含关系获取的被包含的轮廓均是用于创建洞口对象的轮廓。
8.基于BIM的楼板合并方法,其特征在于,采用权利要求1-4任一所述的一种基于BIM的楼板轮廓数据转换方法将BIM中的至少两个楼板轮廓的多段线数组进行曲线方向的调整,转换为排序后的楼板多段线数组,
判断其中一个排序后的楼板多段线数组的端点坐标是否部分落入另一个排序后的楼板多段线数组所代表的闭合线之内,若部分落入,则两个排序后的楼板多段线数组属于相交的关系;
将属于相交的关系两个排序后的楼板多段线数组中的数据进行合并;求得其中一个排序后的楼板多段线数组在另一个排序后的楼板多段线数组所代表闭合线内的端点坐标,并将落入的端点坐标删除,得到合并后的楼板轮廓多段线数组,
对所述合并后的楼板轮廓多段线数组中的各曲线端点坐标进行排序,并且根据端点坐标索引调整各曲线的方向,生成排序后的合并楼板数组,使得依次连接所述排序后的合并楼板数组的端点坐标后画出合并楼板的轮廓。
9.一种数据处理模块,其特征在于,包括轮廓数据获取模块和轮廓数据处理模块;
所述轮廓数据获取模块用于获取BIM软件中代表楼板轮廓的多段线数组,所述多段线数组中的数据包括曲线的端点坐标、代表曲线方向的端点索引以及用于控制曲线弯曲的控制点坐标;曲线的两个端点坐标分别用不同的端点索引代表起始点和末尾点;
所述轮廓数据处理模块用于将所述多段线数组进行曲线方向的调整,获取调整方向后的多段线数组,然后对多段线数组中的曲线按端点连接顺序进行排序后可用于提取楼板轮廓,用于生成分割楼板的分割线或者合并楼板。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至9任一项所述的基于BIM的楼板轮廓数据转换方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211676326.7A CN115982814A (zh) | 2022-12-26 | 2022-12-26 | 基于bim的楼板轮廓数据转换、楼板拆分和合并的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211676326.7A CN115982814A (zh) | 2022-12-26 | 2022-12-26 | 基于bim的楼板轮廓数据转换、楼板拆分和合并的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115982814A true CN115982814A (zh) | 2023-04-18 |
Family
ID=85969511
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211676326.7A Pending CN115982814A (zh) | 2022-12-26 | 2022-12-26 | 基于bim的楼板轮廓数据转换、楼板拆分和合并的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115982814A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090169113A1 (en) * | 2005-09-21 | 2009-07-02 | Nhega, Llc | Automatic and Semi-Automatic Detection of Planar Shapes from 2D Images |
CN105205198A (zh) * | 2014-06-30 | 2015-12-30 | 上海神机软件有限公司 | 建设工程组合模板全自动智能整体排模系统及方法 |
DE102021107257A1 (de) * | 2021-03-23 | 2022-09-29 | Finn Hinrich Jürjens | Verfahren und Datenverarbeitungsvorrichtung zum Anzeigen einer Vektorgraphik |
CN115203800A (zh) * | 2022-07-15 | 2022-10-18 | 中国建筑西南设计研究院有限公司 | 一种基于几何拓扑关系的边缘构件合并方法 |
-
2022
- 2022-12-26 CN CN202211676326.7A patent/CN115982814A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090169113A1 (en) * | 2005-09-21 | 2009-07-02 | Nhega, Llc | Automatic and Semi-Automatic Detection of Planar Shapes from 2D Images |
CN105205198A (zh) * | 2014-06-30 | 2015-12-30 | 上海神机软件有限公司 | 建设工程组合模板全自动智能整体排模系统及方法 |
DE102021107257A1 (de) * | 2021-03-23 | 2022-09-29 | Finn Hinrich Jürjens | Verfahren und Datenverarbeitungsvorrichtung zum Anzeigen einer Vektorgraphik |
CN115203800A (zh) * | 2022-07-15 | 2022-10-18 | 中国建筑西南设计研究院有限公司 | 一种基于几何拓扑关系的边缘构件合并方法 |
Non-Patent Citations (3)
Title |
---|
HENRIKWEN: "revit 2020 二次开发——在楼板上挖圆形洞(Create circle openning in floor)", pages 1 - 3, Retrieved from the Internet <URL:https://blog.csdn.net/hhhhhhenrik/article/details/105538329> * |
张维锦等: "基于Revit的地下连续墙识别算法研究", 《华东交通大学学报》, vol. 35, no. 03, pages 97 - 103 * |
沈旭涛: "数字建筑不朽之城——议虚拟现实技术在建筑设计领域的应用", 《四川建筑》, no. 03, pages 42 - 43 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109993827B (zh) | 一种将建筑图纸转换为三维bim模型的立面图识别方法 | |
CN110795797B (zh) | 一种mbd模型加工特征识别及信息提取方法 | |
US7492364B2 (en) | System and method for creating and updating a three-dimensional model and creating a related neutral file format | |
CN109191576A (zh) | 一种将建筑图纸转换为三维bim模型的图层分类方法 | |
JP3787743B2 (ja) | 数値解析用メッシュ生成装置 | |
US9171400B2 (en) | Creating a surface from a plurality of 3D curves | |
JPH0756678B2 (ja) | 対話形形状モデリングシステム | |
JP3796658B2 (ja) | 解析モデル作成装置 | |
CN110992490A (zh) | 基于cad建筑平面图自动提取室内地图的方法 | |
JP2001357088A (ja) | パラメトリック機能を有する3次元モデリングシステムと、同システムによるパラメータ編集方法 | |
JPH0658677B2 (ja) | 対話式図形探索置換方法 | |
JPH0883296A (ja) | 三次元形状作成方法及びその装置 | |
US20060267980A1 (en) | CAD method, CAD system and program storage medium storing CAD program thereof | |
CN115222873B (zh) | 一种基于标注和空间语义的三维产权体图属批量关联方法 | |
CN111612911A (zh) | 基于Dynamo的点云BIM自动化建模方法 | |
CN114357596B (zh) | 一种bim构件资源快捷设计方法及系统 | |
CN101727521A (zh) | 用于三维船舶建模零件自动编码的简化属性分析方法 | |
JP2022023010A (ja) | 2点接触曲線による乗り物衝撃解析 | |
CN112464328A (zh) | 基于bim技术和图集的深化设计方法及系统 | |
CN110309553B (zh) | 一种基于标准化桥梁通用图库的图纸快速绘制系统及方法 | |
CN113721969A (zh) | 一种基于多尺度空间矢量数据级联更新方法 | |
JP4092637B2 (ja) | 形状モデル簡略化装置 | |
CN115982814A (zh) | 基于bim的楼板轮廓数据转换、楼板拆分和合并的方法 | |
JP3564371B2 (ja) | 図形編集装置及び方法 | |
JPH06259505A (ja) | 形状簡略化方法 |
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 |