比较具有一定余量的 GPS 坐标
Posted
技术标签:
【中文标题】比较具有一定余量的 GPS 坐标【英文标题】:comparing GPS cordinates with a certain margin 【发布时间】:2013-06-11 17:48:33 【问题描述】:我目前正在开发一个应用程序,我想检查手机是否在某个位置附近。该位置是从附有位置的对象列表中加载的。位置存储为经度和纬度双精度值。当前位置(从 GPS 适配器接收到的女巫)也以双精度形式临时存储。
现在我知道我可以使用 if 语句来检查 latitude==current_latitude。但我想对其应用一定的余量。我想检查我是否在(例如)距离存储位置 1000 米的区域。我尝试了一些谷歌搜索但没有成功,因为我不确定要寻找什么。如果有人能指出我正确的方向,那将不胜感激。
提前致谢!
【问题讨论】:
【参考方案1】:如果您在该位置周围的圆圈内,您就在该位置附近。 如果点到圆心的距离小于圆的半径,则该点在圆内:
例如设置半径 = 1000m。
使用Location
类的距离计算:
那么
// radius in meter
double radius = 1000;
Location curLoc;
Location destination;
...
if (curLoc.distanceTo(destination) < radius))
isInside = true;
【讨论】:
如此简单,但正是我所需要的。谢谢分配!以上是关于比较具有一定余量的 GPS 坐标的主要内容,如果未能解决你的问题,请参考以下文章
Objective C / iPhone比较2 CLLocations /GPS坐标
Objective C - iPhone 比较 2 个 CLLocations /GPS 坐标
如何比较文本文件中的 gps 坐标以查看哪对最接近用户的当前位置 [关闭]