इस पेज में बताया गया है कि GMUKMLParser
को GMUGeometryRenderer
के साथ जोड़कर, KML फ़ॉर्मैट में भौगोलिक डेटा कैसे रेंडर करते हैं. KML, पॉइंट, लाइन, और पॉलीगॉन जैसे भौगोलिक डेटा
दिखाने के लिए एक लोकप्रिय फ़ॉर्मैट है.
नीचे दिया गया स्क्रीनशॉट, मैप पर रेंडर किए गए KML डेटा का कुछ उदाहरण दिखाता है:
ज़रूरी शर्तें और ज़रूरी जानकारी
GMUKMLParser
, iOS यूटिलिटी लाइब्रेरी के लिए Maps SDK टूल का हिस्सा है. अगर आपने अब तक लाइब्रेरी सेट अप नहीं की है, तो इस पेज के बाकी हिस्से को पढ़ने से पहले, सेटअप गाइड का पालन करें.
पूरे कोड सैंपल के लिए, GitHub पर सैंपल ऐप्लिकेशन देखें.
KML डेटा रेंडर किया जा रहा है
मैप पर KML डेटा रेंडर करने के लिए, KML संसाधन के पाथ के साथ एक GMUKMLParser
बनाएं (इस उदाहरण में KML_Sample.kml
). इसके बाद, GMUKMLParser
इंस्टेंस पास करने वाला GMUGeometryRenderer
बनाएं. आखिर में, GMUGeometryRenderer.render()
पर कॉल करें. नीचे दिए गए कोड के उदाहरण में बताया गया है कि KML डेटा को मैप पर रेंडर करना दिखाया गया है:
Swift
import GoogleMapsUtils class KML: NSObject { private var mapView: GMSMapView! func renderKml() { guard let path = Bundle.main.path(forResource: "KML_Sample", ofType: "kml") else { print("Invalid path") return } let url = URL(fileURLWithPath: path) let kmlParser = GMUKMLParser(url: url) kmlParser.parse() let renderer = GMUGeometryRenderer( map: mapView, geometries: kmlParser.placemarks, styles: kmlParser.styles ) renderer.render() } }
Objective-C
@import GoogleMapsUtils; @implementation KML { GMSMapView *_mapView; } - (void)renderKml { NSString *path = [[NSBundle mainBundle] pathForResource:@"KML_Sample" ofType:@"kml"]; NSURL *url = [NSURL fileURLWithPath:path]; GMUKMLParser *parser = [[GMUKMLParser alloc] initWithURL:url]; [parser parse]; GMUGeometryRenderer *renderer = [[GMUGeometryRenderer alloc] initWithMap:_mapView geometries:parser.placemarks styles:parser.styles]; [renderer render]; } @end