mergeRegionHoles 算法
2022-02-22 17:08:50 2 举报
mergeRegionHoles 算法
作者其他创作
大纲/内容
4
13
12
20
1
第二步:按顺序遍历绿色和蓝色hole(也是按照LeftMost顺序)遍历大region的outline上每个点,找到和绿色洞的最佳顶点匹配的点,匹配规则为:1. 距离最近越好2. 但是连线不能和大region的outline上其他边相交如上图红点所示
23
19
3
2
14
第一步:找出每个小region的LeftMost。LeftMost的含义是最左下的点:先看哪个顶点的x最小,当有两个点x相同的时候,则会看这两个哪个z更小。如图所示:黑色点为确定出来的:最佳顶点。
假设有一个region里内嵌了两个region。大region的内部就形成了两个洞:计算边界的时候,大region会算出来三个边界,分别是一个outline,和两个hole,注意,这两个hole并非两个小region的outline,这是两码事,每个region都有自己独立的边界
6
11
x
22
7
10
z
第四步:按之前步骤继续处理蓝色洞,最终把所有洞与outline合并。注意outline的起点又发生了变化
17
5
9
第三步:按照两点连线,给大region上切一刀,合并outline和绿色hole。新的outline的起点和路径都发生了变化,如图所示:从1开始到14。注意1和8、9和14的位置完全一样,但是分别是一个多边形的两个顶点
16
8
21
18

收藏
0 条评论
下一页