1

在我的应用程序中,我有 5-6 个纬度和经度数组,我想从我当前的位置短距离并将其显示在我的地图视图上,例如:我有 3 个位置位置 A、B 和 C,所以我想缩短它们根据我当前的位置,如果位置 C 靠近我当前的位置,那么首先我想在 MAP 上显示 C 位置,然后计算位置 A 和 B,位置 C 表示如果 B 靠近位置 C,则哪个位置靠近位置 C 然后在地图上显示 B 位置和最后显示位置 A

我们怎样才能做到这一点?

4

1 回答 1

1

查看两个位置之间的距离

CLLocation *locA = [[CLLocation alloc] initWithLatitude:latA longitude:longA];
CLLocation *locB = [[CLLocation alloc] initWithLatitude:latB longitude:longB];
CLLocation *locC = [[CLLocation alloc] initWithLatitude:latC longitude:longC];
CLLocation *yourLoc = [[CLLocation alloc] initWithLatitude:yourLat longitude:yourLong];

然后获取该地点与您所在位置之间的距离

CLLocationDistance distance = [locA distanceFromLocation:yourLoc];
CLLocationDistance distance2 = [locB distanceFromLocation:yourLoc];
CLLocationDistance distance3 = [locC distanceFromLocation:yourLoc];

最后比较距离。

于 2012-09-04T11:22:14.527 回答