Esta página mostra como renderizar dados geográficos no KML
formato, usando GMUKMLParser
no
conjunção com GMUGeometryRenderer
. O KML é um formato
formato para renderizar dados geográficos como pontos, linhas e polígonos.
A captura de tela abaixo mostra alguns exemplos de dados KML renderizados em um mapa:
![Mapa com dados KML](https://developers-dot-devsite-v2-prod.appspot.com/static/maps/documentation/ios-sdk/images/kml-render-example.png?authuser=7&hl=pt-br)
Pré-requisitos e observações
GMUKMLParser
faz parte de
a Biblioteca de utilitários do SDK do Maps para iOS. Se você ainda não configurou
da biblioteca, siga o guia de configuração antes de ler o restante desta página.
Para conferir o exemplo de código completo, consulte os apps de exemplo ativada GitHub.
Renderizar dados KML
Para renderizar dados KML em um mapa, crie um GMUKMLParser
com o
caminho para um recurso KML (KML_Sample.kml
neste exemplo). Depois,
crie um GMUGeometryRenderer
transmitindo a GMUKMLParser
instância. Por fim, chame GMUGeometryRenderer.render()
. O
O seguinte exemplo de código mostra a renderização de dados KML em um mapa:
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