我在Python中实现了直骨架算法,并希望将其用于多边形边缘的偏移。
我尝试限制每个边缘的偏移量到它们周围的“骨头”,但发现输出结果不尽如人意:有些偏移没有匹配,我看到应该接触的线之间有间隙。
我看过几篇文章建议采用这种抵消方法,但不幸的是,它们中没有一篇提供如何实现的具体信息。 其中:
如果已经知道P的骨架,则为任何给定半径r计算单个偏移曲线是简单的、高效的(线性时间)和数值稳定的。所有需要做的就是以一定的方式遍历骨架,并逐个插入偏移曲线元素。由于直骨架的定义基于边缘的连续波前或草火传播,因此它特别适用于多边形抵消。特别地,它可以用来获得所谓的“斜接”抵消,其中角落保持为偏移多边形的角落。
我尝试限制每个边缘的偏移量到它们周围的“骨头”,但发现输出结果不尽如人意:有些偏移没有匹配,我看到应该接触的线之间有间隙。
(更高质量此处)
问题: 如何使用多边形的直线骨架计算其斜角偏移的正确方法?