Auf dieser Seite erfahren Sie, wie Sie geografische Daten im KML-Format mit GMUKMLParser
in Verbindung mit GMUGeometryRenderer
rendern. KML ist ein beliebtes Format zum Rendern geografischer Daten wie Punkte, Linien und Polygone.
Der folgende Screenshot zeigt einige Beispiele für KML-Daten, die auf einer Karte gerendert werden:
Voraussetzungen und Hinweise
GMUKMLParser
ist Teil der Maps SDK for iOS-Dienstprogrammbibliothek. Wenn Sie die Bibliothek noch nicht eingerichtet haben, folgen Sie der Einrichtungsanleitung, bevor Sie mit dem Rest dieser Seite fortfahren.
Das vollständige Codebeispiel finden Sie in den Beispielanwendungen auf GitHub.
KML-Daten rendern
Zum Rendern von KML-Daten auf einer Karte müssen Sie einen GMUKMLParser
mit dem Pfad zu einer KML-Ressource (in diesem Beispiel KML_Sample.kml
) erstellen. Erstellen Sie dann ein GMUGeometryRenderer
und übergeben Sie die GMUKMLParser
-Instanz. Rufen Sie abschließend GMUGeometryRenderer.render()
auf. Das folgende Codebeispiel zeigt das Rendern von KML-Daten auf einer Karte:
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