比较GPS坐标与一定的余量

时间:2013-06-11 17:48:33

标签: android gps

我正在开发一款应用程序,我想查看手机是否在某个位置附近。此位置是从附加了位置的对象列表中加载的。位置存储为经度和纬度双值。当前位置(从GPS适配器接收)也暂时存储在双打中。

现在我知道我可以使用if语句检查latitude == current_latitude。但我想对它申请一定的保证金。我想检查我是否在(例如)1000米存储位置的区域。我尝试了一些谷歌搜索,但没有成功,因为我不确定要寻找什么。如果有人能指出我正确的方向,将非常感激。

提前致谢!

1 个答案:

答案 0 :(得分:1)

如果您位于该位置周围的圆圈内,则您就在附近 如果从点到圆心的距离小于圆半径,则点在圆内:

例如set radius = 1000m。 使用Location类的距离计算: 然后

// radius in meter
double radius = 1000;

Location curLoc;
Location destination;
       ...
if (curLoc.distanceTo(destination) < radius)) {
isInside = true;
}