System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及计算机辅助设计领域,具体涉及排布方法、装置、计算机设备及存储介质。
技术介绍
1、排布是设计领域(尤其是建筑设计)避不开的问题。例如,多个楼体在地块的排布,房间的排布,桌椅的排布等等。其中,这些排布的对象称之为单体。目前单体排布问题的解决方案有两类:第一类,完全由用户手工操作完成所有排布。第二类,完全由计算机生成多个排布结果,然后交给用户选择。
2、目前的两类方法都有一些缺陷。如果完全由用户手工操作,效率非常低下。如果完全由计算机生成,则复杂的约束条件、模糊的设计理念导致难以生成好的结果。
技术实现思路
1、有鉴于此,本专利技术提供了一种排布方法、装置、计算机设备及存储介质,以解决排布效率低以及效果不佳的问题。
2、第一方面,本专利技术提供了一种排布方法,所述方法包括:
3、获取目标单体的排布指令以及最小排布距离,所述排布指令用于生成表征排布样式的几何图形,所述最小排布距离为相邻目标单体沿着所述几何图形的排布距离,所述最小排布距离是基于规范描述文档确定的;
4、在界面上显示所述几何图形;
5、基于所述最小排布距离以及所述几何图形排布所述目标单体,确定并显示排布结果。
6、本专利技术实施例提供的排布方法,通过依据排布指令在界面上显示几何图形,该几何图形表征的是排布样式,就相当于排布样式由用户指定,在此基础上以最小排布距离为约束,沿几何图形进行目标单体的排布,既解决了完全手工排布效率低下的问题,又解决
7、在一些可选的实施方式中,获取最小排布距离包括:
8、获取最小距离输入指令以及规范描述文档,所述最小距离输入指令用于确定预设最小距离;
9、对所述规范描述文档进行解析,确定预设方向的最小距离;
10、基于所述预设方向的最小距离以及所述几何图形,确定沿着所述几何图形的最小距离;
11、基于所述预设最小距离与沿着所述几何图形的最小距离的大小关系,确定所述最小排布距离。
12、本专利技术实施例提供的排布方法,通过规范描述文档的解析得到规范中定义的预设方向的最小距离,利用该最小距离与预设最小距离的大小关系得到最小排布距离,保证目标单体在排布时是有最小排布距离进行约束的,且该约束也满足规范的要求,在保证排布效率的同时提高了排布的准确性。
13、在一些可选的实施方式中,所述基于所述预设最小距离与沿着所述几何图形的最小距离的大小关系,确定所述最小排布距离,包括:
14、若沿着所述几何图形的最小距离大于所述预设最小距离,确定所述预设最小距离为所述最小排布距离;
15、若沿着所述几何图形的最小距离小于所述预设最小距离,确定沿着所述几何图形的最小距离为所述最小排布距离。
16、本专利技术实施例提供的排布方法,给出最小预设距离的作用是,如果不存在满足任何规范描述文档的约束,也需要保持两个目标单体之间有一定的距离,而不能把两个目标单体距离为0,直接连接在一起,保证了排布结果的准确性。
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、第三方面,本专利技术提供了一种计算机设备,包括:存储器和处理器,存储器和处理器之间互相通信连接,存储器中存储有计算机指令,处理器通过执行计算机指令,从而执行上述第一方面或其对应的任一实施方式的排布方法。
本文档来自技高网...【技术保护点】
1.一种排布方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,获取最小排布距离包括:
3.根据权利要求2所述的方法,其特征在于,所述基于所述预设最小距离与沿着所述几何图形的最小距离的大小关系,确定所述最小排布距离,包括:
4.根据权利要求1所述的方法,其特征在于,若所述几何图形为线或二维图形,所述基于所述最小排布距离以及所述几何图形排布所述目标单体,确定并显示排布结果,包括:
5.根据权利要求4所述的方法,其特征在于,若所述几何图形为曲线,所述基于所述最小排布距离,确定相邻目标单体的中心点在所述几何图形中的位置,包括:
6.根据权利要求4所述的方法,其特征在于,若所述几何图形为二维图形,所述基于所述最小排布距离,确定相邻目标单体的中心点在所述几何图形中的位置,包括:
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
8.一种排布装置,其特征在于,所述装置包括:
9.一种计算机设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在
...【技术特征摘要】
1.一种排布方法,其特征在于,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,获取最小排布距离包括:
3.根据权利要求2所述的方法,其特征在于,所述基于所述预设最小距离与沿着所述几何图形的最小距离的大小关系,确定所述最小排布距离,包括:
4.根据权利要求1所述的方法,其特征在于,若所述几何图形为线或二维图形,所述基于所述最小排布距离以及所述几何图形排布所述目标单体,确定并显示排布结果,包括:
5.根据权利要求4所述的方法,其特征在于,若所述几何图形为曲线,所述基于所述最小排布距离,确定相邻目...
【专利技术属性】
技术研发人员:付红雷,袁正刚,徐胜利,曲星文,梁雄,李宾,高志明,
申请(专利权)人:广联达科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。