gpt4 book ai didi

传单 - Fitbounds 并保持中心位置

转载 作者:行者123 更新时间:2023-12-02 21:28:07 32 4
gpt4 key购买 nike

我正在使用 Leaflet 和 Mapbox,我想设置 map 的 View :

  1. 所有标记均可见
  2. 中心设置为特定点

使用 setView 和 fitbounds 单独完成每个点很容易,但我不知道如何同时拥有这两个点,因为 setView 更改了边界,而 fitBounds 更改了中心。解决方案可能是定义中心和缩放,但我如何知道哪个缩放将允许我的所有标记可见?

编辑

我实现了 IvanSanchez 建议的解决方案,它按预期工作:

let ne=leafletBounds.getNorthEast();
let sw=leafletBounds.getSouthWest();
let neSymetric=[ne.lat + (center.lat - ne.lat)*2, ne.lng + (center.lng - ne.lng)*2];
let swSymetric=[sw.lat +(center.lat - sw.lat)*2, sw.lng + (center.lng - sw.lng)*2];
leafletBounds.extend(L.latLngBounds(swSymetric, neSymetric));

最佳答案

获取边界,并通过沿所需的中心点应用点对称来创建第二个 L.Bounds 实例。创建一个包含原始边界和对称边界的新L.Bounds。运行 fitBounds()

关于传单 - Fitbounds 并保持中心位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38050819/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com