Cette page explique comment effectuer le rendu des données géographiques dans le fichier KML
en utilisant GMUKMLParser
dans
conjointement avec GMUGeometryRenderer
. KML est un langage
pour le rendu de données géographiques telles que les points, les lignes et les polygones.
La capture d'écran suivante montre quelques 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é
consultez le guide de configuration avant de poursuivre votre lecture.
Pour obtenir l'exemple de code complet, consultez les applications exemples allumé GitHub
Rendu des données KML
Pour effectuer le rendu des données KML sur une carte, créez un GMUKMLParser
avec le paramètre
vers une ressource KML (KML_Sample.kml
dans cet exemple). Ensuite,
créer un GMUGeometryRenderer
en transmettant GMUKMLParser
Compute Engine. Enfin, appelez GMUGeometryRenderer.render()
. La
L'exemple de code suivant montre comment afficher 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