【问题标题】:Equivalent of map.cameraForBounds without a Mapbox GL Map instance等效于没有 Mapbox GL Map 实例的 map.cameraForBounds
【发布时间】:2020-05-10 21:40:46
【问题描述】:

使用 Mapbox GL JS,我可以使用 cameraForBounds 方法获得一个中心和缩放级别来显示所有给定的边界框:

const {center, zoom} = map.cameraForBounds(
  [
    [sw.lng, sw.lat],
    [ne.lng, ne.lat],
  ],
  {
    padding: 20,
    bearing,
    pitch,  // probably ignored?
  },
);

typingspitch 可以,但docs 没有提及,the implementation 也没有提及,所以我认为它被忽略了。)

这通常效果很好,但有时我想在地图初始化之前确定中心/缩放。似乎边界 → 相机转换应该只是数学,不需要 Map 实例。

如何在没有 Mapbox GL 地图实例的情况下从边界和方位(理想情况下是俯仰)到包含这些边界的中心/缩放?

【问题讨论】:

    标签: mapbox mapbox-gl-js


    【解决方案1】:

    你不能,原因很简单,你不知道这张地图将占据多少像素。设置中心和缩放决定了地图中间的每个像素将覆盖多少区域(以及哪个区域)。地图 DOM 元素越大,地图内的区域覆盖的区域就越多。

    【讨论】:

    • 我很乐意将像素宽度和高度作为参数传递,这没问题。
    猜你喜欢
    • 2021-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-06
    相关资源
    最近更新 更多