На этой странице показано, как визуализировать географические данные в формате GeoJSON, используя GMUGeoJSONParser в сочетании с GMUGeometryRenderer . GeoJSON — популярный формат для отображения географических данных, таких как точки, линии и многоугольники.
Предварительные условия и примечания
GMUGeoJSONParser является частью библиотеки служебных программ Maps SDK для iOS . Если вы еще не настроили библиотеку, следуйте инструкциям по установке, прежде чем читать остальную часть этой страницы.
Полный пример кода см. в примерах приложений на GitHub .
Рендеринг данных GeoJSON
Чтобы отобразить данные GeoJSON на карте, создайте GMUGeoJSONParser с путем к ресурсу GeoJSON (в этом примере GeoJSON_sample.kml ). Затем создайте GMUGeometryRenderer , передав экземпляр GMUKMLParser . Наконец, вызовите GMUGeometryRenderer.render() . В следующем примере кода показано отображение данных GeoJSON на карте:
Быстрый
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() } }
Цель-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