gpt4 book ai didi

google-maps - 在 Google Maps API V3 中获取非环绕 map 边界

转载 作者:行者123 更新时间:2023-12-04 08:18:37 25 4
gpt4 key购买 nike

如果您将谷歌地图放大,世界将开始水平重复。使用 .getBounds() 似乎返回了显示 map 图像边缘的经度。但我想获得当前现实世界 View 的最小和最大经度。

例如,在这张图片中,.getBounds() 表示经度范围在 116 到 37 度之间(宽度为 -79 度!)。我正在寻找的范围是 -244 到 +37。
(甚至是 -180 到 +37,因为这是在 map 中心周围可以看到的世界极端情况。)

google-map-bounds1

另一个例子。我在这里寻找-180到+180 ...
google-map-bounds2

您可以在这里亲自尝试...
http://jsfiddle.net/spiderplant0/EBNYT/

(如果之前已经回答过这个问题,我深表歉意——我确实发现了一些类似的老问题,但似乎没有一个令人满意的答案)。

最佳答案

我今天遇到了同样的问题,但我想我终于弄明白了。

在上面的第一个场景中,您可以使用 map.getBounds().toSpan() 来获取经度的宽度......只要 map 没有环绕。

对于 map 环绕的第二种情况,我扩展了 google.maps.OverlayView()获取 google.maps.MapCanvasProjection目的。从那里你可以调用函数getWorldWidth() .

它将为您提供以像素为单位的世界宽度,然后您可以将其与 map 容器的宽度进行比较。如果您的容器更大,则您的 map 已环绕。

不知道该功能是否适用于此,但它有效。

关于google-maps - 在 Google Maps API V3 中获取非环绕 map 边界,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9624760/

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