建筑构件的位置关系判定方法、装置、设备及存储介质与流程

文档序号:25351022发布日期:2021-06-08 13:28阅读:136来源:国知局
建筑构件的位置关系判定方法、装置、设备及存储介质与流程

1.本发明涉及建筑信息化领域,特别是涉及一种建筑构件的位置关系判定方法、装置、设备及计算机可读存储介质。


背景技术:

2.现今在大力发展基础设施建设,伴随着各地基建项目的兴起,人们不仅对建筑的实用性有所要求,更是对建筑构件设计的美观度提出一定的要求。从而在项目施工现场各建筑构件之间的位置关系也变的相对复杂。在实际施工之前,施工管理人员需要进行工程预算,主要是根据各建筑构件之间的位置关系进行工程预算。
3.现有技术中主要是采用的acis商业库的方式判定各建筑构件之间的位置关系,经常出现微小偏差累积引起大量差,导致多次位置关系判定结果不一致,鲁棒性差。
4.综上所述,如何有效地解决现有的acis商业库的方式判定各建筑构件之间的位置关系,导致多次位置关系判定结果不一致,鲁棒性差等问题,是目前本领域技术人员急需解决的问题。


技术实现要素:

5.本发明的目的是提供一种建筑构件的位置关系判定方法,该方法较大地降低了误判的概率,保证了多个判定结果的一致性,提升了构件间位置关系判定方式的鲁棒性;本发明的另一目的是提供一种建筑构件的位置关系判定装置、设备及计算机可读存储介质。
6.为解决上述技术问题,本发明提供如下技术方案:
7.一种建筑构件的位置关系判定方法,包括:
8.从建筑信息模型中选取待位置关系判定的第一构件和第二构件,并根据所述第一构件和所述第二构件的结构选取目标投影平面;
9.分别将所述第一构件和所述第二构件投影至所述目标投影平面,得到所述第一构件对应的第一投影多边形和所述第二构件对应的第二投影多边形;
10.从所述第一投影多边形中选取各第一关键点,分别从各所述第一关键点沿预置方向作射线;
11.判断各所述射线中是否存在与所述第二投影多边形的边重合的目标射线;
12.若是,则将所述目标射线平行移动预设距离,得到移动后射线;
13.分别计算移动后射线和不需移动的各所述射线与所述第二投影多边形的交点个数,并根据各所述交点个数确定所述第一构件与所述第二构件的位置关系。
14.在本发明的一种具体实施方式中,根据各所述交点个数确定所述第一构件与所述第二构件的位置关系,包括:
15.判断各所述交点个数中是否存在奇数;
16.若是,则确定存在第一关键点在所述第二投影多边形内部,所述第一构件与所述第二构件存在重叠区域;
17.若否,则确定各所述第一关键点均在所述第二投影多边形外部,所述第一构件与所述第二构件不存在重叠区域。
18.在本发明的一种具体实施方式中,在得到所述第一构件对应的第一投影多边形和所述第二构件对应的第二投影多边形之后,分别从各所述第一关键点沿预置方向作射线之前,还包括:
19.分别获取所述第一投影多边形的第一边数和所述第二投影多边形的第二边数;
20.判断所述第一边数和所述第二边数中是否存在大于预设值的边数;
21.若否,则执行所述分别从各所述第一关键点沿预置方向作射线的步骤;
22.若是,则将所述第一边数和所述第二边数中的较小者对应的多边形确定为第三投影多边形,将所述第一边数和所述第二边数中的较大者对应的多边形确定为第四投影多边形;
23.从所述第三投影多边形中选取各第二关键点,从所述第四投影多边形的各顶点中选取各所述第二关键点分别对应的距离最近的最近邻顶点,并分别将各所述第二关键点连接至对应的最近邻顶点,得到各辅助边;
24.将各所述最近邻顶点在所述第四投影多边形中所在目标角的两边,沿逆时针方向依次确定为第一边和第二边,并将所述第一边、所述最近邻顶点和所述辅助边构成的角确定为辅助角;
25.分别计算各所述辅助角与对应的目标角的大小关系,并根据各所述大小关系确定所述第一构件与所述第二构件的位置关系。
26.在本发明的一种具体实施方式中,根据各所述大小关系确定所述第一构件与所述第二构件的位置关系,包括:
27.判断各所述辅助角中是否存在小于对应的目标角的辅助角;
28.若是,确定存在第二关键点在所述第四投影多边形内部,所述第一构件与所述第二构件存在重叠区域;
29.若否,则确定各所述第二关键点均在所述第四投影多边形外部或边上,所述第一构件与所述第二构件不存在重叠区域。
30.在本发明的一种具体实施方式中,分别计算各所述辅助角与对应的目标角的大小关系,包括:
31.分别获取各所述辅助角的辅助角度范围和各所述目标角的目标角度范围;其中,所述辅助角度范围和所述目标角度范围均为以平角为分界线进行划分的角度范围;
32.分别计算各所述辅助角的辅助余弦值和各所述目标角的目标余弦值;
33.结合各所述辅助角度范围、各所述目标角度范围、各所述辅助余弦值以及各所述目标余弦值,分别计算各所述辅助角与对应的目标角的大小关系。
34.在本发明的一种具体实施方式中,当确定所述第一构件与所述第二构件存在重叠区域时,还包括:
35.获取所述重叠区域;
36.按照预置扣减顺序分别将所述第一构件和所述第二构件与所述重叠区域进行布尔运算,得到布尔运算结果;
37.根据所述布尔运算结果计算工程用料量。
38.在本发明的一种具体实施方式中,在根据所述布尔运算结果计算工程用料之后,还包括:
39.获取目标材料单价;
40.根据所述目标材料单价和所述工程用料量进行工程预算。
41.一种建筑构件的位置关系判定装置,包括:
42.平面选取模块,用于从建筑信息模型中选取待位置关系判定的第一构件和第二构件,并根据所述第一构件和所述第二构件的结构选取目标投影平面;
43.投影模块,用于分别将所述第一构件和所述第二构件投影至所述目标投影平面,得到所述第一构件对应的第一投影多边形和所述第二构件对应的第二投影多边形;
44.射线获得模块,用于从所述第一投影多边形中选取各第一关键点,分别从各所述第一关键点沿预置方向作射线;
45.第一判断模块,用于判断各所述射线中是否存在与所述第二投影多边形的边重合的目标射线;
46.平行移动模块,用于当确定各所述射线中存在与所述第二投影多边形的边重合的目标射线时,将所述目标射线平行移动预设距离,得到移动后射线;
47.第一位置关系确定模块,用于分别计算移动后射线和不需移动的各所述射线与所述第二投影多边形的交点个数,并根据各所述交点个数确定所述第一构件与所述第二构件的位置关系。
48.一种建筑构件的位置关系判定设备,包括:
49.存储器,用于存储计算机程序;
50.处理器,用于执行所述计算机程序时实现如前所述建筑构件的位置关系判定方法的步骤。
51.一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前所述建筑构件的位置关系判定方法的步骤。
52.本发明所提供的建筑构件的位置关系判定方法,从建筑信息模型中选取待位置关系判定的第一构件和第二构件,并根据第一构件和第二构件的结构选取目标投影平面;分别将第一构件和第二构件投影至目标投影平面,得到第一构件对应的第一投影多边形和第二构件对应的第二投影多边形;从第一投影多边形中选取各第一关键点,分别从各第一关键点沿预置方向作射线;判断各射线中是否存在与第二投影多边形的边重合的目标射线;若是,则将目标射线平行移动预设距离,得到移动后射线;分别计算移动后射线和不需移动的各射线与第二投影多边形的交点个数,并根据各交点个数确定第一构件与第二构件的位置关系。
53.由上述技术方案可知,通过根据待位置关系判定的两构件的结构选取合适的目标投影平面,当从某第一关键点沿预置方向作出的射线与第二投影多边形的某条边重合时,将重合的目标射线平行移动不影响位置关系判定结果的预设距离,根据移动后射线和不需移动的各射线分别与第二投影多边形的交点个数,判定两构件的位置关系。通过当存在重合情况时,利用平行移动预设距离的方式判定交点个数,消除了重合边带来的干扰,较大地降低了误判的概率,保证了多个判定结果的一致性,提升了构件间位置关系判定方式的鲁棒性。
54.相应的,本发明还提供了与上述建筑构件的位置关系判定方法相对应的建筑构件的位置关系判定装置、设备和计算机可读存储介质,具有上述技术效果,在此不再赘述。
附图说明
55.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
56.图1为本发明实施例中建筑构件的位置关系判定方法的一种实施流程图;
57.图2为本发明实施例中一种直行墙与工字型柱的位置关系示意图;
58.图3为本发明实施例中一种堆叠长方体构件的位置关系示意图;
59.图4为本发明实施例中建筑构件的位置关系判定方法的另一种实施流程图;
60.图5为本发明实施例中一种点与多边形位置关系判定的示意图;
61.图6为本发明实施例中一种角度大小关系判定的示意图;
62.图7为本发明实施例中另一种角度大小关系判定的示意图;
63.图8为本发明实施例中一种建筑构件的位置关系判定装置的结构框图;
64.图9为本发明实施例中一种建筑构件的位置关系判定设备的结构框图。
具体实施方式
65.为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
66.实施例一:
67.参见图1,图1为本发明实施例中建筑构件的位置关系判定方法的一种实施流程图,该方法可以包括以下步骤:
68.s101:从建筑信息模型中选取待位置关系判定的第一构件和第二构件,并根据第一构件和第二构件的结构选取目标投影平面。
69.预先绘制与施工现场对应的建筑信息模型,当需要判定第一构件与第二构件的位置关系时,从建筑信息模型中选取待位置关系判定的第一构件和第二构件,根据第一构件和第二构件的结构选取目标投影平面。如从上、下、左、右、前、后六个平面中选取更能够清晰地展示第一构件和第二构件之间的位置关系的投影平面。
70.需要说明的是,第一构件和第二构件中的第一、第二仅是为了对两个构件进行区分,并没有先后顺序之分。
71.s102:分别将第一构件和第二构件投影至目标投影平面,得到第一构件对应的第一投影多边形和第二构件对应的第二投影多边形。
72.在选取得到目标投影平面之后,分别将第一构件和第二构件投影至目标投影平面,得到第一构件对应的第一投影多边形和第二构件对应的第二投影多边形。
73.参见图2,图2为本发明实施例中一种直行墙与工字型柱的位置关系示意图。图2中
左边以实线绘制的长条形状的图形为直行墙21的投影多边形,右边以虚线绘制的“工字”形状的图形为工字型柱22的投影多边形。
74.s103:从第一投影多边形中选取各第一关键点,分别从各第一关键点沿预置方向作射线。
75.在对第一构件和第二构件进行投影,得到第一构件对应的第一投影多边形和第二构件对应的第二投影多边形之后,从第一投影多边形中选取各第一关键点,分别从各第一关键点沿预置方向作射线。如可以选取投影多边形的各端点作为关键点。
76.如图2所示,可以选取直行墙21对应的投影多边形的a端点、b端点、以及直行墙21对应的投影多边形内部的c点作为关键点,将x轴正方向作为射线的绘制方向,将a点、b点、c点分别向x轴正方向作射线,得到射线aq1、aq2、aq3。
77.需要说明的是,射线方向可以根据实际情况进行设定和调整,本发明实施例对此不做限定。
78.s104:判断各射线中是否存在与第二投影多边形的边重合的目标射线,若否,则执行步骤s105,若是,则执行步骤s106。
79.在从各第一关键点沿预置方向作射线,得到各射线之后,判断各射线中是否存在与第二投影多边形的边重合的目标射线,若否,则说明均能准确地判断出各射线与第二投影多边形的交点个数,执行步骤s105,若是,则说明存在不能准确判断与第二投影多边形的交点个数的射线,执行步骤s106。
80.s105:分别计算各射线与第二投影多边形的交点个数,并根据各交点个数确定第一构件与第二构件的位置关系。
81.在确定各射线中不存在与第二投影多边形的边重合的目标射线时,说明均能准确地判断出各射线与第二投影多边形的交点个数,分别计算各射线与第二投影多边形的交点个数,并根据各交点个数确定第一构件与第二构件的位置关系。
82.s106:将目标射线平行移动预设距离,得到移动后射线。
83.预先设置一个相对较小的,不影响处理结果的平行移动距离,当从一个投影多边形的关键点引出的射线与另一个投影多边形的边重合时,将该射线平行移动该预设距离。当确定各射线中存在与第二投影多边形的边重合的目标射线时,说明存在不能准确判断与第二投影多边形的交点个数的射线,将目标射线平行移动预设距离,得到移动后射线。
84.如图2所示,由于从直行墙21的投影多边形a端点作出的射线aq1与工字型柱22的投影多边形一条边重合,因此将aq1向y轴正方向移动了预设距离,当然除此之外也可以将aq1向y轴负方向移动预设距离,只要能够规避与工字型柱22投影多边形的边重合即可。
85.s107:分别计算移动后射线和不需移动的各射线与第二投影多边形的交点个数,并根据各交点个数确定第一构件与第二构件的位置关系。
86.在得到移动后射线之后,分别计算移动后射线和不需移动的各射线与第二投影多边形的交点个数,并根据各交点个数确定第一构件与第二构件的位置关系。
87.如图2所示,移动后的射线aq1与工字型柱22的投影多边形存在p1、p2、p3三个交点,射线bq2与工字型柱22的投影多边形存在p4一个交点,射线cq3与工字型柱22的投影多边形存在p5、p6两个交点。再根据射线与多边形交点个数为的奇偶性,判定点与多变形的位置关系。对于以上三种情况,a点和b点与工字型柱22的投影多边形的交点个数为奇数,位于工字
型柱22的投影多边形内部;c点与工字型柱22的投影多边形交点个数为偶数,在工字型柱22的投影多边形外部。存在位于工字型柱22的投影多边形内部的关键点,说明直行墙21与工字型柱22存在重叠区域。
88.当将原射线aq1向y轴负方向移动预设距离时,移动后的射线aq1与工字型柱22的投影多边形存在一个交点,交点个数仍为奇数,进一步验证当从一个投影多边形的关键点引出的射线与另一个投影多边形的边重合时,对射线平行移动的具体方向不做限定。
89.通过将射线做微小变动,很大程度上减少了计算量,降低了交点计算的复杂度,加快了计算速度。
90.参见图3,图3为本发明实施例中一种堆叠长方体构件的位置关系示意图。在工程算量领域中,柱梁墙板等基本构件之间工程量计算的扣减过程中,两个堆叠在一起的长方体,如果这两个长方体要做布尔并运算,虚拟的将上方的长方体的下底面向下整体移动,处于下面长方体的内部,避免上部长方体的底面和下部长方体的顶面的相贴导致的计算退化,布尔并很容易消除上部长方体的底面。当这两个长方体如果做布尔交运算时候,虚拟的将上部长方体的底面整体上移,处理成上部长方体的底面在下部长方体的外部,避免上部长方体和下部长方体的相贴导致的退化,这样两个长方体的布尔交为空,两个长方体无交。
91.由上述技术方案可知,通过根据待位置关系判定的两构件的结构选取合适的目标投影平面,当从某第一关键点沿预置方向作出的射线与第二投影多边形的某条边重合时,将重合的目标射线平行移动不影响位置关系判定结果的预设距离,根据移动后射线和不需移动的各射线分别与第二投影多边形的交点个数,判定两构件的位置关系。通过当存在重合情况时,利用平行移动预设距离的方式判定交点个数,消除了重合边带来的干扰,较大地降低了误判的概率,保证了多个判定结果的一致性,提升了构件间位置关系判定方式的鲁棒性。
92.需要说明的是,基于上述实施例一,本发明实施例还提供了相应的改进方案。在后续实施例中涉及与上述实施例一中相同步骤或相应步骤之间可相互参考,相应的有益效果也可相互参照,在下文的改进实施例中不再一一赘述。
93.实施例二:
94.参见图4,图4为本发明实施例中建筑构件的位置关系判定方法的另一种实施流程图,该方法可以包括以下步骤:
95.s401:从建筑信息模型中选取待位置关系判定的第一构件和第二构件,并根据第一构件和第二构件的结构选取目标投影平面。
96.s402:分别将第一构件和第二构件投影至目标投影平面,得到第一构件对应的第一投影多边形和第二构件对应的第二投影多边形。
97.s403:分别获取第一投影多边形的第一边数和第二投影多边形的第二边数。
98.在投影得到第一构件对应的第一投影多边形和第二构件对应的第二投影多边形之后,分别获取第一投影多边形的第一边数和第二投影多边形的第二边数。
99.s404:判断第一边数和第二边数中是否存在大于预设值的边数,若否,则执行步骤s405,若是,则执行步骤s413。
100.预先设置一个边数阈值,当获取到第一投影多边形的第一边数和第二投影多边形的第二边数之后,判断第一边数和第二边数中是否存在大于预设值的边数,若否,则说明第
一投影多边形与第二投影多边形的形状相对比较简单,通过利用关键点做射线计算交点的方式较易得到两构件间的位置关系,执行步骤s405,若是,则说明第一投影多边形与第二投影多边形的形状相对比较复杂,通过利用关键点做射线计算交点的方式不容易得到两构件间的位置关系,执行步骤s413。
101.s405:从第一投影多边形中选取各第一关键点,分别从各第一关键点沿预置方向作射线。
102.s406:判断各射线中是否存在与第二投影多边形的边重合的目标射线,若否,则执行步骤s407,若是,则执行步骤s408。
103.s407:分别计算各射线与第二投影多边形的交点个数。
104.s408:将目标射线平行移动预设距离,得到移动后射线。
105.s409:分别计算移动后射线和不需移动的各射线与第二投影多边形的交点个数。
106.s410:判断各交点个数中是否存在奇数,若是,则执行步骤s411,若否,则执行步骤s412。
107.在分别计算得到各射线与第二投影多边形的交点个数之后,判断各交点个数中是否存在奇数,若是,则执行步骤s411,若否,则执行步骤s412。
108.s411:确定存在第一关键点在第二投影多边形内部,第一构件与第二构件存在重叠区域。
109.根据射线与多边形交点个数为的奇偶性,判定点与多变形的位置关系。当各交点个数中存在奇数时,确定存在第一关键点在第二投影多边形内部,第一构件与第二构件存在重叠区域。
110.s412:确定各第一关键点均在第二投影多边形外部,第一构件与第二构件不存在重叠区域。
111.根据射线与多边形交点个数为的奇偶性,判定点与多变形的位置关系。当各交点个数均为偶数时,确定各第一关键点均在第二投影多边形外部,第一构件与第二构件不存在重叠区域。
112.s413:将第一边数和第二边数中的较小者对应的多边形确定为第三投影多边形,将第一边数和第二边数中的较大者对应的多边形确定为第四投影多边形。
113.当确定第一边数和第二边数中存在大于预设值的边数时,说明第一投影多边形与第二投影多边形的形状相对比较复杂,通过利用关键点做射线计算交点的方式不容易得到两构件间的位置关系,将第一边数和第二边数中的较小者对应的多边形确定为第三投影多边形,将第一边数和第二边数中的较大者对应的多边形确定为第四投影多边形。
114.s414:从第三投影多边形中选取各第二关键点,从第四投影多边形的各顶点中选取各第二关键点分别对应的距离最近的最近邻顶点,并分别将各第二关键点连接至对应的最近邻顶点,得到各辅助边。
115.当确定出两投影多边形中边数较小的第三投影多边形和边数较大的第四投影多边形之后,从第三投影多边形中选取各第二关键点,从第四投影多边形的各顶点中选取各第二关键点分别对应的距离最近的最近邻顶点,并分别将各第二关键点连接至对应的最近邻顶点,得到各辅助边。
116.参见图5,图5为本发明实施例中一种点与多边形位置关系判定的示意图。a点和c
点为其中一个构件对应的第三投影多边形中的两个第二关键点,多边形abcdefgh为另一个构件对应的第四投影多边形。多边形abcdefgh中与a点距离最近的顶点为b点,与c点距离最近的顶点为d点,因此连接ab和cd,分别得到辅助边ab和辅助边cd。
117.s415:将各最近邻顶点在第四投影多边形中所在目标角的两边,沿逆时针方向依次确定为第一边和第二边,并将第一边、最近邻顶点和辅助边构成的角确定为辅助角。
118.在将各第二关键点连接至对应的最近邻顶点,得到各辅助边之后,将各最近邻顶点在第四投影多边形中所在目标角的两边,沿逆时针方向依次确定为第一边和第二边,并将第一边、最近邻顶点和辅助边构成的角确定为辅助角。
119.如图5所示,bc边和de边为第一边,ba边和dc边为第二边。∠cba和∠edc均为目标角。bc边、ab辅助边以及顶点b构成的∠cba为辅助角,de边、cd辅助边、以及顶点d构成的∠edc也为辅助角。
120.s416:分别计算各辅助角与对应的目标角的大小关系,并根据各大小关系确定第一构件与第二构件的位置关系。
121.在得到各辅助角之后,分别计算各辅助角与对应的目标角的大小关系,并根据各大小关系确定第一构件与第二构件的位置关系。即当存在小于对应的目标角的辅助角时,说明存在第二关键点在第四投影多边形内部,第一构件与第二构件存在重叠区域;当各辅助角均大于各自对应的目标角时,说明说明存在第二关键点均在第四投影多边形外部,第一构件与第二构件不存在重叠区域。
122.如图5所示,当∠cba>∠cba时,说明a点在多边形abcdefgh外部,当∠cba<∠cba时,说明a点在多边形abcdefgh内部;当∠edc>∠edc时,说明c点在多边形abcdefgh外部,当∠edc<∠edc时,说明c点在多边形abcdefgh内部。
123.在本发明的一种具体实施方式中,分别计算各辅助角与对应的目标角的大小关系,可以包括以下步骤:
124.步骤一:分别获取各辅助角的辅助角度范围和各目标角的目标角度范围;其中,辅助角度范围和目标角度范围为分界线均为以平角进行划分的角度范围;
125.步骤二:分别计算各辅助角的辅助余弦值和各目标角的目标余弦值;
126.步骤三:结合各辅助角度范围、各目标角度范围、各辅助余弦值以及各目标余弦值,分别计算各辅助角与对应的目标角的大小关系。
127.为方便描述,可以将上述三个步骤结合起来进行说明。
128.预先以平角为分界线进行角度范围划分,分别获取各辅助角的辅助角度范围和各目标角的目标角度范围,并分别计算各辅助角的辅助余弦值和各目标角的目标余弦值,结合各辅助角度范围、各目标角度范围、各辅助余弦值以及各目标余弦值,分别计算各辅助角与对应的目标角的大小关系。
129.参见图6和图7,图6为本发明实施例中一种角度大小关系判定的示意图,图7为本发明实施例中另一种角度大小关系判定的示意图。在得到各辅助角和各辅助边之后,可以根据以下公式计算各辅助角和各目标角的余弦值:
[0130][0131]
其中,b、d为角的两个边。
[0132]
图6中∠cba和图7中∠edc的右侧表示多边形内部,左侧表示多边形外部。图6表示一个多边形的凸点,图7表示一个多边形的凹点。
[0133]
余弦函数在(0,180)范围内单调递减,在(180,360)范围内单调递增。因此用向量余弦值比较角度大小时,要分开考虑角度在(0,180)和(180,360)之间的情况。
[0134]
1)当∠cba在(0,180)之间时,情况1:当∠cba1也在(0,180)之间时,若cos∠cba1>cos∠cba,点a1在多边形内部;情况2:当∠cba2也在(0,180)之间时,cos∠cba2<cos∠cba时点a2在多边形外部;情况3:当∠cba3也在(180,360)之间时,ba3从bc方向旋转到ba方向的角度大于180度,点a3位于多边形外部;2)当∠edc在(180,360)之间时,情况1:当∠edc1在(0,180)之间时,dc从de方向旋转到dc方向的角度小于180度,点c1位于多边形内部;情况2:当∠edc2在(180,360)之间时,cos∠edc2<cos∠edc时点c2在多边形内部;情况3:当∠edc3在(180,360)之间时,cos∠edc3>cos∠edc时点c3在平面外部。
[0135]
其中,各辅助角与各目标角与180度的关系,可以用向量夹角的正弦表示,正弦函数在(0,180)为正,(180,360)为负。二维平面上,向量夹角的正弦与叉乘的关系如下:
[0136][0137]
其中,f、h为角的两个边。
[0138]
从而可以只分析多边形的局部,可以去掉计算与多边形的相关性,减少计算的复杂度,而且可以仅根据简单的向量计算就可以获取边与面的位置关系,减少计算复杂度,加快计算速度。
[0139]
在本发明的一种具体实施方式中,根据各大小关系确定第一构件与第二构件的位置关系,可以包括以下步骤:
[0140]
步骤一:判断各辅助角中是否存在小于对应的目标角的辅助角,若是,则执行步骤二,若否,则执行步骤三。
[0141]
步骤二:确定存在第二关键点在第四投影多边形内部,第一构件与第二构件存在重叠区域。
[0142]
步骤三:确定各第二关键点均在第四投影多边形外部或边上,第一构件与第二构件不存在重叠区域。
[0143]
为方便描述,可以将上述三个步骤结合起来进行说明。
[0144]
在获取到各目标角与各辅助角的大小关系之后,判断各辅助角中是否存在小于对应的目标角的辅助角,若是,则确定存在第二关键点在第四投影多边形内部,第一构件与第二构件存在重叠区域;若否,则确定各第二关键点均在第四投影多边形外部或边上,第一构件与第二构件不存在重叠区域。
[0145]
s417:当确定第一构件与第二构件存在重叠区域时,获取重叠区域。
[0146]
当确定第一构件与第二构件存在重叠区域时,获取重叠区域。如可以将各关键点、以及两个投影多边形各边的交点进行有效连接,得到重叠区域。
[0147]
s418:按照预置扣减顺序分别将第一构件和第二构件与重叠区域进行布尔运算,得到布尔运算结果。
[0148]
预先设置当第一构件与第二构件存在重区域时的扣减顺序,在获取到重叠区域之后,按照预置扣减顺序分别将第一构件和第二构件与重叠区域进行相较、相减等布尔运算,
得到布尔运算结果。
[0149]
s419:根据布尔运算结果计算工程用料量。
[0150]
在计算得到布尔运算结果之后,根据布尔运算结果计算工程用料量。
[0151]
s420:获取目标材料单价。
[0152]
获取目标材料单价。
[0153]
s421:根据目标材料单价和工程用料量进行工程预算。
[0154]
在分别获取到工程用料量和目标材料单价之后,根据目标材料单价和工程用料量进行工程预算,从而帮助工程管理人员能够对工程进行提前规划。
[0155]
实施例三:
[0156]
相应于上面的方法实施例,本发明还提供了一种建筑构件的位置关系判定装置,下文描述的建筑构件的位置关系判定装置与上文描述的建筑构件的位置关系判定方法可相互对应参照。
[0157]
参见图8,图8为本发明实施例中一种建筑构件的位置关系判定装置的结构框图,该装置可以包括:
[0158]
平面选取模块81,用于从建筑信息模型中选取待位置关系判定的第一构件和第二构件,并根据第一构件和第二构件的结构选取目标投影平面;
[0159]
投影模块82,用于分别将第一构件和第二构件投影至目标投影平面,得到第一构件对应的第一投影多边形和第二构件对应的第二投影多边形;
[0160]
射线获得模块83,用于从第一投影多边形中选取各第一关键点,分别从各第一关键点沿预置方向作射线;
[0161]
第一判断模块84,用于判断各射线中是否存在与第二投影多边形的边重合的目标射线;
[0162]
平行移动模块85,用于当确定各射线中存在与第二投影多边形的边重合的目标射线时,将目标射线平行移动预设距离,得到移动后射线;
[0163]
第一位置关系确定模块86,用于分别计算移动后射线和不需移动的各射线与第二投影多边形的交点个数,并根据各交点个数确定第一构件与第二构件的位置关系。
[0164]
由上述技术方案可知,通过根据待位置关系判定的两构件的结构选取合适的目标投影平面,当从某第一关键点沿预置方向作出的射线与第二投影多边形的某条边重合时,将重合的目标射线平行移动不影响位置关系判定结果的预设距离,根据移动后射线和不需移动的各射线分别与第二投影多边形的交点个数,判定两构件的位置关系。通过当存在重合情况时,利用平行移动预设距离的方式判定交点个数,消除了重合边带来的干扰,较大地降低了误判的概率,保证了多个判定结果的一致性,提升了构件间位置关系判定方式的鲁棒性。
[0165]
在本发明的一种具体实施方式中,第一位置关系确定模块86包括:
[0166]
第一判断子模块,用于判断各交点个数中是否存在奇数;
[0167]
第一位置关系确定子模块,用于当各交点个数中存在奇数时,确定存在第一关键点在第二投影多边形内部,第一构件与第二构件存在重叠区域;
[0168]
第二位置关系确定子模块,用于当各交点个数中不存在奇数时,确定各第一关键点均在第二投影多边形外部,第一构件与第二构件不存在重叠区域。
[0169]
在本发明的一种具体实施方式中,该装置还可以包括:
[0170]
边数获取模块,用于在得到第一构件对应的第一投影多边形和第二构件对应的第二投影多边形之后,分别从各第一关键点沿预置方向作射线之前,分别获取第一投影多边形的第一边数和第二投影多边形的第二边数;
[0171]
第二判断模块,用于判断第一边数和第二边数中是否存在大于预设值的边数;
[0172]
射线获得模块83具体为当第一边数和第二边数均小于等于预设值的边数时,从各第一关键点沿预置方向作射线的模块;
[0173]
多边形确定模块,用于当第一边数和第二边数中存在大于预设值的边数时,将第一边数和第二边数中的较小者对应的多边形确定为第三投影多边形,将第一边数和第二边数中的较大者对应的多边形确定为第四投影多边形;
[0174]
辅助边获得模块,用于从第三投影多边形中选取各第二关键点,从第四投影多边形的各顶点中选取各第二关键点分别对应的距离最近的最近邻顶点,并分别将各第二关键点连接至对应的最近邻顶点,得到各辅助边;
[0175]
辅助角获得模块,用于将各最近邻顶点在第四投影多边形中所在目标角的两边,沿逆时针方向依次确定为第一边和第二边,并将第一边、最近邻顶点和辅助边构成的角确定为辅助角;
[0176]
第二位置关系确定模块,用于分别计算各辅助角与对应的目标角的大小关系,并根据各大小关系确定第一构件与第二构件的位置关系。
[0177]
在本发明的一种具体实施方式中,第二位置关系确定模块包括:
[0178]
第二判断子模块,用于判断各辅助角中是否存在小于对应的目标角的辅助角;
[0179]
第三位置关系确定子模块,用于当各辅助角中存在小于对应的目标角的辅助角时,确定存在第二关键点在第四投影多边形内部,第一构件与第二构件存在重叠区域;
[0180]
第四位置关系确定子模块,用于当各辅助角均大于等于对应的目标角的辅助角时,确定各第二关键点均在第四投影多边形外部或边上,第一构件与第二构件不存在重叠区域。
[0181]
在本发明的一种具体实施方式中,第二位置关系确定模块包括:
[0182]
角度计算子模块,用于分别获取各辅助角的辅助角度范围和各目标角的目标角度范围;其中,辅助角度范围和目标角度范围均为以平角为分界线进行划分的角度范围;
[0183]
余弦值计算子模块,用于分别计算各辅助角的辅助余弦值和各目标角的目标余弦值;
[0184]
角度关系计算子模块,用于结合各辅助角度范围、各目标角度范围、各辅助余弦值以及各目标余弦值,分别计算各辅助角与对应的目标角的大小关系。
[0185]
在本发明的一种具体实施方式中,该装置还可以包括:
[0186]
区域获取模块,用于当确定第一构件与第二构件存在重叠区域时,获取重叠区域;
[0187]
布尔运算模块,用于按照预置扣减顺序分别将第一构件和第二构件与重叠区域进行布尔运算,得到布尔运算结果;
[0188]
用料量计算模块,用于根据布尔运算结果计算工程用料量。
[0189]
在本发明的一种具体实施方式中,该装置还可以包括:
[0190]
价格获取模块,用于在根据布尔运算结果计算工程用料之后,获取目标材料单价;
[0191]
工程预算模块,用于根据目标材料单价和工程用料量进行工程预算。
[0192]
实施例四:
[0193]
相应于上面的方法实施例,参见图9,图9为本发明所提供的建筑构件的位置关系判定设备的示意图,该设备可以包括:
[0194]
存储器91,用于存储计算机程序;
[0195]
处理器92,用于执行上述存储器91存储的计算机程序时可实现如下步骤:
[0196]
从建筑信息模型中选取待位置关系判定的第一构件和第二构件,并根据第一构件和第二构件的结构选取目标投影平面;分别将第一构件和第二构件投影至目标投影平面,得到第一构件对应的第一投影多边形和第二构件对应的第二投影多边形;从第一投影多边形中选取各第一关键点,分别从各第一关键点沿预置方向作射线;判断各射线中是否存在与第二投影多边形的边重合的目标射线;若是,则将目标射线平行移动预设距离,得到移动后射线;分别计算移动后射线和不需移动的各射线与第二投影多边形的交点个数,并根据各交点个数确定第一构件与第二构件的位置关系。
[0197]
对于本发明提供的设备的介绍请参照上述方法实施例,本发明在此不做赘述。
[0198]
相应于上面的方法实施例,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现如下步骤:
[0199]
从建筑信息模型中选取待位置关系判定的第一构件和第二构件,并根据第一构件和第二构件的结构选取目标投影平面;分别将第一构件和第二构件投影至目标投影平面,得到第一构件对应的第一投影多边形和第二构件对应的第二投影多边形;从第一投影多边形中选取各第一关键点,分别从各第一关键点沿预置方向作射线;判断各射线中是否存在与第二投影多边形的边重合的目标射线;若是,则将目标射线平行移动预设距离,得到移动后射线;分别计算移动后射线和不需移动的各射线与第二投影多边形的交点个数,并根据各交点个数确定第一构件与第二构件的位置关系。
[0200]
该计算机可读存储介质可以包括:u盘、移动硬盘、只读存储器(read

only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0201]
对于本发明提供的计算机可读存储介质的介绍请参照上述方法实施例,本发明在此不做赘述。
[0202]
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置、设备及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
[0203]
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1