【发布时间】:2010-12-31 07:57:47
【问题描述】:
我已阅读How can I determine whether a 2D Point is within a Polygon?,但我不确定该解决方案是否适用于中间被内部段分割的多边形。想想一个正方形的数字 8,或者只是两个相互堆叠的正方形。任何一个正方形内的点肯定会在多边形“内部”,但交叉计数会根据您前进的方向(以及您是否越过该内部段)而有所不同。
我想解决这个问题的一种方法是将多边形视为两个单独的多边形......(在这种情况下,我需要一种算法将一个复杂的多边形分成一组更简单的多边形?)
或者是否对光线投射算法或其他多边形点算法进行了改进,以处理我描述的情况?
【问题讨论】:
-
有许多不同的方法可以让事情在这种情况下发挥作用,但它们都严重依赖于你如何解释这种情况。更具体地说,你如何表示这样的“多边形”?使用什么数据结构?您可以拥有多个内饰部分吗?如果是这样,内部段可以相互交叉吗?
-
基本上,此时看来您所拥有的只是一个问题的草图。你还没有完成问题的制定。当问题本身没有得到充分说明时,现在寻找解决方案还为时过早。