如何计算从现在到特定点的距离

时间:2012-05-12 11:21:27

标签: iphone objective-c ios mapkit

在我的应用程序中,我有针对感兴趣的区域。还有我所在位置的GPS,我现在如何让应用程序计算并向用户显示它们之间的距离是多远?

我的.h文件设置了一个地图视图,一个用于查找我的位置的按钮,并设置地图选项以在地图/卫星和混合视图之间进行选择。

在我的.m文件中,我有所有代码设置位置和我在哪里,并启用了跟踪模式。同时设置不同的地图视图并在地图上设置一个针点并设置纬度和经度,然后启用Zoom&滚动功能。我还设置了这样,在地图上,当你点击精确定位区域时,它会显示名称和地点的小描述。所以此时一切正常:D

我真的需要找到如何找到我的点和精确定位区域之间的距离。

*请注意我使用的是MapKit!

1 个答案:

答案 0 :(得分:2)

这里如果你在CLLocationManager的委托方法中使用波纹管代码,那么它返回从当前点到目标点的距离..

- (void)locationManager:(CLLocationManager *)manager 
    didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {
    CLLocation *appleHQ = [[CLLocation alloc] initWithLatitude:37.322998 longitude:-122.032182];////here put your destination point

    NSLog(@"New Location:%@", newLocation);
    CLLocationDistance distance = [newLocation distanceFromLocation:appleHQ];
    NSLog(@"Distance to Apple HQ %4.0f km", distance);
    [appleHQ release];
}

试试这段代码...... 希望,这对你有帮助。