填充累计面积计算方法、装置、存储介质及计算机设备与流程

文档序号:36732660发布日期:2024-01-16 12:44阅读:25来源:国知局
填充累计面积计算方法、装置、存储介质及计算机设备与流程

本技术涉及计算机辅助设计,尤其涉及一种填充累计面积计算方法、装置、存储介质及计算机设备。


背景技术:

1、计算机辅助设计(computer aided design,cad)是指利用计算机帮助设计人员进行设计工作的技术,被广泛应用于建筑施工、室内设计、机械制图等场景。

2、在利用cad进行设计时需要基于用户绘制的图形计算出填充累计面积,现有技术中通常采用对填充构建面域,利用三维布尔运算进行并集得到最终面域计算出面积,计算量较大,导致计算效率较低。


技术实现思路

1、本技术实施例提供了一种填充累计面积计算方法、装置、存储介质及计算机设备,能够提高填充累计面积的计算效率和准确性。

2、第一方面,本技术提供了一种填充累计面积计算方法,所述方法包括:

3、识别目标图形的闭合边界;

4、为所述目标图形的闭合边界定义边界方向;其中,最外层的闭合边界的边界方向定义为相同方向;对于存在包含关系的闭合边界,相邻层级的闭合边界的边界方向相反;

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、本技术提供的填充累计面积计算方法、装置、存储介质及计算机设备,通过对目标图形的闭合边界定义边界方向,从外到内交替反向为目标图形的闭合边界定义边界方向,构建无相交曲线、无单出度结点且无单出度结点关联曲线的图结构,基于各闭合边界中重叠曲线的边界方向对重叠曲线进行去重,得到第一图形,基于随机选定的搜索方向遍历第一图形中的曲线,识别图结构中的有效闭合区域,计算有效闭合区域的覆盖面积,即为填充累计面积。基于定义的边界方向对每个闭合边界上的曲线进行去重,能够减少在后续有效闭合区域的识别中的无效闭合区域,并且帮助准确识别洞区域,提高填充累计面积对应的有效闭合区域的识别准确性,进而快速高效地实现填充累计面积的计算。

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