【问题标题】:how to rotate the google map div with out changing the map dragging functionality如何在不更改地图拖动功能的情况下旋转谷歌地图 div
【发布时间】:2015-12-19 19:26:45
【问题描述】:

下面发布的问题 how to rotate a google map in a web application 可用于通过旋转包含地图的 div 来旋转地图

但是如果我在地图上滚动或拖动,地图会以不可预知的方式工作,有没有办法保持这些功能原样

注意:我正在使用 div 旋转地图,因为该位置没有空中图块。

请说这是否可以用其他一些地图 API 来完成是如何在谷歌地图 API 中进行的

【问题讨论】:

    标签: google-maps google-maps-api-3 rotation drag


    【解决方案1】:

    除非您发布更完整的答案,否则很难确定地回答,但我相信您的问题与腐蚀系统有关。

    您正在旋转地图的显示,但鼠标的 x,y 坐标没有。当您拖动鼠标时,javascript 会捕获鼠标相对于屏幕的移动,然后您将输出旋转 45 度。换句话说,谷歌地图不知道你已经旋转了它。如果您只是将显示器旋转 90 度,将是相同的输出,鼠标仍将发送相同的 x,y 坐标。

    为了执行我认为您想要的操作,您需要接管处理移动的代码或以其他方式完成它。您会注意到在您引用的示例中禁用了拖动。

    这可能是开始寻找在鼠标事件上获取地图中心的地方: https://developers.google.com/maps/documentation/javascript/3.exp/reference#MouseEvent

    通过查看以下获取像素的示例,您可能能够获取当前坐标并“转换”新坐标: https://developers.google.com/maps/documentation/javascript/examples/map-coordinates

    这是一个解释有关转换坐标系的一些事情的页面: http://www.continuummechanics.org/cm/coordxforms.html

    如果这是您真正必须要做的事情,那么它可能可以完成,但要做到正确可能比平均地图嵌入要麻烦得多。它还可能会添加大量处理,从而使交互变得相当滞后。

    说了这么多之后,我仍然很想看到这个工作的例子,所以如果你让它工作,请发布一些代码。

    【讨论】:

      猜你喜欢
      • 2020-01-22
      • 2014-08-25
      • 1970-01-01
      • 2012-09-15
      • 2021-04-29
      • 1970-01-01
      • 1970-01-01
      • 2018-06-28
      • 1970-01-01
      相关资源
      最近更新 更多