0

私の iPhone アプリケーションでは、ユーザーが地図上で目的地を選択できるようにし、ユーザーが目的地に向かって運転を開始したときに、目的地に到着するまでの時間や目的地からの現在の距離などの情報を提供したいと考えています。CloudMade maps SDK for iPhone を使用しており、2 点間の時間と距離も返す 2 点間のパスを取得する API メソッドがあることを知っています。CLLocationManager から新しい場所を取得して更新された時間と距離を取得するたびに、このメソッドを呼び出しても問題ありませんか? このメソッドは CloudMade サーバーにクエリを実行すると想定しているため、これを頻繁に呼び出すことが最善の方法であるかどうかはわかりません..

4

2 に答える 2

0

距離について

/*
 *  distanceFromLocation:
 *
 *  Discussion:
 *    Returns the lateral distance between two locations.
 */
- (CLLocationDistance)distanceFromLocation:(const CLLocation *)location __OSX_AVAILABLE_STARTING(__MAC_10_6,__IPHONE_3_2);

必要な時間を取得するために、自分で計算することができます。CLLocationには速度パラメータがあります。距離と速度を使用して時間を計算します。

于 2011-09-26T08:06:03.403 に答える
0

Swift バージョンは次のようになります。

var startLocation:CLLocation!
var lastLocation: CLLocation!

let distance = startLocation.distanceFromLocation(lastLocation)
于 2015-11-01T15:24:19.017 に答える