问题描述
我正在尝试使用 xamarin Essentials 获取不同地点之间的距离。我有起点和目的地的坐标。距离变量等于 2134.13057845059。我需要将此数字转换为英里吗?它应该等于 30 英里左右。
var location = await Geolocation.GetLastKNownLocationAsync();
var courtLocation = new Location(Convert.Todouble(item.Latitude),Convert.Todouble(item.Longitude));
double distance = Location.Calculatedistance(location,courtLocation,distanceUnits.Miles);
解决方法
double distance = Location.CalculateDistance(location,courtLocation,DistanceUnits.Kilometers);
的最后一个参数是返回类型的单位。
您正在请求公里
double distance = Location.CalculateDistance(location,DistanceUnits.Miles);
如果您想申请里程,请使用
var loc1 = new Location(33.887749,-84.345818);
var loc2 = new Location(33.807920,-84.046791);
// result is 18.023...
double distance = Location.CalculateDistance(loc1,loc2,DistanceUnits.Miles);
这对我有用,如果您仍然得到不好的结果,我会仔细检查您的输入和转换
character(20) :: a