比较具有一定余量的 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 坐标以查看哪对最接近用户的当前位置 [关闭]

计算两个 GPS 坐标与高度之间的垂直方位

如何将 CurrentLocation 与 GPS 坐标进行比较并在相等时显示消息?

如何找出GPS坐标附近的医院数量?