Math 如何判断点是在点和角度给定的直线的右侧还是左侧

Math 如何判断点是在点和角度给定的直线的右侧还是左侧,math,geometry,Math,Geometry,我的问题和这个很相似: 他们在两个点a、B和第三个点Z之间定义了一条线,应该进行测试 我得到了一条由点p和角度a以及第三个点Z定义的线,应该进行测试。显然,我可以从角度和P计算第三个点,并使用它们的解,但我希望有更好/更快的方法 Z和Z'应注册为“上方”,Z''应注册为“下方” 背景:我正在用C++编程C++,现在我正在尝试理解被检测的旋转矩形之间的关系。 < p>你有两个矢量-方向向量d=(正弦(a),COS(a))和pz。若它们的叉积为正,则Z位于左半平面,否则位于右半平面。什么样的半平面

我的问题和这个很相似:

他们在两个点a、B和第三个点Z之间定义了一条线,应该进行测试

我得到了一条由点p和角度a以及第三个点Z定义的线,应该进行测试。显然,我可以从角度和P计算第三个点,并使用它们的解,但我希望有更好/更快的方法

Z和Z'应注册为“上方”,Z''应注册为“下方”


背景:我正在用C++编程C++,现在我正在尝试理解被检测的旋转矩形之间的关系。

< p>你有两个矢量-方向向量d=(正弦(a),COS(a))和pz。若它们的叉积为正,则Z位于左半平面,否则位于右半平面。什么样的半平面被视为“上面”——取决于cos(a)符号

Result = cos(a) * (sin(a) * PZ.Y - cos(a) * PZ.X) > 0