GeoJSON

選取平台: Android iOS JavaScript

本頁說明如何搭配 GMUGeometryRenderer 使用 GMUGeoJSONParser,以 GeoJSON 格式轉譯地理資料。GeoJSON 是一種常見的格式,用來算繪地理資料,例如點、線和多邊形。

必要條件和注意事項

GMUGeoJSONParserMaps SDK for iOS 公用程式庫的一部分。如果您尚未設定程式庫,請先按照設定指南的步驟完成設定,再閱讀本頁面的其餘內容。

如需完整程式碼範例,請參閱 GitHub 上的範例應用程式。

呈現 GeoJSON 資料

如要在地圖上算繪 GeoJSON 資料,請建立具有 GeoJSON 資源路徑的 GMUGeoJSONParser (在此範例中為 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