IOS
 Computer >> コンピューター >  >> プログラミング >> IOS

SwiftのMapKitを使用して2つの場所の間にルートを描画するにはどうすればよいですか?


地図上の2つの場所の間にルートを描くには、両方の場所の座標が必要です。

両方の場所の座標がわかったら、以下の関数を使用して、地図上の2点間の線を表示できます。この例では、2つのランダムな場所を2つのポイントとして使用します。

func getDirections(loc1: CLLocationCoordinate2D, loc2: CLLocationCoordinate2D) {
   let source = MKMapItem(placemark: MKPlacemark(coordinate: loc1))
   source.name = "Your Location"
   let destination = MKMapItem(placemark: MKPlacemark(coordinate: loc2))
   destination.name = "Destination"
   MKMapItem.openMaps(with: [source, destination], launchOptions: [MKLaunchOptionsDirectionsModeKey: MKLaunchOptionsDirectionsModeDriving])
}

このチュートリアルでは、この関数をViewDidLoadで呼び出して結果を表示しますが、必要に応じて使用できます。

その前に、2つの場所を作成する必要があります。

override func viewDidLoad() {
   super.viewDidLoad()
   let coordinateOne = CLLocationCoordinate2D(latitude: CLLocationDegrees(exactly: 40.586746)!, longitude: CLLocationDegrees(exactly: -108.610891)!)
   let coordinateTwo = CLLocationCoordinate2D(latitude: CLLocationDegrees(exactly: 42.564874)!, longitude: CLLocationDegrees(exactly: -102.125547)!)
   self.getDirections(loc1: coordinateOne, loc2: coordinateTwo)
}

上記のコードをデバイスで実行すると、次の出力が表示されます

SwiftのMapKitを使用して2つの場所の間にルートを描画するにはどうすればよいですか?


  1. Javaを使用してOpenCVで長方形を描く方法は?

    Java OpenCVライブラリのorg.opencv.imgprocパッケージには、Imgprocという名前のクラスが含まれています。長方形を描くには、 rectangle()を呼び出す必要があります このクラスのメソッド。このメソッドは、次のパラメーターを受け入れます- 長方形が描画される画像を表すMatオブジェクト。 描画される長方形の頂点を表す2つのPointオブジェクト。 長方形(BGR)の色を表すScalarオブジェクト。 長方形の太さを表す整数(デフォルト:1)。 例 import org.opencv.core.Core; import org.op

  2. Javaを使用してOpenCVで線を引く方法は?

    Java OpenCVライブラリのorg.opencv.imgprocパッケージには、Imgprocという名前のクラスが含まれています。線を引くには、 line()を呼び出す必要があります このクラスのメソッド。このメソッドは、次のパラメーターを受け入れます- 線を引く画像を表すマットオブジェクト。 線が引かれるポイントを表す2つのPointオブジェクト。 線の色を表すScalarオブジェクト。 (BGR) 線の太さを表す整数(デフォルト:1)。 例 import org.opencv.core.Core; import org.opencv.core.Mat; i