Math 如何选择指向任何凸多边形内部的法向量(2d)?

Math 如何选择指向任何凸多边形内部的法向量(2d)?,math,vector,geometry,Math,Vector,Geometry,好的,我有一个编程任务,赛勒斯·贝克算法。该算法需要指向任何凸多边形内部的法向量 现在我只是在检查函数中,检查点是在边的内侧还是外侧 告诉我如何计算法向量,但它给出了两个结果。我仍然在努力选择应该使用哪个向量 指向多边形内部的法向量的标准是什么 是否有任何公式/方法来计算多边形中任何边的法线(指向内部) 请简单解释一下,因为我不太懂向量和数学的东西。如果你有n个点p[]按顺时针顺序排列,那么为了使向内的点垂直于点p[I]和点p[I+1]之间的边,你将向量p[I]->p[I+1]顺时针旋转90度。

好的,我有一个编程任务,赛勒斯·贝克算法。该算法需要指向任何凸多边形内部的法向量

现在我只是在检查函数中,检查点是在边的内侧还是外侧

告诉我如何计算法向量,但它给出了两个结果。我仍然在努力选择应该使用哪个向量

指向多边形内部的法向量的标准是什么

是否有任何公式/方法来计算多边形中任何边的法线(指向内部)


请简单解释一下,因为我不太懂向量和数学的东西。

如果你有n个点p[]按顺时针顺序排列,那么为了使向内的点垂直于点p[I]和点p[I+1]之间的边,你将向量p[I]->p[I+1]顺时针旋转90度。即:

double dx = p[i+1].x - p[i].x; // x component of edge
double dy = p[i+1].y - p[i].y; // y component of edge
double ndx = dy; // x component of normal
double ndy = -dx; // y component of normal
(注意,最后一条边使用p[n-1]和p[0](按该顺序)

相反,如果点按逆时针顺序排列,则对n的两个分量求反