GeoJSON

プラットフォームを選択: Android iOS JavaScript

このページでは、GMUGeoJSONParserGMUGeometryRenderer を組み合わせて使用し、地理データを GeoJSON 形式でレンダリングする方法について説明します。GeoJSON は、点、線、ポリゴンなどの地理データをレンダリングするための一般的な形式です。

前提条件と注意事項

GMUGeoJSONParser は、Maps SDK for iOS ユーティリティ ライブラリの一部です。ライブラリをまだ設定していない場合は、このページの残りの部分を読む前に、設定ガイドに沿って設定してください。

コードサンプル全体については、GitHub のサンプルアプリをご覧ください。

GeoJSON データのレンダリング

マップに GeoJSON データをレンダリングするには、GMUGeoJSONParser を作成し、GeoJSON リソースへのパス(この例では GeoJSON_sample.kml)を指定します。次に、GMUGeometryRenderer を作成し、GMUKMLParser インスタンスを渡します。最後に、GMUGeometryRenderer.render() を呼び出します。次のコードサンプルは、地図上に GeoJSON データをレンダリングする方法を示しています。

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