一种基于地下车库图纸生成无向图的方法与流程

文档序号:37216551发布日期:2024-03-05 15:06阅读:12来源:国知局
一种基于地下车库图纸生成无向图的方法与流程

本发明涉及建筑图纸处理,具体地,涉及了一种基于地下车库图纸生成无向图的方法。


背景技术:

1、在地下车库设计和规划流程中,防火分区的划分是一个关键步骤,防火分区的划分影响因素较多、设计规则复杂,例如:尽可能最小化对已有车位布局的影响同时保证每个车位距离逃生出口要小于60米。在传统施工图设计中,防火分区的划分需要人工完成,资深设计师一般需要数十个小时以上的工时来完成防火分区的初步设计工作,并且设计成果的质量严重依赖于设计师的经验和技能,因此防火分区的划分工作效率交底且工作质量难以保证,需要一些采用一些更高效且合理地技术进行地下车库空间的划分。

2、现有技术中只能对已有无向图进行处理,只有将几何数据转化成无向图后才能应用计算机科学和图论提供的有关空间划分分析的技术和算法进行自动区域划分,现有技术中还未有一个完整的技术方法将地下车库的几何数据转化为无向图,因此需要一种方法将地下车库图纸中的空间几何数据转化为计算机数据结构中无向图,用以辅助设计师进行地下车库防火分区的划分。


技术实现思路

1、为了解决现有技术中的上述问题,本发明提供了一种基于地下车库图纸生成无向图的方法,所述方法包括:

2、针对地库cad图纸进行图层提取,并对提取后的面域集合o进行聚类,获得障碍物集合a、车位块集合c和地库边界集合m;

3、分解所述车位块集合c中每一个车位块,获得车位线段集合ls,进行所述车位线段集合ls的车位侧边线段的分组、合并、扩展、修剪和长度低于设定阈值线段的清除后构建多边形集合p1,进行所述多边形集合p1的布尔运算,生成多边形面域集合并构建线段列表cs;

4、遍历所述线段列表cs的每一根线段,提取端点集合ps,基于所述障碍物集合a和所述地库边界集合m构建空间索引k1,基于所述车位块集合c构建空间索引k2,遍历所述端点集合ps的每一个端点在所述空间索引k1中的位置,确定发射端点集合tr,遍历所述发射端点集合tr中每一个发射端点tp所属的线段在空间索引k2中的位置,确定射线发射方向;

5、以所述发射端点集合tr中每一个发射端点tp和对应的射线发射方向的射线构建等腰三角形d,保留所述等腰三角形d内距离最近的一点和所述发射端点tp连接且不穿过车位的线段,或保留与所述发射端点tp的射线相交的第一个点和所述发射端点tp连接且不穿过车位的线段,获得发射边缘线段集合tl;

6、进行所述发射边缘线段集合tl的设定范围的端点聚类,将聚类后的线段投影至所述空间索引k1,裁剪与所述空间索引k1相重合的线段以及与所述地库边界集合m相邻的线段,获得车位边缘线段集合tb;

7、基于所述车位边缘线段集合tb的车位边缘线段构建多边形集合p2,并分解出多边形集合的边集合pls;

8、遍历所述边集合pls,确定自由度大于设定值的节点构建关键节点集合e,基于所述关键节点集合e中关键节点的邻接表x和邻接关系的边集合y生成无向图。

9、在一种可选的实施方式中,所述对提取后的面域集合o进行聚类,包括:

10、将所述面域集合o中障碍物面域集合和边界面域集合的每一个面域分别外扩距离l;

11、对外扩后的任意两个面域做布尔运算并集操作,将面域之间距离容差在2l之内的面域聚合为一个;

12、将聚合后的所有面域内缩距离l,获得障碍物集合a、车位块集合c和地库边界集合m。

13、在一种可选的实施方式中,分解所述车位块集合c中每一个车位块,获得车位线段集合ls,包括:

14、将所述车位块集合c中每一个车位块解出四条车位线段,构建车位线段集合ls,车位线段中两条长边线段为车位侧边线段,两条短边线段为车位底边线段。

15、在一种可选的实施方式中,所述进行所述车位线段集合ls的车位侧边线段的分组、合并、扩展、修剪和长度低于设定阈值线段的清除后构建多边形集合p1,进行所述多边形集合p1的布尔运算,生成多边形面域集合并构建线段列表cs,包括:

16、将所述车位侧边线段根据平行且沿着线段方向的投影点重合的规则进行分组;

17、对于同一组的车位侧边线段,选取任一车位侧边线段与组内其他车位侧边线段进行对比,若两线段之间距离容差小于t,则合并两条车位侧边线段;

