问题 如何使用google maps api v3旋转地图方向


非常简短的问题 - 因为我在谷歌地图api V3文档中找不到答案

我正在寻找一个控件,它允许我控制/修改api贴图的方向,以便北方不在顶部。

这可能吗?如果是这样,怎么样?

谢谢


4454
2017-08-16 10:18


起源

谷歌地图,没有。我不认为这是他们提供的功能。谷歌地球做到了,但这是完全不同的事情。 - SDC
是的 - 我在谷歌地球上看到了 - 但正如你所说,这是一个不同的故事。 - user1051849
嗨,如页面所述 Google Earth API:**注意:截至2014年12月12日,Google地球API已被弃用.API将于2016年底关闭,并将在此日期之前继续在受支持的浏览器上运行。 ** - Drako


答案:


你可以这样做 45度的想象力 但它仅适用于特定地点。


5
2017-08-16 12:10





目前,Google-Maps-API没有旋转地图的选项(我希望很快会有这个功能)。

旋转地图的唯一方法是:

  1. mapTypeId是 satellite 要么 hybrid
  2. 地图缩放设置为高值(大约18或更多)
  3. 通过设置启用地图倾斜 tilt: 45。通过将地图倾斜45度,此参数将地图显示从2D地图视图更改为类似3D的视图。
  4. heading 参数设置为您想要的旋转(0度,90度,180度和270度)。这只适用于 tilt 已启用。
  5. 地图上的可见区域是支持地图倾斜操作的地方(这些位置有4个方向(北,南,东和西)有4个不同的卫星图像。并非地图上的所有地方都有这4个图像因此并非所有地方在地图上可以旋转。


    function initMap() {
      map = new google.maps.Map(document.getElementById('map'), {
        center: { lat: 45.518, lng: -122.672 }, // try to put different location and rotation may not work
        zoom: 18, // use a smaller zoom level and rotation may not work
        mapTypeId: 'satellite', // use TERRAIN or ROADMAP and rotation will not work
        heading: 90,
        tilt: 45
      });
    }

有关更多信息,请参阅 https://developers.google.com/maps/documentation/javascript/examples/aerial-rotation


2
2018-02-07 15:05





的OpenLayers 是一个免费,轻量级和非常完整的JavaScript映射API。只需看看他们的示例页面,它看起来很棒(旋转示例: https://openlayers.org/en/latest/examples/rotation.html)。

OpenLayers也可以显示Google Maps图块,然后可以旋转 https://gis.stackexchange.com/a/277606/114599


2
2018-01-31 09:03



更新链接: openlayers.org/en/latest/examples/animation.html - LinuxDisciple


作为一种解决方法,您可以使用CSS转换来旋转其包装器div:rotate()

*你需要disableDefaultUI,因为里面的每个元素也会被旋转


1
2017-08-13 16:37





Google地图不会这样做。不幸的是,它总是要面向北方。

我似乎记得OpenStreetMaps确实旋转,我正在寻找确认这种怀疑的东西。会在几个回复你。


0
2017-08-16 11:42