我有一点意见:
x1 = 100;
z1 = 100;
y1 = 100;
和2个方向:
xDir = Math.PI;
yDir = 0.11;
范围:
range = 100;
如何根据此信息构建光线时计算终点。我尝试过以下方法:
x2 = x1 + (range * Math.cos(xDir))
z2 = z1 + (range * Math.sin(xDir))
y2 = y1 + (range * Math.cos(yDir))
但是当光线指向任何地方但处于完美的水平方向时,这并不起作用。因为我不会在前两行考虑yDir。如何找到正确的终点?
答案 0 :(得分:0)
似乎你想在spherical coordinate system中使用方位角/倾斜角(特定系统 - 使用OXZ赤道平面)。
在这种情况下,您需要在使用X / Z时考虑Y:
x2 = x1 + (range * Math.cos(xDir) * Math.sin(yDir))
z2 = z1 + (range * Math.sin(xDir) * Math.sin(yDir))
y2 = y1 + (range * Math.cos(yDir))