1

我有一个基于提供的纬度/经度坐标、缩放、偏航和俯仰的谷歌地图和街景。每当任何详细信息从默认值更改或单击按钮时,我都需要调用 javascript 来更新每个这些值的隐藏字段。

因此,每当地图/街景被放大、平移、倾斜等时,它都会输出新的细节。

每当街景发生变化时,如何调用函数 getPOV()、yawchanged(yaw:Number)、pitchchanged(pitch:Number) 和 zoomchanged(zoom:Number)(类似于 Maps 的 moveend)

4

3 回答 3

4

不确定压缩它的最佳方法,但这可以获取更改的详细信息:

GEvent.addListener(myPano, 'initialized', function(pano) {
  alert("newlng: " + pano.latlng.lng() + ", newlat: " + pano.latlng.lat());
});

GEvent.addListener(myPano, 'yawchanged', function(newyaw){
  alert("yawchanged: " + newyaw);
});

GEvent.addListener(myPano, 'pitchchanged', function(newpitch) {
  alert("pitchchanged: " + newpitch);
});

GEvent.addListener(myPano, 'zoomchanged', function(newzoom) {
  alert("zoomchanged: " + newzoom);
});
于 2009-05-06T14:52:08.180 回答
2

我通常发现“moveend”是在用户更改地图时用作获取地图状态的最佳事件。当我今天下午有更多时间时,我需要查找如何从地图上获取纬度/经度、缩放、偏航和俯仰角

// map is the instance of your GMap2
GEvent.addListener(map, 'moveend', function() {
  var center = map.getCenter();
  var zoom = map.getZoom();

  alert([center.lat(), center.lng(), zoom].join(','));
});
于 2009-04-08T16:28:18.770 回答
2

对于谷歌地图 api v3...假设您已经加载了名为“全景”的街景地图

google.maps.event.addListener(panorama, "pov_changed", function() { 
   var panoInfo   = panorama.getPov();
   var thePitch   = panoInfo['pitch'];
   var isHeading  = panoInfo['heading'];
   var theZoom    = panoInfo['zoom'];
});
于 2011-10-02T00:10:25.413 回答