【发布时间】:2012-06-20 20:10:25
【问题描述】:
我有一组 (x, y) 点,我想从这些点插入这组点“内部”的任何点的值。 (下图中黄色区域)。
问题是我没有找到任何好的方法:
- 找到作为我的插值点边界的多边形(绿线)
- 测试点是否在多边形内。我找到了Point in Polygon 算法,但我不确定将所有点都放在某个范围内并测试它们是否属于多边形是个好主意。我想找到一种方法,让我测试的点数比 (max(x)-min(x))*(max(y)-min(y)) 少,理想情况下是一种知道哪些点的方法做我的迭代。
编辑:在第二部分中,我将迭代图像中的所有点(像素),我想做的只是迭代黄色字段中的点。
你有线索吗?
Ps:如果有帮助的话,我正在用 C++ 编写代码。
【问题讨论】:
-
关于问题2:是否有任何点在绿色边界之外?如果是这样,您使用什么标准来确定多边形的边界?如果不是,那么一旦您知道边界上的点,根据定义,其余点都在边界内。
-
@mbeckish 不,绿色边界之外没有任何点。我编辑了问题以澄清第二部分。
-
那你根本不需要测试。只需跟踪边界上的哪些点 - 如果所讨论的点不是边界点之一,那么它就在多边形内。
标签: algorithm math polygon computational-geometry point