如何在平面法线向量上得到点的坐标?

时间:2015-07-05 11:33:29

标签: 3d java-3d

我有一个平面,它有法向矢量(p,q,r)和中心(x,y,z)。我想得到的只是point1的坐标(不是point1和point2),它与中心的平面正常距离为10米。

我正在使用JAVA自动解决它。 enter image description here

1 个答案:

答案 0 :(得分:1)

确保正常(p,q,r)标准化:

double length = Math.sqrt(p*p + q*q + r*r);
if(length!=0){
  p/=length;
  q/=length;
  r/=length;
}

然后将法线的10倍加到点的中心;

double p1x = centerX + p*10.0;
double p1y = centerY + q*10.0;
double p1z = centerZ + r*10.0;

请注意,就目前而言,您的问题目前不明确;它没有表现出来 正常指向的方向;有两种可能性:正常可以指向 向前(朝向点1)或向后(朝向点2)。我在这里假设 正常的前进点。