GeoJSON

選取平台: Android iOS JavaScript

本頁說明如何以 GeoJSON 呈現地理資料 格式,使用 GMUGeoJSONParser,在 搭配 GMUGeometryRenderer。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