【问题标题】:Mapbox: How to continuously wrap a feature layerMapbox:如何连续包装要素层
【发布时间】:2014-05-14 07:54:59
【问题描述】:

Mapbox 可以连续包裹瓦片层,这样您就可以在重复的世界地图上向左和向右无限滚动。

我已向世界地图添加了一个要素图层,该地图显示了一些标记,并且由于某种原因,此要素图层也不会换行。标记仅存在于世界瓦片层的原始迭代中。

我尝试在添加要素图层时使用noWrap: false选项属性来控制切片图层上的此特性,但似乎没有任何效果。

有什么办法吗?

【问题讨论】:

    标签: mapbox


    【解决方案1】:

    使用 worldCopyJump 选项

    示例:

    var map = L.mapbox.map('map', 'your.mapid', {center: [lat, long],
                                                         zoom: 4,
                                                         worldCopyJump: true
                                                        });
    

    【讨论】:

    • 这行得通,但它是解决手头问题的一个非常糟糕的解决方案。如果您使用的地图有很多标记,并且国际日期变更线位于地图的中心,您会在一半上看到标记,而在另一半上看不到标记。当您左右滚动地图时,地图会“跳跃”(顾名思义),并且标记会在日期线的两侧出现和消失。这是一种糟糕的用户体验。
    【解决方案2】:

    不确定我是否理解您的问题...

    你可以使用

    maxBounds: [[-90,-180],[90,180]]

    例如

    map = L.mapbox.map('map', '<some map id>',{minZoom: 0, maxZoom: 10, maxBounds: [[-90,-180],[90,180]]});
    

    https://www.mapbox.com/mapbox.js/example/v1.0.0/maxbounds/

    【讨论】:

    • 这就是我最终要做的。我更希望要素层用世界图块包裹,这样滚动就不必被夹住了。不过,据我所知,这是不可能的。
    猜你喜欢
    • 1970-01-01
    • 2015-06-19
    • 1970-01-01
    • 2019-10-13
    • 2013-04-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-21
    相关资源
    最近更新 更多