GeoJSON

Seleziona la piattaforma: Android iOS JavaScript

Questa pagina mostra come visualizzare i dati geografici in formato GeoJSON, utilizzando GMUGeoJSONParser, in combinazione con GMUGeometryRenderer. GeoJSON è un formato popolare per il rendering di dati geografici come punti, linee e poligoni.

Prerequisiti e note

GMUGeoJSONParser fa parte della libreria di utilità di Maps SDK for iOS. Se non hai ancora configurato la libreria, segui la guida alla configurazione prima di leggere il resto di questa pagina.

Per l'esempio di codice completo, consulta le app di esempio su GitHub.

Rendering dei dati GeoJSON

Per visualizzare i dati GeoJSON su una mappa, crea un elemento GMUGeoJSONParser con il percorso di una risorsa GeoJSON (in questo esempio GeoJSON_sample.kml). Quindi, crea un GMUGeometryRenderer, passando l'istanza GMUKMLParser. Infine, chiama GMUGeometryRenderer.render(). Il seguente esempio di codice mostra il rendering dei dati GeoJSON su una mappa:

Swift

import GoogleMapsUtils

class GeoJSON {
  private var mapView: GMSMapView!

  func renderGeoJSON() {
    guard let path = Bundle.main.path(forResource: "GeoJSON_sample", ofType: "json") else {
      return
    }

    let url = URL(fileURLWithPath: path)

    let geoJsonParser = GMUGeoJSONParser(url: url)
    geoJsonParser.parse()

    let renderer = GMUGeometryRenderer(map: mapView, geometries: geoJsonParser.features)
    renderer.render()
  }
}
      

Objective-C

@import GoogleMapsUtils;

@implementation GeoJSON {
  GMSMapView *_mapView;
}

- (void)renderGeoJSON {
  NSString *path = [[NSBundle mainBundle] pathForResource:@"GeoJSON_sample" ofType:@"json"];
  NSURL *url = [NSURL fileURLWithPath:path];
  GMUGeoJSONParser *parser = [[GMUGeoJSONParser alloc] initWithURL:url];
  [parser parse];
  GMUGeometryRenderer *renderer = [[GMUGeometryRenderer alloc] initWithMap:_mapView
                                                                geometries:parser.features];
  [renderer render];
}

@end