我正在使用多边形的质心在地图应用程序中附加标记。这对于凸多边形来说绝对有效,对于许多凹多边形来说也非常好。
但是,某些多边形(香蕉、甜甜圈)显然不会产生所需的结果:在这些情况下,质心位于outside多边形区域。
有谁知道更好的方法来找到合适的点within任何多边形区域(可能包含孔!)来附加标记?
一种方法是生成并完善skeleton https://en.wikipedia.org/wiki/Straight_skeleton多边形的中点,然后使用骨架的中点放置标记(如果是文本,则正确定向文本)。这适用于大多数形状,包括带孔的形状、香蕉形或蝌蚪形的新月形。
CGAL 库有一个2D 直骨架和多边形偏移 https://doc.cgal.org/latest/Straight_skeleton_2/index.html模块,或者你可以使用PostGIS https://gwmap.s3.amazonaws.com/www/presentations/WyGEO-Casper-2015.pdf, 例如。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)