从GIS文件(城市地图)获得一组(2D)点,我需要生成定义该地图(其边界)的"轮廓"的多边形.它的输入参数是点集和"最大边长".然后它将输出相应的(可能是非凸的)多边形.
到目前为止,我发现的最佳解决方案是生成Delaunay三角形,然后移除长度超过最大边长的外边缘.在所有外边缘都短于此之后,我只需移除内部边缘并获得我想要的多边形.问题是,这非常耗时,我想知道是否有更好的方法.
我们实验室的一名前学生在博士论文中使用了一些适用的技术.我相信其中一个被称为"alpha形状",并在下面的文章中引用:
http://www.cis.rit.edu/people/faculty/kerekes/pdfs/AIPR_2007_Gurram.pdf
该论文提供了一些您可以遵循的进一步参考.