4

我是一名学习 Objective-C 的新 iPhone 开发人员,我正在尝试动态计算用户纬度/经度坐标之间的距离,并在 SQLite 表中使用纬度/经度坐标。我知道我们可以使用 CLLocations 方法:

(CLLocationDistance)distanceFromLocation:(const CLLocation *)location

要做到这一点,但我不确定如何使用我拥有的数据。考虑到上述方法仅处理 CLLocation 类型的位置对象,如何使用上述方法使用纬度/经度坐标对?谁能给我一个简单的例子来说明如何使用两对纬度/经度坐标来使用这种方法?

4

1 回答 1

8

只需CLLocation从您的数据创建对象:

// Assumption: lat1, lon1 and lat2, lon2 are double values containing the coordinates
CLLocation *firstLocation = [[[CLLocation alloc] initWithLatitude:lat1 longitude:lon1] autorelease];
CLLocation *secondLocation = [[[CLLocation alloc] initWithLatitude:lat2 longitude:lon2] autorelease];
CLLocationDistance distance = [secondLocation distanceFromLocation:firstLocation];
于 2010-11-10T01:16:53.200 回答