18、沿着线段方向对合并后的车位侧边线段的两个端点分别扩展距离n,并基于扩展后的车位侧边线段构建空间索引k3;

19、将空间索引k3中的线段与所述车位线段集合ls中任意线段求交,获得交点集合ss;

20、遍历所述交点集合ss中任意两个交点的距离,保留距离最远的两个交点作为修剪后的车位侧边线段的端点,并删除线段长度小于距离n的线段,构建车位线段集合cls;

21、通过nts算法库将所述车位线段集合cls构造为多边形集合p1;

22、对所述多边形集合p1进行布尔运算并集操作去除闭合环内的线段,生成多边形面域集合后分解出线段并构建线段列表cs。

23、在一种可选的实施方式中,所述确定发射端点集合tr,包括:

24、分别以所述端点集合ps的每一个端点作为中心点构建一个边长为z的定向包围盒obb;

25、遍历所述定向包围盒obb,若与所述空间索引k1中地库边界和障碍物面域相交,则以不相交的端点作为发射端点tp并构建发射端点集合tr。

26、在一种可选的实施方式中,所述确定射线发射方向,包括:

27、确定所述发射端点集合tr中每一个发射端点tp在所述线段列表cs中所属的线段tsl;

28、分别沿每一个发射端点tp和对应所属的线段tsl可延长方向发射射线z,遍历每一条射线z与所述空间索引k2中车位面域是否相交,保留不相交的射线方向作为发射端点tp的发射方向。

29、在一种可选的实施方式中,所述发射边缘线段集合tl,其获取方法包括:

30、基于所述发射端点集合tr构建空间索引k4,遍历每一个所述等腰三角形d内是否存在端点属于所述空间索引k4:

31、若存在,则连接所述空间索引k4中与所述发射端点tp距离最短的端点生成线段tc,遍历每一条线段tc与所述空间索引k2中车位面域是否相交,以不相交的线段tc构建初始线段集合;

32、若不存在,则以所述发射端点tp的发射方向发射射线z1,遍历每一个所述射线z1,将所述发射端点tp与所诉射线z1在所述空间索引k4中的第一个端点连接成线段td,遍历每一条线段td与所述空间索引k2中车位面域是否相交,以不相交的线段td加入到所述初始线段集合,获得发射边缘线段集合tl。

33、在一种可选的实施方式中,所述车位边缘线段集合tb,其获取方法包括:

34、提取发射边缘线段集合tl的端点并建立邻域关系;

35、任意选取一端点为种子点,遍历每种子点与邻域点距离,将距离容差小于最小阈值距离n的邻域点与种子点与聚合为一个点,基于发射边缘线段集合tl中聚合后的端点构建线段集合te;

36、裁剪所述线段集合te中与所述空间索引k1中地库边界和障碍物面域相交线段的重合部分后构建线段集合tf;

37、裁剪所述线段集合tf中与所述地库边界集合m相邻的线段中与所述地库边界集合m距离容差小于阈值距离d的线段部分,获得车位边缘线段集合tb。

38、在一种可选的实施方式中,所述基于所述车位边缘线段集合tb的车位边缘线段构建多边形集合p2,并分解出多边形集合的边集合pls,包括:

39、通过nts算法库将所述车位边缘线段集合tb构造为多边形集合p2;

40、提取所述多边形集合p2的所有的边,构建边集合pls。

41、在一种可选的实施方式中,所述遍历所述边集合pls,确定自由度大于设定值的节点构建关键节点集合e,基于所述关键节点集合e中关键节点的邻接表x和邻接关系的边集合y生成无向图,包括:

42、提取所述多边形集合pls中所有边的节点,遍历所有节点的自由度,以自由度大于2的节点构建关键节点集合e;

43、以所述关键节点集合e中的关键节点构建邻接表x,以所述关键节点集合e中的关键节点在所述边集合pls的边构建邻接边集合y,根据所述邻接表x和所述邻接边集合y构建无向图。

44、本发明的有益效果:

45、本发明基于地下车库图纸生成无向图的方法,将地下车库图纸转化为无向图,再借助现有技术丰富的计算机算法对地下车库空间进行有效划分,成功地将复杂的地下车库空间划分问题简化为计算机科学中的图论问题。相较于传统的利用地下车库图纸进行人工空间划分方法,通过基于地下车库图纸生成无向图的方法,减少了人工的繁琐操作,避免了人为错误,提高了地下车库空间划分的精度和有效性,为后续的地下车库规划和设计提供了更高效、更精准的技术指导。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1