我正在使用C++编写代码,想要计算两个点之间的距离。
问题1:我有两个点P(x1, y1, z1)和Q(x2, y2, z2),其中x、y和z为浮点数/双精度数。
我想要找到这两个点之间的距离。一种方法是:
square_root(x_diff*x_diff + y_diff*y_diff + z_diff*z_diff)
但这可能不是最有效的方法。(例如更好的公式或在math.h
中提供的实用程序等)
如果我只想确定P和Q是否实际上是相同的点,是否有更好的方法?
我的输入是两个点的x、y和z坐标。
谢谢。
MSalters
在下面的评论中解释了如何进行三个加法和一个比较的近似相等性测试,这肯定比两个加法、三个乘法(可能是平方根)和一个比较要快。 - Stephen Canon