GeoJSON

Selecione a plataforma: Android iOS JavaScript

Nesta página, mostramos como renderizar dados geográficos no formato GeoJSON usando GMUGeoJSONParser em conjunto com GMUGeometryRenderer. O GeoJSON é um formato conhecido para renderizar dados geográficos como pontos, linhas e polígonos.

Pré-requisitos e observações

GMUGeoJSONParser faz parte da Biblioteca de utilitários do SDK do Maps para iOS. Se você ainda não configurou a biblioteca, siga o guia de configuração antes de ler o restante desta página.

Para ver o exemplo de código completo, consulte os apps de exemplo no GitHub (em inglês).

Renderização de dados GeoJSON

Para renderizar dados GeoJSON em um mapa, crie um GMUGeoJSONParser com o caminho para um recurso GeoJSON (neste exemplo, GeoJSON_sample.kml). Em seguida, crie um GMUGeometryRenderer, transmitindo a instância GMUKMLParser. Por fim, chame GMUGeometryRenderer.render(). O exemplo de código a seguir mostra a renderização de dados GeoJSON em um mapa:

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