如何确定一个LocationPoint(后期;在Windows Phone 8.1的MapControl中,长)在给定的

本文关键字:MapControl 何确定 Phone LocationPoint 一个 后期 Windows | 更新日期: 2023-09-27 18:18:13

我有一个半径为10英里的点。如何确定另一个点是否在圆与Windows Phone 8.1的映射功能?

如何确定一个LocationPoint(后期;在Windows Phone 8.1的MapControl中,长)在给定的

从问题中我假设您有两个点的球坐标(经度,经度)。你可以简单地用哈弗斯公式计算距离,这就得到了"直线距离"。

JavaScript示例:

   var radians = Array.prototype.map.call(arguments, function(deg) { return deg/180.0 * Math.PI; });
   var lat1 = radians[0], lon1 = radians[1], lat2 = radians[2], lon2 = radians[3];
   var R = 6372.8; // km
   var dLat = lat2 - lat1;
   var dLon = lon2 - lon1;
   var a = Math.sin(dLat / 2) * Math.sin(dLat /2) + Math.sin(dLon / 2) *     Math.sin(dLon /2) * Math.cos(lat1) * Math.cos(lat2);
   var c = 2 * Math.asin(Math.sqrt(a));
   return R * c;

如果你有平面坐标,就用毕达哥拉斯。