flutter - 如何在颤振中将米转换为英里?
问题描述
我猜这里给出的距离是米。输出为距离 7084232.923955827。如何将距离转换为英里?
var distance = Geolocator.distanceBetween(
AppString.defaultLat,
AppString.defaultLat,
widget.restaurant.latitude ?? 9.9261153,
widget.restaurant.longitude ?? 78.1140983);
print('>>>>>>>>>> Distance $distance');
return distance;
解决方案
以公里为单位查找两点之间的距离:
double getDistanceFromLatLonInKm(lat1,lon1,lat2,lon2) {
var R = 6371;
var dLat = deg2rad(lat2-lat1);
var dLon = deg2rad(lon2-lon1);
var a =
Math.sin(dLat/2) * Math.sin(dLat/2) +
Math.cos(deg2rad(lat1)) * Math.cos(deg2rad(lat2)) *
Math.sin(dLon/2) * Math.sin(dLon/2)
;
var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a));
var d = R * c;
return d;
}
double deg2rad(deg) {
return deg * (Math.pi/180);
}
将公里转换为米
distance = distance * 1000;
将米转换为英里(距离为米)
var mileFromMeter = distance / 1609.344;
推荐阅读
- powershell - Soti MobiControl API 调用以更新 PowerShell 中的设备组
- lua - 表作为lua中的参数
- nginx - kubernetes nginx入口重写目标不起作用
- reactjs - How manage global state using context API in React js
- javascript - 无法在 Safari 上加载第三方脚本
- mongodb - ReferenceError:未定义加密
- python - 从存储在 Python 中的 MySQL 获取最后一个插入 ID
- unity3d - Unity 显示此错误 - Assets\Plugins\GitHub\Editor\UnityAPIWrapper.cs: error CS0103: The name 'UnityShim' does not exist in the current context
- python - 将字符串元素分配给变量
- pdf - 导出 Apple IBOOK PDF 亮点