【发布时间】:2016-01-18 14:44:14
【问题描述】:
我需要使用带有 GeoJSON 多多边形边界对象的 map.fitBounds() 来平移和缩放地图,而无需先将其添加到地图中。
我可以通过使用 map.data.addGeoson() 将 geoJSON 多多边形添加到地图,然后使用 map.data.getFeatureById() 抓取要素并使用此示例 https://developers.google.com/maps/documentation/javascript/examples/layer-data-dragndrop 中的 processPoints() 来确定映射要素的边界。
但是,就像我说的那样,我想平移和缩放到多面体,而无需先映射它。我正在尝试对包含在多面体中的标记进行构图,以便为用户提供更多上下文,而无需立即平移/缩放到标记边界,这可能是无法为用户提供足够上下文的缩放级别。见http://brookfieldlogisticsproperties.com/available-properties。比较使用选择过滤器钻取犹他州与钻取地图。
一种方法是使用 google.maps.Data.MultiPolygon、google.maps.Data.Polygon 等的构造函数迭代 GeoJSON MultiPolygon 坐标。这似乎相当不愉快。
【问题讨论】:
-
我不确定您所说的“我想在不先映射它的情况下平移和缩放到多面体”是什么意思,您只是想隐藏多边形吗?您可以离线计算边界并将它们作为多边形的属性放入 GeoJSON 中吗?
-
.fitBounds() 会自动平移和缩放地图,所以我想我可以省略那个细节。关于离线计算边界,我想我可以这样做,但不确定我是否想在其他地方添加额外的逻辑。该平台允许作者获取 GeoJSON 并将其插入 CMS。