我有一个复杂的多边形(可能是凹面),它的一些边标记为入口/出口点。在这个多边形内部可能存在一个或多个任意形状的阻塞。我可以用什么方法来确定一对入口/出口边缘之间是否存在一定宽度的路径?
通过阅读问题它看起来像一个作业类型 - 它不是。我只想拥有至少一些我可以追求的线索,因为这对我来说是新的。答案 0 :(得分:1)
看看Motion Planning - 那里有大量的信息。
答案 1 :(得分:0)
这取决于路线是否需要宽度。如果必须移动的对象具有有限的大小,则需要将域多边形的Minkowski差异与移动对象的多边形相比较,然后尝试通过该路径进行路由。
准确计算路径的一种方法是计算多边形的可见性图。可见性图具有与域多边形的顶点对应的顶点(可能具有障碍物所在的孔),并且如果它们可以彼此“看到”,则两个顶点通过边连接。如果存在将入口连接到出口的一组边缘,则该形状是可通过的。您还可以计算最短路径等内容。以天真的方式计算可见性图并不难,但速度很慢。有非常先进的算法,但它们(AFAIK)尚未实施。几年前我尝试实施一些,只有平庸的结果。他们中的大多数假设顶点在一般位置,使用精确算术,而实际应用程序将使用浮点数。