如何判断一个点是否更靠线段的右侧?

How to tell whether a point is more to the right of a segment?

我怎么知道AB右边的第一段是什么? 所以我们从 A 开始,到达 B,然后我需要走最右边 - 到 C。 但是我如何从数学上找到这个呢? 请记住,在任何方向上都可能有更多来自 B 的段。 (其中一些或全部可能在 B 的左侧 - 在我的图像中 C 和 D 在右侧)

我们确实有顶点的所有坐标 - x 和 y!

我正在考虑

您有坐标 AX、AY、BX、BY 和 PX、PY 每隔一个点。

需要计算所有点P[i]

中向量P-BA-B之间的最小角度
abx = AX - BX
aby = AY - BY  //calculate once

pbx = PX - BX
pby = PY - BY  //calculated for every point

angle = atan2(-pbx*aby+pby*abx, pbx*abx+pby*aby)
if angle < 0:
    angle += 2*Math.pi  //to make range 0..2*Pi

计算每个点的角度(在某些语言中使用函数atan2Math.atan2以及向量的叉积和点积),然后选择最小值-它对应于“最右转弯”

Python code