Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.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
Geocoding 计算用户之间的距离是地理编码API的一项功能吗?_Geocoding - Fatal编程技术网

Geocoding 计算用户之间的距离是地理编码API的一项功能吗?

Geocoding 计算用户之间的距离是地理编码API的一项功能吗?,geocoding,Geocoding,我很抱歉,如果这不是合适的地方张贴这个。我从来没用过这个 我正在创建一个移动应用程序。我不是开发者。我雇了一个来开发我的应用程序 我们使用的是谷歌云平台,免费一年。明年10月将不再免费。今天,我们意识到,只要使用地理编码API(如果不是免费的话),我们每个月就要支付156美元。只有极少数人使用该应用程序进行测试 我们仍然没有启动它。老实说,这对我们来说太贵了,因为如果有太多人开始使用该应用程序,那么成本就会更高 现在,地理编码是将地址转换为地理坐标的过程,我们正在应用程序中使用。我们还显示了用户

我很抱歉,如果这不是合适的地方张贴这个。我从来没用过这个

我正在创建一个移动应用程序。我不是开发者。我雇了一个来开发我的应用程序

我们使用的是谷歌云平台,免费一年。明年10月将不再免费。今天,我们意识到,只要使用地理编码API(如果不是免费的话),我们每个月就要支付156美元。只有极少数人使用该应用程序进行测试

我们仍然没有启动它。老实说,这对我们来说太贵了,因为如果有太多人开始使用该应用程序,那么成本就会更高

现在,地理编码是将地址转换为地理坐标的过程,我们正在应用程序中使用。我们还显示了用户之间的距离,就像Tinder一样。我们计划删除地理编码API,因为将地址转换为地理坐标并不是绝对必要的。但我们需要显示用户之间的距离

我想问:计算用户之间的距离是地理编码API的一项功能吗?因为如果是的话,我们也必须删除这个功能

我希望我的问题是清楚的

谢谢,,
Juan

如果您从另一个API获取用户坐标,则可以使用纬度和经度来计算两点之间的距离

哈弗公式:a=sin²(Δφ/2)+cosφ1⋅ cosφ2⋅ sin²(Δλ/2)

c=2⋅ atan2(√A.√(1−a) )

d=R⋅ c

其中φ为纬度,λ为经度,R为地球半径(平均半径 =6371公里);请注意,角度需要以弧度为单位才能传递到trig函数

JavaScript:

var R = 6371e3; // metres
var φ1 = lat1.toRadians();
var φ2 = lat2.toRadians();
var Δφ = (lat2-lat1).toRadians();
var Δλ = (lon2-lon1).toRadians();

var a = Math.sin(Δφ/2) * Math.sin(Δφ/2) +
        Math.cos(φ1) * Math.cos(φ2) *
        Math.sin(Δλ/2) * Math.sin(Δλ/2);
var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));

var d = R * c;
在中,您可以找到这方面的完整示例