如何获得 Android 中两点之间的距离?

How to get distance between two points in Android?

我在里面设置了两个指针ACTION_POINTER_DOWN

point1.set(event.getX(0),event.getY(0));
point2.set(event.getX(1),event.getY(1));

我怎样才能得到这两点之间的距离? 有什么办法可以得到吗?

我想让距离做一些滚动效果。有了距离,我可以像比例因子一样使用它并调整布局的大小。

希望有人能告诉我怎么做!

不只是Android..

我们记得三角学 class 两点之间的距离可以使用毕达哥拉斯定理来计算 here

但在代码中基本上你想要的如下:

double d = Math.sqrt(Math.pow(event.getX(1) - event.getX(0), 2) + Math.pow(event.getY(1) - event.getY(0), 2));

其中 d 是两点之间的距离

查找两点之间的距离不是android特定的:

    double x1 = event.getX(1);
    double y1 = event.getY(1);
    double x2 = event.getX(0);
    double y2 = event.getY(0);
    double x = Math.sqrt(Math.pow(x2 - x1, 2) - Math.pow(y2 - y1, 2));
Math.hypot(x1 - x2, y1 - y2)

应该执行得更快一些。

Math.hypot