Cette page vous explique comment effectuer le rendu des données géographiques au format KML en utilisant GMUKMLParser
conjointement avec GMUGeometryRenderer
. KML est un format populaire permettant d'afficher des données géographiques telles que des points, des lignes et des polygones.
La capture d'écran suivante montre des exemples de données KML affichées sur une carte:

Prérequis et remarques
GMUKMLParser
fait partie de la bibliothèque d'utilitaires du SDK Maps pour iOS. Si vous n'avez pas encore configuré la bibliothèque, suivez le guide de configuration avant de poursuivre la lecture de cette page.
Pour obtenir l'exemple de code complet, consultez les exemples d'applications sur GitHub.
Effectuer le rendu de données KML
Pour afficher des données KML sur une carte, créez un GMUKMLParser
avec le chemin d'accès à une ressource KML (KML_Sample.kml
dans cet exemple). Ensuite, créez un GMUGeometryRenderer
qui transmet l'instance GMUKMLParser
. Enfin, appelez GMUGeometryRenderer.render()
. L'exemple de code suivant montre le rendu des données KML sur une carte:
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