【发布时间】:2017-06-02 20:23:57
【问题描述】:
我有一个由点向量定义的轮廓,即我有一个 (x_i ,y_i) 的向量。
现在给定任何点 (a,b) 是否有一种快速的方法来确定 (a,b) 是否与原点 (0,0) 位于同一侧?
定义轮廓的向量是一个大约 7000 个点的向量。因此,逐点确定可能非常缓慢。如果有人可以指点一下,那就太好了。
(我使用 Visual C++ 进行计算)
提前致谢。
【问题讨论】:
-
您需要回答多少个问题?你真的测量过标准的线性算法太慢了吗? CPU 在线性阵列扫描方面出奇地好 :)
-
我正在尝试整合。对于被积函数的每个点,我必须检查它是否在轮廓的正确一侧。发生积分的网格有 100K 点。
-
你想在那个多边形上积分还是只是积分函数的一个参数?
-
如果您将不正确一侧的点归零,这不只是在该多边形上积分吗?或者,也许你想在没有那个多边形的情况下集成盒子?
-
它不是真正的多边形,因为轮廓是光滑的、蜿蜒的,并且有很大的曲率。此外,轮廓可能会不断地从一个集成更改为下一个集成。找出多边形的边界将是一个更难解决的问题。
标签: algorithm vector geometry line contour