填充多边形的空间路由算法

Jaa*_*egh 2 algorithm routing geospatial

我有一个(地理)地图,由多边形构成,描绘了土地和一艘船试图从A到B从而没有撞到任何一块土地.优选地,它应该遵循最短的可用路径.

我有一个大部分时间都可以运行的算法,但它相当笨拙且效率低下.我非常感谢任何我可以使用的算法的提示或参考.

Joh*_*rak 7

创建图表:

  • 为每个多边形的每个顶点(起点和终点)创建一个节点.
  • 如果存在从一个节点到另一个节点的直线,而不是穿过任何障碍物,则在两个节点之间创建边缘.

使用A*算法(http://en.wikipedia.org/wiki/A_star)在结果图中查找最短路径.估算距离为直线距离.

您可以使用任何类型的障碍物,只要您能够确定"有趣"点的集合:它们是每对障碍物的所有切线的接触点(几何所有凸多边形的顶点都是"有趣的". )和两次触摸相同(非凸)障碍物的所有线.