MapKit के साथ दो स्थानों के बीच रूट ड्रॉ करना
मैप पर दो स्थानों के बीच रूट ड्रॉ करने के लिए हमें उन दोनों स्थानों के कोऑर्डिनेट्स की आवश्यकता होती है।
एक बार जब हमारे पास दोनों स्थानों के कोऑर्डिनेट्स होते हैं तो हम मैप पर दो बिंदुओं के बीच लाइन दिखाने के लिए नीचे दिए गए फंक्शन का उपयोग कर सकते हैं। इस उदाहरण में मैं दो रैंडम स्थानों को दो बिंदुओं के रूप में उपयोग करूंगा।
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 में कॉल करेंगे ताकि परिणाम दिखाया जा सके लेकिन आप इसे अपनी आवश्यकता के अनुसार उपयोग कर सकते हैं।
उससे पहले हमें दो स्थान बनाने होंगे।
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)
}
जब हम उपरोक्त कोड को डिवाइस पर चलाते हैं तो निम्नलिखित आउटपुट दिया जाता है:
