我有3个点P1(x1,y1),P2(x2,y2)& P3(x3,y3)。 如何找到垂直于通过这3个点的平面的矢量?
答案 0 :(得分:7)
显然你的点中缺少坐标Z ......
假设
p1 = x1, y1, z1
p2 = x2, y2, z2
p3 = x3, y3, z3
然后法线与
成正比nx = (y2 - y1)*(z3 - z1) - (z2 - z1)*(y3 - y1)
ny = (z2 - z1)*(x3 - x1) - (x2 - x1)*(z3 - z1)
nz = (x2 - x1)*(y3 - y1) - (y2 - y1)*(x3 - x1)
这是Kerrek SB建议的方法,带有显式公式。在矢量符号中:
n = (p2 - p1) ^ (p3 - p1)
答案 1 :(得分:3)
将一个点作为基点,计算两个差异向量到另外两个点(那两个跨越平面),并取其交叉积来得到法向量。如果标志重要,请注意方向。