我需要列出位于具有给定的坐标精度的特定多边形内的所有坐标,例如1.这意味着,多边形边界的所有坐标将是整数。多边形可以是凸面或凹面。凸/凹多边形内的所有点 - 更好的方法?
我有边界的所有坐标,coords[n][2]
这里是我如何接近这个问题:
为了简单起见,假设多边形的第一个坐标,为[0,0]
for (i = 1;; i++)
for all points that lie on the lines: y = ±i, x = ±i,
check if the point lies inside the polygon.
if no point lies on the polygon
break;
我的方法几乎是一个蛮力的方法。有没有一种有效的算法来找出相同的?
我想你可以参考['this'](http://www.geeksforgeeks.org/how-to-check-if-a-given-point-lies-inside-a-polygon/)。 –
问题不在于检查点是否在内部。我想减少这种检查的次数。 –
请参阅['这个'](http://codeforces.com/blog/entry/8515)这有一个解决方案,可以在任何点的'O(log n)'时间内回答查询。所以我认为这是我们能做的最好的事情。 –