在我的GEOJSON数据层中,我有一组约20个区域。每个要素都有一个带有两个几何的GeometryCollection:一个用于定义区域的多边形和一个用于给出该区域中心的Point。
我希望多边形不可见,但要将地图上的点显示为标记。
此外,我希望能够根据缩放级别将区域标记设置为可见或不可见。
是否可以仅显示地图上的点,并将它们设置为与多边形分开的可见/不可见?我知道我可以将它们作为标记添加到地图中,例如。
new google.maps.Marker(etc)
但理想情况下我想使用股票数据层,这样我就可以关闭和打开标记,而无需循环遍历数组。
答案 0 :(得分:0)
GEOJson基本上是一个“特征集合”,这意味着它可以包含各种特征(和特征类型:点,多点,多边形等)。
在您的使用案例中,您可以将多边形和点作为单独的功能。然后,您可以分别对每个功能执行各种操作。您可以删除某个功能,也可以覆盖其样式。
您可以使用map.data.getFeatureById('your_feature_id');
,然后使用the available methods数据层之一,例如remove
或overrideStyle
。
例如,请查看this fiddle,其中演示了如何向数据层添加几个点(MultiPoint)和多边形,然后隐藏/仅显示一个功能。
希望这有帮助。