Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 谷歌地图**位移**两个点之间的给定拉特朗_Java_Google Maps - Fatal编程技术网

Java 谷歌地图**位移**两个点之间的给定拉特朗

Java 谷歌地图**位移**两个点之间的给定拉特朗,java,google-maps,Java,Google Maps,我在谷歌地图上有两个地方有一些坐标,是否存在任何谷歌API来查找它们之间的线性位移(不是道路)。如果存在,也可以使用任何其他库。如果只需要用Java计算点,则不需要API。哈弗森公式可以做到这一点。以下是java实现: public static double distance(double lat1, double lat2, double lng1, double lng2) { final int R = 6371; // Radius of the earth Double

我在谷歌地图上有两个地方有一些坐标,是否存在任何谷歌API来查找它们之间的线性位移(不是道路)。如果存在,也可以使用任何其他库。

如果只需要用Java计算点,则不需要API。哈弗森公式可以做到这一点。以下是java实现:

public static double distance(double lat1, double lat2, double lng1,
    double lng2) {

final int R = 6371; // Radius of the earth

Double latDistance = Math.toRadians(lat2 - lat1);
Double lngDistance = Math.toRadians(lng2 - lng1);
Double a = Math.sin(latDistance / 2) * Math.sin(latDistance / 2)
        + Math.cos(Math.toRadians(lat1)) * Math.cos(Math.toRadians(lat2))
        * Math.sin(lngDistance / 2) * Math.sin(lngDistance / 2);
Double c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1 - a));
double distance = R * c; // convert to meters

return distance;

}

我想使用java在服务器端使用它。我该怎么办?您的建议是用javascript编写的,您还有其他选择吗。