GeoJSON

请选择平台: Android iOS JavaScript

此页面介绍了如何以 GeoJSON 格式呈现地理数据 格式,使用 GMUGeoJSONParser, 与 GMUGeometryRenderer 结合使用。GeoJSON 是 用于渲染地理数据(如点、线和多边形)的格式。

前提条件和说明

GMUGeoJSONParser所属的国家/地区 Maps SDK for iOS 实用程序库。如果您尚未设置 库中,请先按照设置指南操作,然后再阅读本页面的其余内容。

如需查看完整的代码示例,请参阅示例应用 <ph type="x-smartling-placeholder"></ph> 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