使用或不使用'w'来计算向量4的距离?

时间:2015-07-28 14:41:12

标签: math language-agnostic

如果你有一个带有x,y,z,w的vector4,你想要计算到另一个vector4的距离。你是否应该将w用于计算?

这样:

float dx = x - v.x;
float dy = y - v.y;
float dz = z - v.z;
Math.sqrt(dx*dx + dy*dy + dz*dz);

或:

float dx = x - v.x;
float dy = y - v.y;
float dz = z - v.z;
float dw = w - v.w;
Math.sqrt(dx*dx + dy*dy + dz*dz + dw*dw);

在后一种情况下,距离的含义变得相当抽象(对我而言)。

1 个答案:

答案 0 :(得分:2)

是的,你考虑了w坐标。如果您认为这太抽象,请考虑您在一维,二维和三维中进行的计算,看看您是否发现了一种模式。

无论何时添加尺寸,您都可以将两点之间的距离视为直角三角形的下限,其中一条腿位于n维,其中一条位于新维度。在这种情况下使用毕达哥拉斯定理可以得出这个结果。

希望这有帮助!