AI-generated Key Takeaways
-
This page demonstrates how to render geographic data in GeoJSON format on Google Maps using the
GMUGeoJSONParserandGMUGeometryRenderer. -
GeoJSON is a commonly used format for displaying geographic data like points, lines, and polygons.
-
You'll need to set up the Maps SDK for iOS Utility Library before using
GMUGeoJSONParser. -
The provided code examples show how to render GeoJSON data on a map in both Swift and Objective-C.
This page shows you how to render geographic data in the GeoJSON
format, using GMUGeoJSONParser
, in
conjunction with GMUGeometryRenderer
. GeoJSON is a popular
format for rendering geographic data such as points, lines, and polygons.
Prerequisites and notes
GMUGeoJSONParser
is part of
the Maps SDK for iOS Utility Library
. If you haven't yet set up
the library, follow the setup guide
before reading the rest of this page.
For the full code sample, see the sample apps on GitHub .
Rendering GeoJSON data
To render GeoJSON data on a map, create a GMUGeoJSONParser
with
the path to a GeoJSON resource ( GeoJSON_sample.kml
in this
example). Then, create a GMUGeometryRenderer
, passing the GMUKMLParser
instance. Finally, call GMUGeometryRenderer.render()
. The following code example shows
rendering GeoJSON data on a map:
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

