CN115062388A - 一种确定构件方向的方法、装置和计算机可读存储介质 - Google Patents
一种确定构件方向的方法、装置和计算机可读存储介质 Download PDFInfo
- Publication number
- CN115062388A CN115062388A CN202210767807.2A CN202210767807A CN115062388A CN 115062388 A CN115062388 A CN 115062388A CN 202210767807 A CN202210767807 A CN 202210767807A CN 115062388 A CN115062388 A CN 115062388A
- Authority
- CN
- China
- Prior art keywords
- target
- component
- line
- reference line
- rotated
- 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
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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Geometry (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Structural Engineering (AREA)
- Computational Mathematics (AREA)
- Civil Engineering (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Architecture (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种确定构件方向的方法,所述方法包括:确定目标构件在BIM建筑模型内的插入点;确定过所述插入点且与所述目标构件的X轴平行或重叠的直线,并将该直线与所述目标构件的重叠线段作为旋转对齐线;在所述BIM建筑模型内识别出过所述插入点的建筑对象构造线作为旋转基准线;根据所述旋转对齐线和所述旋转基准线的角度关系旋转所述目标构件至目标方位。
Description
技术领域
本发明涉及计算机辅助设计技术领域,具体涉及一种确定构件方向的方法、装置、计算机设备和计算机可读存储介质。
背景技术
现有的BIM(Building Information Modeling)模型建模流程一般分为项目设置、导入图纸、放置构件、深化设计、渲染输出等几个步骤。一个常规规模的场布、土建BIM模型通常包括上万个构件,因此,对放置单个构件效率的提升是实现高效地制作施工BIM模型的关键。现有技术中放置单个构件的过程通常可以分为以下几个步骤:选择构件、捕捉放置点、确定放置、调整构件方向和调整构件参数等。为了模型整体的正确性,模型的制作者在建模的过程中需要对构件方向进行调整以保证每一个构件的方向都是符合业务要求的,而现有的构件方向调整方式存在着诸多缺点。
一方面,现有的相关建模软件比如Revit在调整构件方向时,大多需要繁琐复杂的流程,在放置构件后,用户需要再次选中已经放置完成的构件,随后选取一个方向作为构件旋转的起始方向,再选取一个方向作为构件旋转的目标方向,经过3-4次确定操作后才能实现构件的旋转;另一方面,当需要旋转的构件是依附在其他构件上且与被依附构件有强方向要求时,需要制作者掌握一定的业务知识,使用门槛较高,在BIM模型制作者没有较丰富的施工背景知识的条件下,利用现有技术建模需要花费巨大的学习成本和制作精力,无法快速高效的制作施工BIM模型。
因此,如何准确高效的将构件以正确方向放置在BIM建筑模型内,成为目前亟需解决的技术问题。
发明内容
本发明的目的在于提供了一种确定构件方向的方法、装置、计算机设备和计算机可读存储介质,能够准确高效的将构件以正确方向放置在BIM建筑模型内。
本发明的一个方面提供了一种确定构件方向的方法,所述方法包括:确定目标构件在BIM建筑模型内的插入点;确定过所述插入点且与所述目标构件的X轴平行或重叠的直线,并将该直线与所述目标构件的重叠线段作为旋转对齐线;在所述BIM建筑模型内识别出过所述插入点的建筑对象构造线作为旋转基准线;根据所述旋转对齐线和所述旋转基准线的角度关系旋转所述目标构件至目标方位。
可选地,所述根据所述旋转对齐线和所述旋转基准线的角度关系旋转所述目标构件至目标方位,包括:朝目标方向确定所述旋转对齐线到所述旋转基准线或所述旋转基准线的切线的最小角度;其中,所述目标方向为顺时针方向或逆时针方向;将所述目标构件朝所述目标方向旋转所述最小角度,以使得旋转所述最小角度后的旋转对齐线与所述旋转基准线或所述旋转基准线的切线重叠;确定所述旋转基准线所属的建筑对象,并根据所述旋转基准线所属的建筑对象将旋转所述最小角度后的目标构件旋转至所述目标方位。
可选地,所述根据所述旋转基准线所属的建筑对象将旋转所述最小角度后的目标构件旋转至所述目标方位,包括:当所述旋转基准线所属的建筑对象为所述BIM建筑模型内除所有已插入构件之外的二维图形时,确定旋转所述最小角度后的目标构件处于所述目标方位;当所述旋转基准线所属的建筑对象为所述BIM建筑模型内除所述目标构件之外的已插入构件时:确定所述旋转基准线所属构件的第一构件类型;当所述第一构件类型不属于第一预设构件类型时,确定旋转所述最小角度后的目标构件处于所述目标方位;当所述第一构件类型属于所述第一预设构件类型时,确定所述目标构件的第二构件类型,确定旋转所述最小角度后的目标构件与所述旋转基准线所属构件的位置关系,并根据所述第二构件类型和所述位置关系将旋转所述最小角度后的目标构件旋转至所述目标方位。
可选地,所述确定旋转所述最小角度后的目标构件与所述旋转基准线所属构件的位置关系,包括:确定旋转所述最小角度后的目标构件的Y轴所在位置;将所述插入点沿所述Y轴所在位置处的Y轴正方向移动预设距离以生成检查点;确定所述检查点与所述旋转基准线所属构件的位置关系,作为旋转所述最小角度后的目标构件与所述旋转基准线所属构件的位置关系。
可选地,所述根据所述第二构件类型和所述位置关系将旋转所述最小角度后的目标构件旋转至所述目标方位,包括:判断所述位置关系是否满足所述旋转基准线所属构件与其他构件的预设位置关系条件;当所述位置关系满足所述预设位置关系条件时,根据所述第二构件类型将旋转所述最小角度后的目标构件旋转至所述目标方位;当所述位置关系不满足所述预设位置关系条件时,将旋转所述最小角度后的目标构件继续旋转180度,获得旋转综合角度后的目标构件;根据所述第二构件类型将旋转所述综合角度后的目标构件旋转至所述目标方位;其中,所述综合角度为所述最小角度和所述180度之和。
可选地,所述根据所述第二构件类型将旋转所述最小角度后的目标构件旋转至所述目标方位,包括:当所述第二构件类型不属于第二预设构件类型时,或者当所述第二构件类型属于所述第二预设构件类型且第一方向关系满足所述目标构件与其他构件的预设方向关系条件时,确定旋转所述最小角度后的目标构件处于所述目标方位;当所述第二构件类型属于所述第二预设构件类型且第一方向关系不满足所述预设方向关系条件时,直接将旋转所述最小角度后的目标构件旋转至所述目标方位,以使得旋转至所述目标方位的目标构件与所述旋转基准线所属构件的方向关系满足所述预设方向关系条件;其中,所述第一方向关系为旋转所述最小角度后的目标构件与所述旋转基准线所属构件的方向关系。
可选地,所述根据所述第二构件类型将旋转所述综合角度后的目标构件旋转至所述目标方位,包括:当所述第二构件类型不属于第二预设构件类型时,或者当所述第二构件类型属于所述第二预设构件类型且第二方向关系满足所述目标构件与其他构件的预设方向关系条件时,确定旋转所述综合角度后的目标构件处于所述目标方位;当所述第二构件类型属于所述第二预设构件类型且第二方向关系不满足所述预设方向关系条件时,直接将旋转所述综合角度后的目标构件旋转至所述目标方位,以使得旋转至所述目标方位的目标构件与所述旋转基准线所属构件的方向关系满足所述预设方向关系条件;其中,所述第二方向关系为旋转所述综合角度后的目标构件与所述旋转基准线所属构件的方向关系。
可选地,所述在所述BIM建筑模型内识别出过所述插入点的建筑对象构造线作为旋转基准线,包括:当过所述插入点的建筑对象构造线唯一时,直接该建筑对象构造线作为所述旋转基准线;当过所述插入点的建筑对象构造线不唯一时:从过所述插入点的所有建筑对象构造线中筛选出图形深度最小的建筑对象构造线作为所述旋转基准线;当检测到旋转基准线切换指令时,按照图形深度从小到大的顺序从过所述插入点的所有建筑对象构造线中筛选出下一图形深度的建筑对象构造线,并将当前的旋转基准线切换为筛选出的下一图形深度的建筑对象构造线。
本发明的另一个方面提供了一种确定构件方向的装置,所述装置包括:第一确定模块,用于确定目标构件在BIM建筑模型内的插入点;第二确定模块,用于确定过所述插入点且与所述目标构件的X轴平行或重叠的直线,并将该直线与所述目标构件的重叠线段作为旋转对齐线;识别模块,用于在所述BIM建筑模型内识别出过所述插入点的建筑对象构造线作为旋转基准线;旋转模块,用于根据所述旋转对齐线和所述旋转基准线的角度关系旋转所述目标构件至目标方位。
本发明的再一个方面提供了一种计算机设备,所述计算机设备包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一实施例所述的确定构件方向的方法。
本发明的又一个方面提供了一种计算机可读存储介质,其上存储有计算机程序,上述计算机程序被处理器执行时实现上述任一实施例所述的确定构件方向的方法。
本发明提供的确定构件方向的方法,根据旋转基准线和旋转对齐线的角度关系自动将目标构件旋转至正确方位,从而避免了现有技术中手动旋转构件存在流程繁琐复杂且不利于模型的高效创建的问题,同时克服了现有技术中手动旋转构件时对BIM模型制作者的施工背景知识有一定的要求、用户需要花费巨大的学习成本和制作精力,否则无法保证构件方向的正确性从而影响模型整体的正确性的缺陷,达到了准确高效的将构件以正确方向体现在BIM建筑模型内的效果。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为实施例一提供的确定构件方向的方法的流程图;
图2为实施例一提供的确定旋转基准线的示意图;
图3为实施例一提供的将目标构件朝目标方向旋转最小角度的示意图;
图4为实施例一提供的将目标构件朝目标方向旋转最小角度的另一示意图;
图5为实施例一提供的将目标构件朝目标方向旋转最小角度的又一示意图;
图6为实施例一提供的用户灵活旋转目标构件的示意图;
图7为实施例一提供的确定构件方向的方案的整体流程图;
图8为实施例二提供的确定构件方向的装置的框图;
图9为实施例三提供的适于实现确定构件方向的方法的计算机设备的框图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
实施例一
图1为实施例一提供的确定构件方向的方法的流程图,该方法应用于建模软件,如图1所示,该方法包括步骤S1~步骤S4,其中:
步骤S1,确定目标构件在BIM建筑模型内的插入点。
BIM建筑模型又称为BIM模型,BIM建筑模型可包括为建模提供参考的目标工程图纸,该目标工程图纸可以为CAD图纸也可以为其他形式的图纸,本实施例对目标工程图纸的具体类型不做限定。在将目标工程图纸导入建模软件以创建BIM建筑模型之前,目标工程图纸内已经存在一些二维图形,如拟建二维平面图形和道路二维平面图形等。其中,目标构件可以为已插入BIM建筑模型内的构件,也可是尚未插入至BIM建筑模型内的构件。本实施例的目标在于将建模软件的构件以正确方向插入在该BIM建筑模型内以完成工程建模,如将拟建构件插入在拟建二维平面图形处、将道路构件插入在道路的二维平面图形处以及将安全通道构件插入在拟建构件处且保证安全通道构件位于拟建构件外侧等。
插入点位于目标构件上,通常默认插入点位于目标构件的几何中心点,也可移动插入点至目标构件的顶点,如左下角顶点或右上角顶点等。
步骤S2,确定过所述插入点且与所述目标构件的X轴平行或重叠的直线,并将该直线与所述目标构件的重叠线段作为旋转对齐线。
由于插入点位于目标构件上,且确定出的过插入点的直线与X轴平行或重叠,故该直线必然与目标构件存在重叠部分,且该重叠部分为一条线段,该重叠线段也必然与X轴平行或重叠。其中,每个构件有自己的X轴和Y轴,坐标原点为构件的几何中心点。当插入点位于目标构件的X轴上时,步骤S3确定出的过插入点的直线与目标构件的X轴重叠,上述重叠线段也必然与目标构件的X轴重叠;当插入点不位于目标构件的X轴时,步骤S3确定出的过插入点的直线与目标构件的X轴平行,上述重叠线段也必然与目标构件的X轴平行。
步骤S3,在所述BIM建筑模型内识别出过所述插入点的建筑对象构造线作为旋转基准线。
BIM建筑模型内包括多个除目标构件之外的建筑对象,构成建筑对象的线段称为建筑对象构造线。也即建筑对象构造线为BIM建筑模型内构成除目标构件之外的建筑对象的线段。当BIM建筑模型内包括目标工程图纸时,建筑对象可以为目标工程图纸中的二维图形;当BIM建筑模型内包括已插入的构件时,建筑对象可以为除目标构件之外的已插入构件。其中,过插入点的建筑对象构造线可能是BIM建筑模型内原本便已经存在一些二维图形上的构造线,也可能是已经插入至BIM建筑模型内的除目标构件之外的已插入构件上的构造线,也可能二者均包括。其中,建筑对象构造线为线段。
作为一种可选地实施例,步骤S3包括:
当过所述插入点的建筑对象构造线唯一时,直接该建筑对象构造线作为所述旋转基准线;
当过所述插入点的建筑对象构造线不唯一时:
从过所述插入点的所有建筑对象构造线中筛选出图形深度最小的建筑对象构造线作为所述旋转基准线;
当检测到旋转基准线切换指令时,按照图形深度从小到大的顺序从过所述插入点的所有建筑对象构造线中筛选出下一图形深度的建筑对象构造线,并将当前的旋转基准线切换为筛选出的下一图形深度的建筑对象构造线。
当插入点为多条建筑对象构造线的重合点时,可通过指令依照图形深度由小到大的顺序循环遍历拾取建筑对象构造线,以确定出作为旋转基准线的建筑对象构造线。如首次拾取时建模软件自动拾取出图层深度最小的建筑对象构造线,并将该建筑对象构造线默认为旋转基准线进行目标构件的旋转操作。若用户需切换旋转基准线,则可触发旋转基准线切换指令,建模软件基于指令选取下一图层深度也即图层深度第二小的建筑对象构造线作为新的旋转基准线。其中,旋转基准线切换指令可以为预设键盘按键,如Tab键。如图2所示,当插入点的建筑对象构造线存在3条时,可通过Tab键切换旋转基准线。
步骤S4,根据所述旋转对齐线和所述旋转基准线的角度关系旋转所述目标构件至目标方位。
当旋转基准线的线条形状为直线时,可朝目标方向确定旋转对齐线到旋转基准线的最小角度,将该最小角度作为旋转对齐线和旋转基准线的角度关系;当旋转基准线的线条形状为弧线时,可朝目标方向确定旋转对齐线到旋转基准线的切线的最小角度,将该最小角度作为旋转对齐线和旋转基准线的角度关系。其中,目标方向为顺时针方向或逆时针方向。
作为一种可选地实施例,步骤S4包括步骤S41~步骤S43,其中:
步骤S41,朝目标方向确定所述旋转对齐线到所述旋转基准线或所述旋转基准线的切线的最小角度;其中,所述目标方向为顺时针方向或逆时针方向;
步骤S42,将所述目标构件朝所述目标方向旋转所述最小角度,以使得旋转所述最小角度后的旋转对齐线与所述旋转基准线或所述旋转基准线的切线重叠;
步骤S43,确定所述旋转基准线所属的建筑对象,并根据所述旋转基准线所属的建筑对象将旋转所述最小角度后的目标构件旋转至所述目标方位。
当旋转基准线的线条形状为直线时,步骤S41可以为:朝所述目标方向确定所述旋转对齐线到所述旋转基准线的最小角度;步骤S42可以为:将所述目标构件朝所述目标方向旋转所述最小角度,以使得旋转所述最小角度后的旋转对齐线与所述旋转基准线重叠。当旋转基准线的线条形状为弧线时,步骤S41可以为:朝所述目标方向确定所述旋转对齐线到所述旋转基准线的切线的最小角度;步骤S42可以为:将所述目标构件朝所述目标方向旋转所述最小角度,以使得旋转所述最小角度后的旋转对齐线与所述旋转基准线的切线重叠。其中,重叠指旋转对齐线和旋转基准线这两条线段之间存在重叠线段,或者旋转对齐线和旋转基准线的切线之间存在重叠线段。
以目标方向为顺时针方向为例:当旋转基准线的线条形状为直线且插入点位于旋转基准线的非端点处时,确定最小角度以及将目标构件朝目标方向旋转最小角度的示意图如图3所示;当旋转基准线的线条形状为直线且插入点位于旋转基准线的端点处时,确定最小角度以及将目标构件朝目标方向旋转最小角度的示意图如图4所示,其中,旋转最小角度后的目标构件一定不会落在旋转基准线外侧;当旋转基准线的线条形状为弧线时,确定最小角度以及将目标构件朝目标方向旋转最小角度的示意图如图5所示。
旋转基准线所属的建筑对象可以为BIM建筑模型内除所有已插入构件之外的二维图形,也即在将目标工程图纸导入至建模软件之前目标工程图纸中原本已经存在二维图形;或者,旋转基准线所属的建筑对象可以为BIM建筑模型内除目标构件之外的已插入构件。
作为一种可选地实施例,步骤S43包括步骤S431和步骤S432,其中,:
步骤S431,当所述旋转基准线所属的建筑对象为所述BIM建筑模型内除所有已插入构件之外的二维图形时,确定旋转所述最小角度后的目标构件处于所述目标方位;
步骤S432,当所述旋转基准线所属的建筑对象为所述BIM建筑模型内除所述目标构件之外的已插入构件时:
确定所述旋转基准线所属构件的第一构件类型;
当所述第一构件类型不属于第一预设构件类型时,确定旋转所述最小角度后的目标构件处于所述目标方位;
当所述第一构件类型属于所述第一预设构件类型时,确定所述目标构件的第二构件类型,确定旋转所述最小角度后的目标构件与所述旋转基准线所属构件的位置关系,并根据所述第二构件类型和所述位置关系将旋转所述最小角度后的目标构件旋转至所述目标方位。
其中,在插入构件时,对于特殊类型的已插入构件存在位置关系要求,对于特殊类型的目标构件存在方向关系要求,因此本实施例需根据第一构件类型和第二构件类型确定旋转逻辑。
作为一种可选地实施例,步骤S432中的所述确定旋转所述最小角度后的目标构件与所述旋转基准线所属构件的位置关系,包括:
确定旋转所述最小角度后的目标构件的Y轴所在位置;
将所述插入点沿所述Y轴所在位置处的Y轴正方向移动预设距离以生成检查点;
确定所述检查点与所述旋转基准线所属构件的位置关系,作为旋转所述最小角度后的目标构件与所述旋转基准线所属构件的位置关系。
当检查点位于旋转基准线所属构件的内部时,旋转所述最小角度后的目标构件与旋转基准线所属构件的位置关系为:旋转所述最小角度后的目标构件位于旋转基准线所属构件的内部;当检查点位于旋转基准线所属构件的外部时,旋转所述最小角度后的目标构件与旋转基准线所属构件的位置关系为:旋转所述最小角度后的目标构件位于旋转基准线所属构件的外部。
作为一种可选地实施例,步骤S432中的所述根据所述第二构件类型和所述位置关系将旋转所述最小角度后的目标构件旋转至所述目标方位,包括步骤S4321~步骤S4323,其中,:
步骤S4321,判断所述位置关系是否满足所述旋转基准线所属构件与其他构件的预设位置关系条件;
步骤S4322,当所述位置关系满足所述预设位置关系条件时,根据所述第二构件类型将旋转所述最小角度后的目标构件旋转至所述目标方位;
步骤S4323,当所述位置关系不满足所述预设位置关系条件时,将旋转所述最小角度后的目标构件继续旋转180度,获得旋转综合角度后的目标构件;根据所述第二构件类型将旋转所述综合角度后的目标构件旋转至所述目标方位;其中,所述综合角度为所述最小角度和所述180度之和。
当所述位置关系满足所述预设位置关系条件时,需要根据第二构件类型判断是否还需继续旋转;当所述位置关系不满足所述预设位置关系条件时,需要先使位置关系满足要求,再根据第二构件类型判断是否还需继续旋转。
其中,预先设置有第一预设构件类型的构件与其他构件的预设位置关系条件;其中,第一预设构件类型包括拟建、道路和外脚手架。拟建与其他构件的预设位置关系条件为:其他构件处于拟建外部;道路与其他构件的预设位置关系条件为:其他构件处于道路内部;外脚手架与其他构件的预设位置关系条件为:其他构件朝向外脚手架的外侧。
当旋转基准线所属构件为拟建时,如果位置关系为旋转最小角度后的目标构件位于拟建的内部,则将旋转最小角度后的目标构件继续旋转180度,以确保本次旋转后的目标构件处于拟建外部。
当旋转基准线所属构件为道路时,如果位置关系为旋转最小角度后的目标构件位于道路的外部,则将旋转最小角度后的目标构件继续旋转180度,以确保本次旋转后的目标构件处于道路内部。
当旋转基准线所属构件为外脚手架时,如果旋转基准线为外脚手架基线且位置关系为旋转最小角度后的目标构件位于外脚手架外部,则将旋转最小角度后的目标构件继续旋转180度;如果旋转基准线不是外脚手架基线且位置关系为旋转最小角度后的目标构件位于外脚手架内部,则将旋转最小角度后的目标构件继续旋转180度。
作为一种可选地实施例,步骤S4322包括:
当所述第二构件类型不属于第二预设构件类型时,或者当所述第二构件类型属于所述第二预设构件类型且第一方向关系满足所述目标构件与其他构件的预设方向关系条件时,确定旋转所述最小角度后的目标构件处于所述目标方位;
当所述第二构件类型属于所述第二预设构件类型且第一方向关系不满足所述预设方向关系条件时,直接将旋转所述最小角度后的目标构件旋转至所述目标方位,以使得旋转至所述目标方位的目标构件与所述旋转基准线所属构件的方向关系满足所述预设方向关系条件;
其中,所述第一方向关系为旋转所述最小角度后的目标构件与所述旋转基准线所属构件的方向关系,该目标方位为使当前方位的目标构件与旋转基准线所属构件的方向关系满足预设方向关系条件。
作为一种可选地实施例,步骤S4323中所述根据所述第二构件类型将旋转所述综合角度后的目标构件旋转至所述目标方位,包括:
当所述第二构件类型不属于第二预设构件类型时,或者当所述第二构件类型属于所述第二预设构件类型且第二方向关系满足所述目标构件与其他构件的预设方向关系条件时,确定旋转所述最小角度后的目标构件处于所述目标方位;
当所述第二构件类型属于所述第二预设构件类型且第二方向关系不满足所述预设方向关系条件时,直接将旋转所述综合角度后的目标构件旋转至所述目标方位,以使得旋转至所述目标方位的目标构件与所述旋转基准线所属构件的方向关系满足所述预设方向关系条件;
其中,所述第二方向关系为旋转所述综合角度后的目标构件与所述旋转基准线所属构件的方向关系,该目标方位为使当前方位的目标构件与旋转基准线所属构件的方向关系满足预设方向关系条件。
具体地,预先设置有第二预设构件类型的构件与其他构件的预设方向关系条件;其中,第二预设构件类型包括安全通道,安全通道与其他构件的预设方向关系条件为:当其他构件为拟建时,安全通道的通行方向垂直于拟建中过插入点的拟建构造线,也即当旋转基准线所属构件为拟建时,安全通道的通行方向垂直于旋转基准线;当其他构件为外脚手架时,安全通道的通行方向垂直于外脚手架中过插入点的外脚手架构造线,也即当旋转基准线所属构件为外脚手架时,安全通道的通行方向垂直于旋转基准线;当其他构件为道路时,安全通道的通行方向平行于道路中过插入点的道路构造线,也即当旋转基准线所属构件为道路时,安全通道的通行方向平行于旋转基准线。表1为不同构件类别的位置关系条件和方向关系条件如下表1所示,其中,表1中的模型线为除目标构件之外的已插入构件的构造线,CAD线为除已插入构件之外的二维图形的构造线。
表1不同构件类别的位置关系条件和方向关系条件
作为一种可选地实施例,为了满足使部分用户在插入构件的过程中希望可以在基于自动旋转的结果之上更灵活地对构件的方向进行调整的需求,本实施例提供了一种方案使得在确定插入构件之前允许用户对构件进行旋转,也即所述将旋转至所述目标方位的目标构件插入至所述BIM建筑模型内包括:当检测到目标构件旋转指令,将旋转至所述目标方位的目标构件朝所述目标方向继续转换预设角度;判断是否再次检测到所述目标构件旋转指令;若是则朝所述目标方向继续将该目标构件旋转预设角度;若否则将本次旋转后的目标构件所在的方位作为新的目标方位,并将旋转至所述新的目标方位的目标构件插入至所述BIM建筑模型内。
如图6所示,每次点击空格键可将目标构件顺时针旋转90度,并实时更新预览效果。
为了更好的理解本发明,以目标构件尚未插入至BIM建筑模型为例,通过图7所示的流程图对本发明进行阐述。如图7所示,首先获取目标构件,当目标构件移动至目标工程图内后捕捉目标构件的插入点,判断插入点是否在建筑对象构造线上,若否则直接插入目标构件,若是则高亮过插入点的一条建筑对象构造线。判断用户是否开启了自动旋转功能且高亮的建筑对象构造线是否作为旋转基准线,若是则旋转目标构件至目标方位并判断是否检测到通过Tab键切换高亮线的指令,若否则直接判断是否检测到通过Tab键切换高亮线的指令。当检测到切换高亮线的指令时重新返回高亮过插入点的一条建筑对象构造线的步骤,当未检测到切换高亮线的指令时判断是否检测到通过空格继续改变构件方向的指令,若是则将目标构件继续旋转预设角度并判断是否插入目标构件,若否则直接判断是否插入目标构件。若不插入目标构件则重新返回捕捉目标构件的插入点的步骤,若插入目标构件则结束本流程。
本发明在放置构件的过程中实现了对构件进行自动旋转的目的,具有以下优点:
1、自动调整构件至符合业务规范的正确方向,提高对于单个构件放置的效率,进而提升用户的建模效率;
2、当需要沿着目标工程图纸中原本便已存在二维图形的构造线的方向布置构件时,构件会自动旋转至与该构造线同向或垂直于该构造线,并实时更新预览效果,用户无需再次根据该构造线的方向手动地对构件进行旋转。
3、当目标构件与已插入构件在业务上有强方向关系要求时,在放置过程中,这类构件会自动旋转为符合业务要求的方向,用户无需在放置后,根据其他构件的方向来人为推断当前构件的正确方向后再对构件进行旋转操作,降低了建模软件对用户业务知识水平的要求,降低了BIM建模的门槛,另一方面也提高了用户建模的效率。
实施例二
本发明的实施例二还提供了一种确定构件方向的装置,该确定构件方向的装置与上述实施例一提供的方法相对应,相应的技术特征和技术效果在本实施例中不再详述,相关之处可参考上述实施例一。具体地,图8为实施例二提供的确定构件方向的装置的框图。如图8所示,该确定构件方向的装置800可以包括:
第一确定模块801,用于确定目标构件在BIM建筑模型内的插入点;
第二确定模块802,用于确定过所述插入点且与所述目标构件的X轴平行或重叠的直线,并将该直线与所述目标构件的重叠线段作为旋转对齐线;
识别模块803,用于在所述BIM建筑模型内识别出过所述插入点的建筑对象构造线作为旋转基准线;
旋转模块804,用于根据所述旋转对齐线和所述旋转基准线的角度关系旋转所述目标构件至目标方位。
可选地,所述旋转模块具体用于:朝目标方向确定所述旋转对齐线到所述旋转基准线或所述旋转基准线的切线的最小角度;其中,所述目标方向为顺时针方向或逆时针方向;将所述目标构件朝所述目标方向旋转所述最小角度,以使得旋转所述最小角度后的旋转对齐线与所述旋转基准线或所述旋转基准线的切线重叠;确定所述旋转基准线所属的建筑对象,并根据所述旋转基准线所属的建筑对象将旋转所述最小角度后的目标构件旋转至所述目标方位。
可选地,所述旋转模块在执行所述根据所述旋转基准线所属的建筑对象将旋转所述最小角度后的目标构件旋转至所述目标方位时,具体用于:当所述旋转基准线所属的建筑对象为所述BIM建筑模型内除所有已插入构件之外的二维图形时,确定旋转所述最小角度后的目标构件处于所述目标方位;当所述旋转基准线所属的建筑对象为所述BIM建筑模型内除所述目标构件之外的已插入构件时:确定所述旋转基准线所属构件的第一构件类型;当所述第一构件类型不属于第一预设构件类型时,确定旋转所述最小角度后的目标构件处于所述目标方位;当所述第一构件类型属于所述第一预设构件类型时,确定所述目标构件的第二构件类型,确定旋转所述最小角度后的目标构件与所述旋转基准线所属构件的位置关系,并根据所述第二构件类型和所述位置关系将旋转所述最小角度后的目标构件旋转至所述目标方位。
可选地,所述旋转模块在执行所述确定旋转所述最小角度后的目标构件与所述旋转基准线所属构件的位置关系时,具体用于:确定旋转所述最小角度后的目标构件的Y轴所在位置;将所述插入点沿所述Y轴所在位置处的Y轴正方向移动预设距离以生成检查点;确定所述检查点与所述旋转基准线所属构件的位置关系,作为旋转所述最小角度后的目标构件与所述旋转基准线所属构件的位置关系。
可选地,所述旋转模块在执行所述根据所述第二构件类型和所述位置关系将旋转所述最小角度后的目标构件旋转至所述目标方位时,具体用于:判断所述位置关系是否满足所述旋转基准线所属构件与其他构件的预设位置关系条件;当所述位置关系满足所述预设位置关系条件时,根据所述第二构件类型将旋转所述最小角度后的目标构件旋转至所述目标方位;当所述位置关系不满足所述预设位置关系条件时,将旋转所述最小角度后的目标构件继续旋转180度,获得旋转综合角度后的目标构件;根据所述第二构件类型将旋转所述综合角度后的目标构件旋转至所述目标方位;其中,所述综合角度为所述最小角度和所述180度之和。
可选地,所述旋转模块在执行所述根据所述第二构件类型将旋转所述最小角度后的目标构件旋转至所述目标方位时,具体用于:当所述第二构件类型不属于第二预设构件类型时,或者当所述第二构件类型属于所述第二预设构件类型且第一方向关系满足所述目标构件与其他构件的预设方向关系条件时,确定旋转所述最小角度后的目标构件处于所述目标方位;当所述第二构件类型属于所述第二预设构件类型且第一方向关系不满足所述预设方向关系条件时,直接将旋转所述最小角度后的目标构件旋转至所述目标方位,以使得旋转至所述目标方位的目标构件与所述旋转基准线所属构件的方向关系满足所述预设方向关系条件;其中,所述第一方向关系为旋转所述最小角度后的目标构件与所述旋转基准线所属构件的方向关系。
可选地,所述旋转模块在执行所述根据所述第二构件类型将旋转所述综合角度后的目标构件旋转至所述目标方位时,具体用于:当所述第二构件类型不属于第二预设构件类型时,或者当所述第二构件类型属于所述第二预设构件类型且第二方向关系满足所述目标构件与其他构件的预设方向关系条件时,确定旋转所述综合角度后的目标构件处于所述目标方位;当所述第二构件类型属于所述第二预设构件类型且第二方向关系不满足所述预设方向关系条件时,直接将旋转所述综合角度后的目标构件旋转至所述目标方位,以使得旋转至所述目标方位的目标构件与所述旋转基准线所属构件的方向关系满足所述预设方向关系条件;其中,所述第二方向关系为旋转所述综合角度后的目标构件与所述旋转基准线所属构件的方向关系。
可选地,所述旋转模块在执行所述在所述BIM建筑模型内识别出过所述插入点的建筑对象构造线作为旋转基准线时,具体用于:当过所述插入点的建筑对象构造线唯一时,直接该建筑对象构造线作为所述旋转基准线;当过所述插入点的建筑对象构造线不唯一时:从过所述插入点的所有建筑对象构造线中筛选出图形深度最小的建筑对象构造线作为所述旋转基准线;当检测到旋转基准线切换指令时,按照图形深度从小到大的顺序从过所述插入点的所有建筑对象构造线中筛选出下一图形深度的建筑对象构造线,并将当前的旋转基准线切换为筛选出的下一图形深度的建筑对象构造线。
实施例三
图9为实施例三提供的适于实现确定构件方向的方法的计算机设备的框图。本实施例中,计算机设备900可以是执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图9所示,本实施例的计算机设备900至少包括但不限于:可通过系统总线相互通信连接的存储器901、处理器902、网络接口903。需要指出的是,图9仅示出了具有组件901-903的计算机设备900,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,存储器903至少包括一种类型的计算机可读存储介质,可读存储介质包括包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器901可以是计算机设备900的内部存储单元,例如该计算机设备900的硬盘或内存。在另一些实施例中,存储器901也可以是计算机设备900的外部存储设备,例如该计算机设备900上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器901还可以既包括计算机设备900的内部存储单元也包括其外部存储设备。在本实施例中,存储器901通常用于存储安装于计算机设备900的操作系统和各类应用软件,例如确定构件方向的方法的程序代码等。
处理器902在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器902通常用于控制计算机设备900的总体操作。例如执行与计算机设备900进行数据交互或者通信相关的控制和处理等。本实施例中,处理器902用于运行存储器901中存储的确定构件方向的方法的步骤的程序代码。
在本实施例中,存储于存储器901中的确定构件方向的方法还可以被分割为一个或者多个程序模块,并由一个或多个处理器(本实施例为处理器902)所执行,以完成本发明。
网络接口903可包括无线网络接口或有线网络接口,该网络接口903通常用于在计算机设备900与其他计算机设备之间建立通信链接。例如,网络接口903用于通过网络将计算机设备900与外部终端相连,在计算机设备900与外部终端之间的建立数据传输通道和通信链接等。网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobile communication,简称为GSM)、宽带码分多址(Wideband CodeDivision Multiple Access,简称为WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi等无线或有线网络。
实施例四
本实施例还提供一种计算机可读存储介质,包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等,其上存储有计算机程序,所述计算机程序被处理器执行时实现确定构件方向的方法的步骤。
显然,本领域的技术人员应该明白,上述的本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明实施例不限制于任何特定的硬件和软件结合。
需要说明的是,本发明实施例序号仅仅为了描述,并不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种确定构件方向的方法,其特征在于,所述方法包括:
确定目标构件在BIM建筑模型内的插入点;
确定过所述插入点且与所述目标构件的X轴平行或重叠的直线,并将该直线与所述目标构件的重叠线段作为旋转对齐线;
在所述BIM建筑模型内识别出过所述插入点的建筑对象构造线作为旋转基准线;
根据所述旋转对齐线和所述旋转基准线的角度关系旋转所述目标构件至目标方位。
2.根据权利要求1所述的方法,其特征在于,所述根据所述旋转对齐线和所述旋转基准线的角度关系旋转所述目标构件至目标方位,包括:
朝目标方向确定所述旋转对齐线到所述旋转基准线或所述旋转基准线的切线的最小角度;其中,所述目标方向为顺时针方向或逆时针方向;
将所述目标构件朝所述目标方向旋转所述最小角度,以使得旋转所述最小角度后的旋转对齐线与所述旋转基准线或所述旋转基准线的切线重叠;
确定所述旋转基准线所属的建筑对象,并根据所述旋转基准线所属的建筑对象将旋转所述最小角度后的目标构件旋转至所述目标方位。
3.根据权利要求2所述的方法,其特征在于,所述根据所述旋转基准线所属的建筑对象将旋转所述最小角度后的目标构件旋转至所述目标方位,包括:
当所述旋转基准线所属的建筑对象为所述BIM建筑模型内除所有已插入构件之外的二维图形时,确定旋转所述最小角度后的目标构件处于所述目标方位;
当所述旋转基准线所属的建筑对象为所述BIM建筑模型内除所述目标构件之外的已插入构件时:
确定所述旋转基准线所属构件的第一构件类型;
当所述第一构件类型不属于第一预设构件类型时,确定旋转所述最小角度后的目标构件处于所述目标方位;
当所述第一构件类型属于所述第一预设构件类型时,确定所述目标构件的第二构件类型,确定旋转所述最小角度后的目标构件与所述旋转基准线所属构件的位置关系,并根据所述第二构件类型和所述位置关系将旋转所述最小角度后的目标构件旋转至所述目标方位。
4.根据权利要求3所述的方法,其特征在于,所述确定旋转所述最小角度后的目标构件与所述旋转基准线所属构件的位置关系,包括:
确定旋转所述最小角度后的目标构件的Y轴所在位置;
将所述插入点沿所述Y轴所在位置处的Y轴正方向移动预设距离以生成检查点;
确定所述检查点与所述旋转基准线所属构件的位置关系,作为旋转所述最小角度后的目标构件与所述旋转基准线所属构件的位置关系。
5.根据权利要求3所述的方法,其特征在于,所述根据所述第二构件类型和所述位置关系将旋转所述最小角度后的目标构件旋转至所述目标方位,包括:
判断所述位置关系是否满足所述旋转基准线所属构件与其他构件的预设位置关系条件;
当所述位置关系满足所述预设位置关系条件时,根据所述第二构件类型将旋转所述最小角度后的目标构件旋转至所述目标方位;
当所述位置关系不满足所述预设位置关系条件时,将旋转所述最小角度后的目标构件继续旋转180度,获得旋转综合角度后的目标构件;根据所述第二构件类型将旋转所述综合角度后的目标构件旋转至所述目标方位;其中,所述综合角度为所述最小角度和所述180度之和。
6.根据权利要求5所述的方法,其特征在于,所述根据所述第二构件类型将旋转所述最小角度后的目标构件旋转至所述目标方位,包括:
当所述第二构件类型不属于第二预设构件类型时,或者当所述第二构件类型属于所述第二预设构件类型且第一方向关系满足所述目标构件与其他构件的预设方向关系条件时,确定旋转所述最小角度后的目标构件处于所述目标方位;
当所述第二构件类型属于所述第二预设构件类型且第一方向关系不满足所述预设方向关系条件时,直接将旋转所述最小角度后的目标构件旋转至所述目标方位,以使得旋转至所述目标方位的目标构件与所述旋转基准线所属构件的方向关系满足所述预设方向关系条件;
其中,所述第一方向关系为旋转所述最小角度后的目标构件与所述旋转基准线所属构件的方向关系。
7.根据权利要求5所述的方法,其特征在于,所述根据所述第二构件类型将旋转所述综合角度后的目标构件旋转至所述目标方位,包括:
当所述第二构件类型不属于第二预设构件类型时,或者当所述第二构件类型属于所述第二预设构件类型且第二方向关系满足所述目标构件与其他构件的预设方向关系条件时,确定旋转所述综合角度后的目标构件处于所述目标方位;
当所述第二构件类型属于所述第二预设构件类型且第二方向关系不满足所述预设方向关系条件时,直接将旋转所述综合角度后的目标构件旋转至所述目标方位,以使得旋转至所述目标方位的目标构件与所述旋转基准线所属构件的方向关系满足所述预设方向关系条件;
其中,所述第二方向关系为旋转所述综合角度后的目标构件与所述旋转基准线所属构件的方向关系。
8.根据权利要求1所述的方法,其特征在于,所述在所述BIM建筑模型内识别出过所述插入点的建筑对象构造线作为旋转基准线,包括:
当过所述插入点的建筑对象构造线唯一时,直接该建筑对象构造线作为所述旋转基准线;
当过所述插入点的建筑对象构造线不唯一时:
从过所述插入点的所有建筑对象构造线中筛选出图形深度最小的建筑对象构造线作为所述旋转基准线;
当检测到旋转基准线切换指令时,按照图形深度从小到大的顺序从过所述插入点的所有建筑对象构造线中筛选出下一图形深度的建筑对象构造线,并将当前的旋转基准线切换为筛选出的下一图形深度的建筑对象构造线。
9.一种确定构件方向的装置,其特征在于,所述装置包括:
第一确定模块,用于确定目标构件在BIM建筑模型内的插入点;
第二确定模块,用于确定过所述插入点且与所述目标构件的X轴平行或重叠的直线,并将该直线与所述目标构件的重叠线段作为旋转对齐线;
识别模块,用于在所述BIM建筑模型内识别出过所述插入点的建筑对象构造线作为旋转基准线;
旋转模块,用于根据所述旋转对齐线和所述旋转基准线的角度关系旋转所述目标构件至目标方位。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1~9任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210767807.2A CN115062388A (zh) | 2022-06-30 | 2022-06-30 | 一种确定构件方向的方法、装置和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210767807.2A CN115062388A (zh) | 2022-06-30 | 2022-06-30 | 一种确定构件方向的方法、装置和计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115062388A true CN115062388A (zh) | 2022-09-16 |
Family
ID=83204437
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210767807.2A Pending CN115062388A (zh) | 2022-06-30 | 2022-06-30 | 一种确定构件方向的方法、装置和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115062388A (zh) |
-
2022
- 2022-06-30 CN CN202210767807.2A patent/CN115062388A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110457843B (zh) | 三维管线模型生成方法、装置、计算机设备和存储介质 | |
US20220350939A1 (en) | Systems and Methods for Improved Parametric Modeling of Structures | |
CN112632844A (zh) | 从工程制图中提取和分析信息 | |
CN105631745A (zh) | 一种资产视图构建方法及装置 | |
CN114254586A (zh) | 自动排布图纸标注的方法、电子设备和计算机程序产品 | |
CN114565703A (zh) | 一种调整集中标注的方法、装置、设备及可读存储介质 | |
CN114818093B (zh) | 装配式钢结构模块建筑的柱梁生成方法、装置及设备 | |
CN112365590A (zh) | 图纸生成方法、装置、计算机设备和存储介质 | |
CN114581639A (zh) | 一种基于梁平法施工图生成bim模型中梁钢筋信息的方法 | |
CN110458184A (zh) | 光学字符识别辅助方法、装置、计算机设备及存储介质 | |
CN115062388A (zh) | 一种确定构件方向的方法、装置和计算机可读存储介质 | |
CN109934894B (zh) | 一种cad出图方法、装置和计算机可读存储介质 | |
CN111913777A (zh) | 信息处理方法、装置、电子设备及存储介质 | |
CN111931746B (zh) | 一种车损判定方法、装置、计算机设备及可读存储介质 | |
CN114444185A (zh) | 原位标注的识别方法、装置及电子设备 | |
CN113026457B (zh) | 道路施工的标段确定方法及确定装置 | |
CN113254218A (zh) | 模型的资源部署方法、系统、设备及存储介质 | |
CN112884899A (zh) | 三维构件的生成方法、装置、计算机设备及存储介质 | |
CN113192202A (zh) | 建筑模型的矢量图的表示方法和计算机可读存储介质 | |
CN103369834B (zh) | 用于pcb制作的靶标参数处理方法和装置 | |
CN111105499A (zh) | 数字模型的真实性验证 | |
CN111914359B (zh) | 一种风电叶片后缘间隙模拟方法、系统、设备及存储介质 | |
CN113298271B (zh) | 一种光纤网络资源数字化巡检方法及系统 | |
CN113434935A (zh) | 标注临时尺寸的方法、装置、计算机设备和可读存储介质 | |
CN113761635A (zh) | 钢筋加工形状的确定方法及钢筋加工方法 |
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 |