【问题标题】:BingMaps Is it possible to disable clustering below certain zoom level?BingMaps 是否可以在特定缩放级别以下禁用集群?
【发布时间】:2020-08-10 22:03:28
【问题描述】:

我的地图图钉彼此相对靠近,即使在大变焦时我仍然看到它们聚集在一起。 我通过将簇状图钉散布 5-10 米的随机距离解决了这个问题。

我需要更准确的解决方案,所以我的想法是禁用低于特定缩放级别的集群,但我没有找到任何方法。

【问题讨论】:

    标签: javascript maps bing-maps


    【解决方案1】:

    Bing Maps的聚类图层中没有禁用聚类的选项,但是你可以做的是监控地图的缩放级别,当它到达某个点时,隐藏聚类图层并加载一个新图层那不是集群的。不幸的是,这意味着在内存中有两个数据副本。

    如果您还没有完全致力于使用 Bing Maps 平台,您可能还想看看 Azure Maps。 Azure Maps Web SDK 的做法稍有不同,您可以将数据保存在单个数据源中并将渲染层附加到其中。集群在数据源中打开,并且有一个用于集群的最大缩放级别选项。

    这里有一些例子:https://azuremapscodesamples.azurewebsites.net/index.html?search=cluster 这是文档:https://docs.microsoft.com/en-us/azure/azure-maps/clustering-point-data-web-sdk

    【讨论】:

    • 您好,感谢您的回答。我通过在某个缩放级别上将集群网格大小设置为 1 并在缩小时恢复初始网格大小来管理它。
    【解决方案2】:

    ClusterLayerOptions 上现在有一个选项 clusteringEnabled,它将禁用集群而不丢失整个层。

    例如:

      Microsoft.Maps.Events.addHandler(this.map, 'viewchangeend', () => {        
                  // de-cluster at highest zoom level
                  this.clusterLayer?.setOptions({
                    clusteringEnabled:
                      this.map.getZoom() < this.map.getZoomRange().max
                  });
                });
    

    【讨论】:

    • 完美,完全符合预期。
    猜你喜欢
    • 2015-03-25
    • 1970-01-01
    • 2015-06-21
    • 2022-01-19
    • 2020-07-01
    • 1970-01-01
    • 2015-12-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多