1

我的问题如下。

是)我有的

  • 我有一个带有多边形和自定义属性的 GeoJSON 功能集合
  • GeoJSON 被加载到 Here 地图中

我想要的是

  • 我想检测多边形点击并读取自定义属性值

示例 GeoJSON

{
    "type": "FeatureCollection",
    "features": [{
        "type": "Feature",
        "properties": {
            "customProp": "heyImACustomProperty"
        },
        "geometry": {
            "type": "Polygon",
            "coordinates": [
                [
                    [
                        16.45477294921875,
                        43.51619059561274
                    ],
                    [
                        16.450481414794922,
                        43.50772499687011
                    ],
                    [
                        16.470909118652344,
                        43.5019975949657
                    ],
                    [
                        16.481552124023438,
                        43.51021500212034
                    ],
                    [
                        16.475543975830078,
                        43.518306809754804
                    ],
                    [
                        16.45477294921875,
                        43.51619059561274
                    ]
                ]
            ]
        }
    }]
}

GeoJSON 操作的文档不是最好的。

提前致谢。

4

1 回答 1

2

以下是单击时获取 GeoJSON 多边形的属性值的示例代码。

reader = new H.data.geojson.Reader('/path/to/geojson/file.json');
  reader.parse();
  map.addLayer(reader.getLayer());

  reader.getLayer().getProvider().addEventListener("tap", function(e) {
    if(e.target instanceof H.map.Polygon) {
      console.log('Custom property value: ', e.target.getData().properties.customProp);
    }
  }); 

GeoJSON 文档可以在这里找到: https ://developer.here.com/documentation/maps/topics_api/h-data-geojson-reader.html

于 2019-03-22T14:27:06.273 回答