保持 3d 距离的负值

Keep negative value of 3d distance

我正在尝试计算坐标偏差。我的偏差可以是正的也可以是负的。

我有名义上的 x、y、z 坐标和实际的 x、y、z 坐标。但无论我尝试哪种方法,距离总是为正。这是有道理的。但我需要保持负偏差为负。 这是它的样子:

a = (float(nX), float(nY), float(nZ))
b = (float(aX), float(aY), float(aZ))
plt.mlab.dist(a, b)

如果我以这些坐标为例: -9.69498 13.53853 43.00000 -9.69941 13.53559 43.00029 他们必须给我 -0.005 的负偏差(四舍五入)

关于如何实现此目标的任何提示?

我明白了。我还需要点的矢量。我将使用标称点的向量。然后我将标称点 (XYZ) 设置为原点,并将矢量作为方向 (IJK) 设置为正。一旦我有了方向,我就可以看到实际点 (IJK) 是否位于 "plus" 或 "minus" 相对于标称点,在向量的方向上。

我目前没有相关代码,因为我没有时间 fiddle 使用它。而且我还可以直接从点的来源(与坐标一起导出)得到我正在寻找的偏差。所以我想我会使用它们,这样我就有了我需要的一切。

解决方法如下: ((nX-aX)*I)+((nY-aY)*J)+((nZ-aZ)*K) 其中 nX 是标称值 X-coordinate,aX 是实际值 X-coordinate。 I、J 和 K 是 X Y Z 的向量。因此,与标称值的偏差乘以向量得到与 sqrt 相同的距离,但负数或正数取决于它基于向量方向的位置。想想它所谓的点积或类似的东西。