[论文解读] An Extension Of Weiler-Atherton Algorithm To Cope With The Self-intersecting Polygon
本文将Weiler-Atherton多边形裁剪算法扩展至处理自相交多边形,方法是在裁剪前将自相交多边形分解为非自相交轮廓。该方法追踪孔洞轮廓的边,并从最终输出中移除存储的边,从而实现对原始算法无法处理的复杂自相交形状的正确裁剪。
In this paper a new algorithm has been proposed which can fix the problem of Weiler Atherton algorithm. The problem of Weiler Atherton algorithm lies in clipping self intersecting polygon. Clipping self intersecting polygon is not considered in Weiler Atherton algorithm and hence it is also a main disadvantage of this algorithm. In our new algorithm a self intersecting polygon has been divided into non self intersecting contours and then perform the Weiler Atherton clipping algorithm on those sub polygons. For holes we have to store the edges that is not own boundary of hole contour from recently clipped polygon. Thus if both contour is hole then we have to store all the edges of the recently clipped polygon. Finally the resultant polygon has been produced by eliminating all the stored edges.
研究动机与目标
- 解决Weiler-Atherton算法在处理自相交多边形时存在的局限性,即无法正确裁剪此类多边形。
- 克服自相交导致裁剪行为错误或未定义的根本缺陷。
- 通过将复杂自相交多边形转换为可管理的非自相交子多边形,实现对复杂自相交形状的鲁棒裁剪。
- 通过在裁剪过程中追踪并消除孔洞轮廓的边,保持拓扑正确性。
- 确保最终输出多边形不包含处理孔洞和自相交过程中引入的多余边。
提出的方法
- 在应用Weiler-Atherton算法之前,将自相交多边形分解为多个非自相交轮廓。
- 对每个非自相交轮廓独立应用标准的Weiler-Atherton裁剪算法。
- 追踪属于孔洞轮廓但不属于其自身轮廓边界的边。
- 当当前和前一个轮廓均为孔洞时,存储从最近裁剪的多边形中获得的所有边。
- 从最终输出中移除所有存储的边,以消除处理孔洞过程中引入的虚假几何。
- 通过组合有效裁剪轮廓并排除存储的边,重构最终裁剪多边形。
实验结果
研究问题
- RQ1如何对Weiler-Atherton算法进行改进,以正确裁剪当前算法无法处理的自相交多边形?
- RQ2何种分解策略可确保自相交多边形被分解为非自相交子多边形,同时不破坏其拓扑完整性?
- RQ3如何在裁剪过程中可靠地识别孔洞轮廓并追踪其边,以避免错误包含边?
- RQ4何种机制可确保在裁剪复杂自相交形状后,仅保留有效边?
- RQ5扩展后的算法在处理多重自相交和嵌套孔洞等边界情况时,能否保持正确性与效率?
主要发现
- 所提出的算法通过将自相交多边形分解为非自相交轮廓,成功将Weiler-Atherton算法扩展至处理自相交多边形。
- 该方法能正确识别并追踪来自孔洞轮廓的边,确保在必要时将其从最终输出中排除。
- 通过在当前和前一个轮廓均为孔洞时存储所有来自裁剪多边形的边,算法有效防止了错误的边保留。
- 最终输出多边形不包含多余边,即使在复杂裁剪场景下也能实现拓扑正确性。
- 该方法在保持Weiler-Atherton算法核心逻辑的同时,解决了其在自相交处理方面的关键缺陷。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。