我试图找到一种在多个多边形之间绘制公共轮廓的算法。 我的意思是在这张照片上:
我们有两个矩形(在我的情况下,它们不是矩形,而是大多数角度为直角的多边形),我在图像的第二部分寻找像红色路径的共同轮廓。我认为最大的问题是找到新的点,我在图像的第二部分标记为黄色。 多边形永远不会交叉或接触自己。我以逆时针顺序存储多边形作为点。
我正在寻找一些我应该谷歌的线索,消息来源甚至是关键词,这可能会让我的任务变得更容易......
编辑:它类似于凸包,但看着不在顶点的边缘,黄色点可能在我看到它的边缘的连续处。
EDIT2:好的,我需要在多边形周围绘制一个给定大小的边框,但是这样的方式是,如果两个多边形比边框大小更近,它们将具有公共边框,这是两个边框的总和,没有'内部'它的一部分,这两个多边形将被视为一个形状。所以我试图找到这个红色多边形,用于在它周围画出这个边框。
答案 0 :(得分:3)
首先将多边形顶点添加到多边形(黄色边框),方法是将所有边缘剪切到延伸到无限远的所有其他边缘(例如,将边缘变为无限直线)。
将新顶点连接到扩展边。这将为您提供多边形网格。
现在有了诀窍:
开始条件:强>
选择最左上角的顶点,只能有一个!
选择连接到找到1的顶点的最小斜率的边,并向右延伸。此边缘将始终位于最终多边形的周边。
<强>迭代:强>
结束条件:
恭喜,您刚刚走过多边形的外边缘。
答案 1 :(得分:1)
我会在http://www.comp.nus.edu.sg/~tancl/Papers/DAS06/39-oyuanbuusu.pdf中寻找“最合适的边界框”,当然还有递归的参考书目。