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

建筑排布方案的确定方法、装置、电子设备和存储介质与流程

2022-06-22 23:18:02 来源:中国专利 TAG:


1.本技术涉及建筑技术领域,尤其涉及一种建筑排布方案的确定方法、装置、电子设备和存储介质。


背景技术:

2.在建筑领域,往往需要根据实际情况在建筑场地中进行建筑的自动排布。目前一般采用多边形剪裁算法在建筑设计领域进行建筑自动排布应用的优化和适配。其中,greiner-hormann裁剪算法,sutherland-hodgman算法,vatti裁剪算法,weiler-atherton裁剪算法是公认的可以在合理时间内处理一般情况的多边形裁剪算法。由于建筑场地以及建筑形态的限制,即剪裁形状及被剪裁形状的限制,需要对切割算法在此场景下进行适配性优化。
3.目前场地适配性优化主要包括两种方式,一种是用户设定指定路径,在指定路径内进行建筑排布,另一种是是通过模拟建筑的碰撞检测及碰撞移动,使两建筑之间不存在碰撞点而实现排布。
4.上述排布方式都存在的问题为:无法最大化利用建筑场地,造成场地面积浪费。


技术实现要素:

5.本技术实施例的目的在于提供一种建筑排布方案的确定方法、装置、电子设备和存储介质,以解决场地面积浪费的问题。具体技术方案如下:第一方面,提供了一种建筑排布方案的确定方法,所述方法包括:确定建筑场地轮廓中的沿街线,其中,所述沿街线为所述建筑场地轮廓上的任意一条轮廓线;将所述沿街线按照预设建筑宽度和预设建筑前后间距交替的顺序进行平移,得到至少包含所述沿街线的一个平行线段的四边形的建筑排布区域,其中,所述建筑排布区域的宽度为所述预设建筑宽度;确定所述建筑排布区域内两个平行线段中的最短线段;按照建筑长度沿所述最短线段的方向,预设建筑长度和预设建筑左右间距之间长度和值小于所述最短线段的长度的排布规则,确定所述建筑排布区域中的建筑排布方案。
6.可选地,所述将所述沿街线按照预设建筑宽度和预设建筑前后间距交替的顺序进行平移,得到至少包含所述沿街线的一个平行线段的四边形的建筑排布区域包括:将所述沿街线按照预设建筑宽度和预设建筑前后间距交替的顺序进行平移,直至全部平行线覆盖所述建筑场地轮廓,得到每条平行线和所述建筑场地轮廓的有效交点;将位于同一平行线上的有效交点进行连线,得到初始线段;根据至少两条初始线段得到匹配线段组,其中,所述匹配线段组包括同一预设建筑宽度两侧的匹配线段;依次连接匹配线段的端点和匹配线段之间的轮廓顶点,得到有效区域;
按照预设划分方案,从所述有效区域的划分出四边形区域作为建筑排布区域。
7.可选地,所述得到每条平行线和所述建筑场地轮廓的有效交点包括:确定每条平行线和所述建筑场地轮廓的初始交点;若初始交点为一个,则删除所述初始交点;若初始交点为两个或四个,则将所述初始交点作为有效交点;若初始交点为三个,确定每个初始交点的参数值,其中,所述建筑场地轮廓的每个顶点按照预设顺序对应有整数值;从所述参数值中选取非整数值的两个初始交点作为有效交点。
8.可选地,所述将位于同一平行线上的有效交点进行连线,得到初始线段包括:若位于同一平行线上的有效交点为两个,则将两个所述有效交点连线得到初始线段;若同一平行线上的有效交点为四个,则按平行线的方向分别将相邻的两个有效交点连线,得到两条不具有重叠交点的初始线段。
9.可选地,所述根据至少两条初始线段得到匹配线段组包括:确定所述预设建筑宽度两侧的初始线段,其中,所述初始线段的数量为两条、三条或四条;确定对侧的初始线段之间的最短距离;若所述最短距离为所述预设建筑宽度,则根据所述对侧的初始线段构成匹配线段组;若所述最短距离超出所述预设建筑宽度,则删除无法和对侧的初始线段构成匹配线段组的初始线段,并根据剩余的初始线段构成匹配线段组。
10.可选地,所述按照预设划分方案,从所述有效区域的划分出四边形区域作为建筑排布区域包括:在所述有效区域中包括两条匹配线段的情况下,以任意一条匹配线段作为基准线段;在所述两条匹配线段的同侧端点之间均存在轮廓顶点的情况下,确定所述有效区域中的每个顶点在所述基准线段上的垂点,其中,落在所述基准线段之外的垂点舍弃;根据所述垂点和所述垂点在所述匹配线段上的映射点,构建四方形区域。
11.可选地,所述根据所述垂点和所述垂点在所述匹配线段上的映射点,构建四方形区域包括:将沿所述匹配线段的方向作为目标方向,并将最短的匹配线段两端的顶点划分为起始点和终点;按照所述目标方向,确定起始点在基准线段上参数值最大的垂点,并将所述参数值最大的垂点映射到匹配线段;确定终点在基准线段上参数值最小的垂点,并将所述参数值最小的垂点映射到匹配线段;根据所述最大的垂点、所述最大的垂点的映射点、所述最小的垂点和所述最小的垂点的映射点,构建四方形区域。
12.可选地,所述按照预设划分方案,从所述有效区域的划分出四边形区域作为建筑排布区域包括:
在所述有效区域中包括三条匹配线段的情况下,以同一平行线上的唯一一条匹配线段作为基准线段;确定所述基准线段对侧的位于同一平行线上的两条匹配线段的之间的轮廓顶点;确定所述轮廓顶点在所述基准线段上的垂点;根据轮廓顶点和垂点连成的直线将有效区域划分为两个子区域,其中,每个子区域包括两条匹配线段;将每个子区域按照包括两条匹配线段的方式,划分出四边形区域作为建筑排布区域。
13.可选地,按照建筑长度沿所述最短线段的方向,预设建筑长度和预设建筑左右间距之间长度和值小于所述最短线段的长度的排布规则,确定所述建筑排布区域中的建筑排布方案包括:将建筑长度沿所述最短线段的方向,通过预设建筑长度和预设建筑左右间距之间长度和值小于所述最短线段的长度的排布规则,确定建筑初始数量和建筑初始长度;在所述建筑排布区域中根据所述建筑初始数量和所述建筑初始数量进行初始排布;在初始排布后,根据所述建筑排布区域中的剩余区域进行建筑数量和建筑长度的调整。
14.可选地,根据所述建筑排布区域中的剩余区域进行建筑数量和建筑长度的调整包括:在所述剩余区域的长度小于预设比例的预设建筑长度的情况下,将所述剩余区域的长度分至已排布的建筑中;在所述剩余区域的长度大于等于预设比例的预设建筑长度的情况下,在所述剩余区域分布建筑。
15.可选地,根据所述建筑排布区域中的剩余区域进行建筑数量和建筑长度的调整之后,所述方法还包括:确定所述建筑的建筑形状,其中,所述建筑形状为矩形或非矩形四边形;对所述建筑排布区域已排布的建筑进行形状调整。
16.第二方面,提供了一种建筑排布方案的确定装置,所述装置包括:第一确定模块,用于确定建筑场地轮廓中的沿街线,其中,所述沿街线为所述建筑场地轮廓上的任意一条轮廓线;得到模块,用于将所述沿街线按照预设建筑宽度和预设建筑前后间距交替的顺序进行平移,得到至少包含所述沿街线的一个平行线段的四边形的建筑排布区域,其中,所述建筑排布区域的宽度为所述预设建筑宽度;第二确定模块,用于确定所述建筑排布区域内两个平行线段中的最短线段;第三确定模块,用于按照建筑长度沿所述最短线段的方向,预设建筑长度和预设建筑左右间距之间长度和值小于所述最短线段的长度的排布规则,确定所述建筑排布区域中的建筑排布方案。
17.第三方面,提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现任一的建筑排布方案的确定方法步骤。
18.第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现任一的建筑排布方案的确定方法步骤。
19.本技术实施例有益效果:在本技术中,终端通过沿街线的平移,构成四边形的建筑排布区域,建筑排布区域的宽度为预设建筑宽度,建筑排布区域之间的间距为预设建筑前后间距。终端以建筑排布区域内的最短线段的方向为建筑长度的方向,使预设建筑长度和预设建筑左右间距的长度和值小于最短线段的长度。
20.本技术中的建筑排布区域,在宽度方向只能排布一个建筑,在长度方向可以排布至少一个建筑,建筑的排布贴合建筑排布区域的边界,建筑排布具有规范性,提高了建筑场地的使用率。另外,本技术还考虑了建筑的前后间距和左右间距,有利于使建筑具有良好的日照和通风条件。
21.当然,实施本技术的任一产品或方法并不一定需要同时达到以上的所有优点。
附图说明
22.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
23.图1为本技术实施例提供的一种建筑排布方案的确定方法硬件环境示意图;图2为本技术实施例提供的一种建筑排布方案的确定的方法流程图;图3为本技术实施例提供的建筑排布区域的示意图;图4为本技术实施例提供的生成建筑排布区域的方法流程图;图5为本技术实施例提供的有效交点的示意图;图6为本技术实施例提供的初始线段的示意图;图7-1为本技术实施例提供的三条匹配线段的一种示意图;图7-2为本技术实施例提供的两条匹配线段的一种示意图;图7-3为本技术实施例提供的两条匹配线段的另一种示意图;图8为本技术实施例提供的划分四方形区域的示意图;图9为本技术实施例提供的划分子区域的示意图;图10为本技术实施例提供的建筑形状为矩形的示意图;图11为本技术实施例提供的建筑形状为非矩形四边形的示意图;图12为本技术实施例提供的一种建筑排布方案的确定装置的结构示意图;图13为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
24.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是
本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
25.在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本技术的说明,其本身并没有特定的意义。因此,“模块”与“部件”可以混合地使用。
26.为了解决背景技术中提及的问题,根据本技术实施例的一方面,提供了一种建筑排布方案的确定方法的实施例。
27.可选地,在本技术实施例中,上述建筑排布方案的确定方法可以应用于如图1所示的由终端101和服务器103所构成的硬件环境中。如图1所示,服务器103通过网络与终端101进行连接,可用于为终端或终端上安装的客户端提供服务,可在服务器上或独立于服务器设置数据库105,用于为服务器103提供数据存储服务,上述网络包括但不限于:广域网、城域网或局域网,终端101包括但不限于pc、手机、平板电脑等。
28.本技术实施例中的一种建筑排布方案的确定方法可以由服务器103来执行,还可以是由终端101执行,用于生成建筑场地轮廓中的建筑排布方案。
29.下面将结合具体实施方式,以应用于终端为例,对本技术实施例提供的一种建筑排布方案的确定方法进行详细的说明,如图2所示,具体步骤如下:步骤201:确定建筑场地轮廓中的沿街线。
30.其中,沿街线为建筑场地轮廓上的任意一条轮廓线。
31.在本技术实施例中,终端获取预设的建筑场地轮廓,然后将建筑场地轮廓上的任意一条轮廓线作为沿街线。
32.步骤202:将沿街线按照预设建筑宽度和预设建筑前后间距交替的顺序进行平移,得到至少包含沿街线的一个平行线段的四边形的建筑排布区域。
33.其中,建筑排布区域的宽度为预设建筑宽度。
34.在本技术实施例中,终端获取预设建筑宽度和预设建筑前后间距,然后将沿街线按照预设建筑宽度和预设建筑前后间距交替的顺序进行平移,直至沿街线的平行线覆盖该建筑场地轮廓,这样得到了建筑场地轮廓中与沿街线平行的多个平行线段。其中,若沿街线的两侧都有轮廓线,那么沿街线分别往两侧方向进行平移,若沿街线的一侧具有轮廓线,则沿街线往该具有轮廓线的方向进行平移,得到的平行线之间的间距交替为预设建筑宽度和预设建筑前后间距。
35.这样终端得到了建筑场地轮廓中的每个建筑排布区域,建筑排布区域的宽度为预设建筑宽度,建筑排布区域之间的间距为预设建筑前后间距。
36.图3为建筑排布区域的示意图。如图3所示,整个图形为建筑场地轮廓,轮廓线中的加粗线为沿街线,沿街线向左右两侧平移,得到的阴影部分为建筑排布区域。
37.步骤203:确定建筑排布区域内两个平行线段中的最短线段。
38.在本技术实施例中,建筑排布区域的两侧为两个平行线段,终端确定建筑排布区域内两个平行线段中的最短线段。从图3可以看出,矩形框内的线段为最短线段。
39.步骤204:按照建筑长度沿最短线段的方向,预设建筑长度和预设建筑左右间距之间长度和值小于最短线段的长度的排布规则,确定建筑排布区域中的建筑排布方案。
40.在本技术实施例中,终端按照建筑长度沿最短线段的方向进行排布,使预设建筑
长度和预设建筑左右间距的长度的和值小于最短线段的长度,在建筑排布区域中进行建筑的自动排布,得到建筑排布方案。
41.在本技术中,终端通过沿街线的平移,构成四边形的建筑排布区域,建筑排布区域的宽度为预设建筑宽度,建筑排布区域之间的间距为预设建筑前后间距。终端以建筑排布区域内的最短线段的方向为建筑长度的方向,使预设建筑长度和预设建筑左右间距的长度和值小于最短线段的长度。
42.本技术中的建筑排布区域,在宽度方向只能排布一个建筑,在长度方向可以排布至少一个建筑,建筑的排布贴合建筑排布区域的边界,建筑排布具有规范性,提高了建筑场地的使用率。另外,本技术还考虑了建筑的前后间距和左右间距,有利于使建筑具有良好的日照和通风条件。
43.作为一种可选的实施方式,如图4所示,将沿街线按照预设建筑宽度和预设建筑前后间距交替的顺序进行平移,得到至少包含沿街线的一个平行线段的四边形的建筑排布区域包括:步骤401:将沿街线按照预设建筑宽度和预设建筑前后间距交替的顺序进行平移,直至全部平行线覆盖建筑场地轮廓,得到每条平行线和建筑场地轮廓的有效交点。
44.在本技术实施例中,终端将沿街线按照预设建筑宽度和预设建筑前后间距交替的顺序进行平移,直至全部平行线覆盖建筑场地轮廓,得到每条平行线和建筑场地轮廓的初始交点,然后根据初始交点得到有效交点。
45.建筑场地轮廓的每个顶点按照顺时针或逆时针对应有整数值,位于建筑场地轮廓上的交点也对应的非整数的参数值。图5为有效交点的示意图。可以看出,该六边形的建筑场地轮廓的每个顶点的参数值分别为0、1、2、3、4、5。
46.有效交点包括四种情况:若初始交点为一个,则表示平行线与建筑场地的顶点相交,并不符合生成建筑的条件,则删除该初始交点;若初始交点为两个,则将该两个初始交点作为有效交点;若初始交点为三个,则确定每个初始交点的参数值,将整数值的初始交点删除,保留非整数值的两个初始交点作为有效交点。图5中,对于包含3.6、5.7和1三个参数的这条平行线,将1这个初始交点删除,得到3.6和5.7作为有效交点。对于包含3.4、0和1.3三个参数的这条平行线,将0这个初始交点删除,得到3.4和1.3作为有效交点。
47.若初始交点为四个,则分别将两边的两个初始交点作为有效交点。
48.步骤402:将位于同一平行线上的有效交点进行连线,得到初始线段。
49.在本技术实施例中,平行线是指沿街线的一条平行线段所在的直线。位于同一平行线上的有效交点为两个或四个,若位于同一平行线上的有效交点为两个,则将两个有效交点连线得到初始线段;若同一平行线上的有效交点为四个,则按平行线的方向分别将相邻的两个有效交点连线,得到两条不具有重叠交点的初始线段。图6为初始线段的示意图,从图6中可以看到,初始线段的有效交点包括两个和四个两种情况。
50.步骤403:根据至少两条初始线段得到匹配线段组。
51.其中,匹配线段组包括同一预设建筑宽度两侧的匹配线段。
52.在一种实施例中,终端确定同一预设建筑宽度两侧的初始线段,其中,初始线段的
数量为两条、三条或四条,终端从两侧的初始线段分别向对侧的初始线段做垂线,若存在垂点,则通过初始线段构成匹配线段组;若不存在垂点,则删除无法和对侧初始线段构成垂线的初始线段,并根据剩余的初始线段构成匹配线段组。这样匹配线段中包括两条或三条匹配线段。
53.图7-1为三条匹配线段的一种示意图,可以看出,图7-1包括line1、line2和line3三条初始线段。line2和lin3分别向line1做垂线,可以得到line1上的两个垂点,line1分别向line2和line3做垂线,可以得到line2和line3上的两个垂点。那么该三条初始线段都可作为匹配线段,该三条匹配线段构成了匹配线段组。
54.图7-2为两条匹配线段的一种示意图,可以看出,图7-2包括line1、line2和line3三条初始线段。line1和lin2分别向line3做垂线,line3只能得到line2上的垂点,line3分别向line1和line2做垂线,只有line2能得到line3的垂点。那么line2和line3这两条初始线段可作为匹配线段,line2和line3两条匹配线段构成了匹配线段组。
55.图7-3为两条匹配线段的另一种示意图,可以看出,图7-3包括line1、line2、line3和line4四条初始线段。line1和lin2分别向line3和line4做垂线,line1和line3可以互相得到对方的垂点,line2和line4可以互相得到对方的垂点。那么line1和line3这两条初始线段可作为匹配线段,line2和line4这两条初始线段可作为匹配线段,line1和line3构成了匹配线段组,line2和line4构成了匹配线段组。
56.在另一种实施例中,终端确定同一预设建筑宽度两侧的初始线段,其中,初始线段的数量为两条、三条或四条。终端确定对侧的初始线段之间的最短距离,若所述最短距离为所述预设建筑宽度,则根据所述对侧的初始线段构成匹配线段组。示例性地,如图7-1所示,line2、lin3与line1之间的最短距离均是预设建筑宽度,那么该三条初始线段都可作为匹配线段,该三条匹配线段构成了匹配线段组。
57.若所述最短距离超出所述预设建筑宽度,则删除无法和对侧的初始线段构成匹配线段组的初始线段,并根据剩余的初始线段构成匹配线段组。示例性地,如图7-2所示,line2和line3之间的最短距离为所述预设建筑宽度,line1和line3之间的最短距离超出所述预设建筑宽度,那么line1不属于匹配线段,line2和line3这两条初始线段可作为匹配线段,line2和line3两条匹配线段构成了匹配线段组。
58.如图7-3所示,line1和line3之间的最短距离为所述预设建筑宽度,line2和line4之间的最短距离为所述预设建筑宽度,line1和line4之间的最短距离超出所述预设建筑宽度,line2和line3之间的最短距离超出所述预设建筑宽度,那么,line1和line3构成了匹配线段组,line2和line4构成了匹配线段组。
59.步骤404:依次连接匹配线段的端点和匹配线段之间的轮廓顶点,得到有效区域。
60.在本技术实施例中,终端确定匹配线段之间的轮廓顶点,匹配线段的端点和轮廓顶点都具有对应的参数值,终端按照参数值的大小排列顺序,将端点和轮廓顶点依次连接,得到有效区域。如图7-1、7-2和7-3中的阴影部分为有效区域。
61.步骤405:按照预设划分方案,从有效区域的划分出四边形区域作为建筑排布区域。
62.在本技术实施例中,由于建筑都是四边形,为了能使建筑尽量贴合建筑排布区域,提高建筑排布的规范性和场地的利用率,可以从有效区域的划分出四边形区域作为建筑排
布区域。
63.具体地,若有效区域是四边形区域(包括两条平行线段和两条轮廓线),则先不做处理,若有效区域是大于四边形的多边形区域,有效区域中包括两条匹配线段和三条匹配线段两种情况。
64.在一种实施例中,针对有效区域中包括两条匹配线段的情况。
65.若两条匹配线段的同侧端点之间并不存在建筑场地轮廓的轮廓顶点,可以将该同侧两个端点用线段连接,构成四方形区域的一条边。
66.若两条匹配线段的同侧端点之间均并不存在建筑场地轮廓的轮廓顶点,终端以任意一条匹配线段作为基准线段,确定有效区域中的每个顶点在所述基准线段上的垂点,其中,落在基准线段之外的垂点舍弃。终端将沿匹配线段的任一方向作为目标方向,并将最短的匹配线段两端的顶点划分为起始点和终点。
67.终端按照目标方向,确定起始点在基准线段上参数值最大的垂点,并将参数值最大的垂点映射到匹配线段,从确定终点在基准线段上参数值最小的垂点,并将参数值最小的垂点映射到匹配线段,终端根据最大的垂点、最大的垂点的映射点、最小的垂点和最小的垂点的映射点,构建四方形区域。
68.若两条匹配线段的一同侧端点之间存在建筑场地轮廓的轮廓顶点,另一同侧端点之间不存在建筑场地轮廓的轮廓顶点,针对存在轮廓顶点的一侧,采用垂点和映射点作为四方形区域的一条边;针对不存在轮廓顶点的一侧,采用两个端点之间的线段作为四方形区域的一条边,四边形区域的另外两条边为两个匹配线段。
69.图8为划分四方形区域的示意图。有效区域包括0.2-2.3和6.9-2.7这两条匹配线段,以6.9-2.7这条最短的匹配线段为基准线,设定从上往下为目标方向,那么0.2、0、7和6.9为起始点,2.3和2.7为终点。终端按照目标方向,确定0.2、0、7和6.9每个顶点在基准线段上的垂点,那么参数值最大的垂点为7的垂点,终端将7的垂点映射到匹配线段。2.3和2.7为轮廓顶点,那么终端根据7的垂点、7的垂点的映射点、2.3和2.7构成了四方形区域。
70.在另一种实施例中,针对有效区域中包括三条匹配线段的情况,其中一条匹配线段单独处于一条平行线上,另外两条匹配线段位于同一平行线上。终端以同一平行线上的唯一一条匹配线段作为基准线段,然后确定基准线段对侧的位于同一平行线上的两条匹配线段的之间的轮廓顶点,终端从轮廓顶点往基准线段做垂线,得到轮廓顶点在基准线段上的垂点,终端确定轮廓顶点和垂点连成的直线,然后根据该直线将有效区域划分为两个子区域,其中,每个子区域包括两条匹配线段,这样就回到了有效区域中包括两条匹配线段的情况,终端再按照上一实施例的方式,划分出四边形区域作为建筑排布区域。
71.图9为划分子区域的示意图。从图9看出,以lin2和lin3之间的轮廓顶点向lin1做垂线,然后通过该垂线将有效区域划分为两个子区域。
72.终端得到四边形区域后,若确定四边形区域的某个角小于预设角度,则确定该角的相邻两条边,根据该相邻两条边确定大于预设角度的余弦角,从而针对余弦角和相邻两条边重新确定新的四边形区域。这样新的四边形区域的每个角都大于预设角度,可以避免角度过小无法放置四边形建筑。示例性地,预设角度为60度。
73.作为一种可选的实施方式,按照建筑长度沿最短线段的方向,预设建筑长度和预设建筑前后间距之间长度和值小于最短线段的长度的排布规则,确定建筑排布区域中的建
筑排布方案包括:将建筑长度沿最短线段的方向,通过预设建筑长度和预设建筑左右间距之间长度和值小于最短线段的长度的排布规则,确定建筑初始数量和建筑初始长度;在建筑排布区域中根据建筑初始数量和建筑初始数量进行初始排布;在初始排布后,根据建筑排布区域中的剩余区域进行建筑数量和建筑长度的调整。
74.在本技术实施例中,服务器将建筑长度沿最短线段的方向排布,使预设建筑长度和预设建筑左右间距之间长度和值小于最短线段的长度,避免建筑长度超出建筑排布区域,这样得到建筑初始数量和建筑初始长度,然后根据建筑初始数量和建筑初始长度进行初始排布,针对剩余区域,若剩余区域的长度小于预设比例的预设建筑长度,则无法再排布新的建筑,则将剩余区域的长度分至已排布的建筑中;若剩余区域的长度大于等于预设比例的预设建筑长度,则还可以排布新的建筑,则在剩余区域排布建筑。
75.其中,确定建筑初始数量和建筑初始长度包括四种情况:情况一:最短线段的长度小于预设建筑长度的二分之一、且实际建筑长度小于30m时,舍弃此块场地。
76.情况二:最短线段的长度小于预设建筑长度的二分之一、且实际建筑长度大于等于30m,或者实际建筑长度小于等于预设建筑长度和建筑左右间距长度之和、且大于等于预设建筑长度的二分之一,则实际建筑的建筑初始数量为1。
77.情况三:最短线段的长度,大于预设建筑长度以及建筑左右间距长度之和、且小于等于2.5倍的预设建筑长度和2倍的左右间距长度之和,实际建筑的建筑初始数量为2。
78.情况四:最短线段的长度,大于2.5倍的建筑长度和2倍的左右间距长度之和,实际建筑的建筑初始数量大于2。
79.对于建筑初始数量大于2的情况,可以先在建筑排布区域的两端分别排布一个建筑,然后在剩余区域再进行建筑数量和长度的调整。
80.作为一种可选的实施方式,根据建筑排布区域中的剩余区域进行建筑数量和建筑长度的调整之后,方法还包括:确定建筑的建筑形状,其中,建筑形状为矩形或非矩形四边形;对建筑排布区域已排布的建筑进行形状调整。
81.终端根据用户操作确定建筑的建筑形状,其中,建筑形状为矩形(平角模式)或非矩形四边形(斜角模式),然后对建筑排布区域已排布的建筑进行形状调整。
82.图10中的建筑形状为矩形,矩形满足大部分建筑形状。
83.图11中的建筑形状为非矩形四边形。非矩形四边形可以使建筑长度场地得到最大化利用。
84.本技术在满足用户对建筑尺寸和建筑间距的基础上,最大化利用建筑场地,建筑排布贴合建筑排布区域,排布更合理,设置建筑间距满足日照和通风要求。
85.基于相同的技术构思,本技术实施例还提供了一种建筑排布方案的确定装置,如图12所示,该装置包括:第一确定模块1201,用于确定建筑场地轮廓中的沿街线,其中,沿街线为建筑场地轮廓上的任意一条轮廓线;得到模块1202,用于将沿街线按照预设建筑宽度和预设建筑前后间距交替的顺序进行平移,得到至少包含沿街线的一个平行线段的四边形的建筑排布区域,其中,建筑排布区域的宽度为预设建筑宽度;
第二确定模块1203,用于确定建筑排布区域内两个平行线段中的最短线段;第三确定模块1204,用于按照建筑长度沿最短线段的方向,预设建筑长度和预设建筑左右间距之间长度和值小于最短线段的长度的排布规则,确定建筑排布区域中的建筑排布方案。
86.可选地,得到模块1202包括:平移单元,用于将沿街线按照预设建筑宽度和预设建筑前后间距交替的顺序进行平移,直至全部平行线覆盖建筑场地轮廓,得到每条平行线和建筑场地轮廓的有效交点;连线单元,用于将位于同一平行线上的有效交点进行连线,得到初始线段;得到单元,用于根据至少两条初始线段得到匹配线段组,其中,匹配线段组包括同一预设建筑宽度两侧的匹配线段;连接单元,用于依次连接匹配线段的端点和匹配线段之间的轮廓顶点,得到有效区域;划分单元,用于按照预设划分方案,从有效区域的划分出四边形区域作为建筑排布区域。
87.可选地,平移单元用于:确定每条平行线和建筑场地轮廓的初始交点;若初始交点为一个,则删除初始交点;若初始交点为两个或四个,则将初始交点作为有效交点;若初始交点为三个,确定每个初始交点的参数值,其中,建筑场地轮廓的每个顶点按照预设顺序对应有整数值;从参数值中选取非整数值的两个初始交点作为有效交点。
88.可选地,连线单元用于:若位于同一平行线上的有效交点为两个,则将两个有效交点连线得到初始线段;若同一平行线上的有效交点为四个,则按平行线的方向分别将相邻的两个有效交点连线,得到两条不具有重叠交点的初始线段。
89.可选地,得到单元用于:确定预设建筑宽度两侧的初始线段,其中,初始线段的数量为两条、三条或四条;确定对侧的初始线段之间的最短距离;若所述最短距离为所述预设建筑宽度,则根据所述对侧的初始线段构成匹配线段组;若所述最短距离超出所述预设建筑宽度,则删除无法和对侧的初始线段构成匹配线段组的初始线段,并根据剩余的初始线段构成匹配线段组。
90.可选地,划分单元,用于:在有效区域中包括两条匹配线段的情况下,以任意一条匹配线段作为基准线段;在两条匹配线段的同侧端点之间均存在轮廓顶点的情况下,确定有效区域中的每个顶点在所述基准线段上的垂点,其中,落在基准线段之外的垂点舍弃;根据垂点和垂点在匹配线段上的映射点,构建四方形区域。
91.可选地,划分单元,还用于:将沿匹配线段的方向作为目标方向,并将最短的匹配线段两端的顶点划分为起始点和终点;
按照目标方向,确定起始点在基准线段上参数值最大的垂点,并将参数值最大的垂点映射到匹配线段;确定终点在基准线段上参数值最小的垂点,并将参数值最小的垂点映射到匹配线段;根据最大的垂点、最大的垂点的映射点、最小的垂点和最小的垂点的映射点,构建四方形区域。
92.可选地,划分单元,还用于:在有效区域中包括三条匹配线段的情况下,以同一平行线上的唯一一条匹配线段作为基准线段;确定基准线段对侧的位于同一平行线上的两条匹配线段的之间的轮廓顶点;确定轮廓顶点在基准线段上的垂点;根据轮廓顶点和垂点连成的直线将有效区域划分为两个子区域,其中,每个子区域包括两条匹配线段;将每个子区域按照包括两条匹配线段的方式,划分出四边形区域作为建筑排布区域。
93.可选地,第三确定模块1204,用于:将建筑长度沿最短线段的方向,通过预设建筑长度和预设建筑左右间距之间长度和值小于最短线段的长度的排布规则,确定建筑初始数量和建筑初始长度;在建筑排布区域中根据建筑初始数量和建筑初始数量进行初始排布;在初始排布后,根据建筑排布区域中的剩余区域进行建筑数量和建筑长度的调整。
94.可选地,第三确定模块1204,还用于:在剩余区域的长度小于预设比例的预设建筑长度的情况下,将剩余区域的长度分至已排布的建筑中;在剩余区域的长度大于等于预设比例的预设建筑长度的情况下,在剩余区域分布建筑。
95.可选地,该装置还用于:确定建筑的建筑形状,其中,建筑形状为矩形或非矩形四边形;对建筑排布区域已排布的建筑进行形状调整。
96.根据本技术实施例的另一方面,本技术提供了一种电子设备,如图13所示,包括存储器1303、处理器1301、通信接口1302及通信总线1304,存储器1303中存储有可在处理器1301上运行的计算机程序,存储器1303、处理器1301通过通信接口1302和通信总线1304进行通信,处理器1301执行计算机程序时实现上述方法的步骤。
97.上述电子设备中的存储器、处理器通过通信总线和通信接口进行通信。所述通信总线可以是外设部件互连标准(peripheral component interconnect,简称pci)总线或扩展工业标准结构(extended industry standard architecture,简称eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。
98.存储器可以包括随机存取存储器(random access memory,简称ram),也可以包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
99.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(digital signal processing,简称dsp)、专用集成电路(application specific integrated circuit,简称asic)、现场可编程门阵列(field-programmable gate array,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
100.根据本技术实施例的又一方面还提供了一种具有处理器可执行的非易失的程序代码的计算机可读介质。
101.可选地,在本技术实施例中,计算机可读介质被设置为存储用于所述处理器执行上述方法的程序代码:可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
102.本技术实施例在具体实现时,可以参阅上述各个实施例,具有相应的技术效果。
103.可以理解的是,本文描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(application specific integrated circuits,asic)、数字信号处理器(digital signal processing,dsp)、数字信号处理设备(dsp device,dspd)、可编程逻辑设备(programmable logic device,pld)、现场可编程门阵列(field-programmable gate array,fpga)、通用处理器、控制器、微控制器、微处理器、用于执行本技术所述功能的其它电子单元或其组合中。
104.对于软件实现,可通过执行本文所述功能的单元来实现本文所述的技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
105.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
106.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
107.在本技术所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
108.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
109.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
110.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
111.以上所述仅是本技术的具体实施方式,使本领域技术人员能够理解或实现本技术。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本技术的精神或范围的情况下,在其它实施例中实现。因此,本技术将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献