Frage

Ich habe eine Google Map und Street View basierend auf bereitgestellten LAT/LNG -Koordinaten, Zoom, Gier und Tonhöhe. Ich muss ein JavaScript aufrufen, um ein verstecktes Feld für jeden dieser Werte zu aktualisieren, wenn sich eine der Details von ihrer Standardeinstellung ändert oder wenn eine Schaltfläche geklickt wird.

Wenn also die Karte/Street View eingezoomt, verblüfft, geneigt usw. die neuen Details ausgibt.

Wie nenne ich die Funktionen getPov (), gähant (yaw: number), pitchChanged (Tonhöhe: Nummer) und ZoomChanged (Zoom: Nummer), wenn die Straßenansicht geändert wird (ähnlich wie bei MoveSend für Karten)

War es hilfreich?

Lösung

Ich bin mir nicht sicher, wie man dies am besten komprimiert hat, aber dies funktioniert, um die geänderten Details zu erhalten:

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);
});

Andere Tipps

Ich habe im Allgemeinen festgestellt, dass "Moveend" das beste Ereignis ist, das als Haken verwendet werden kann, um den Status der Karte zu erhalten, wenn ein Benutzer ihn ändert. Ich muss nachschlagen, wie man lat/lng, Zoom, Gier und Tonhöhe von der Karte bekommt, ist nicht, wenn ich heute Nachmittag mehr Zeit habe

// 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(','));
});

Für Google Maps API V3 ... unter der Annahme, dass Sie eine StreetView -Karte haben, die bereits "Panorama" geladen wurde

google.maps.event.addListener(panorama, "pov_changed", function() { 
   var panoInfo   = panorama.getPov();
   var thePitch   = panoInfo['pitch'];
   var isHeading  = panoInfo['heading'];
   var theZoom    = panoInfo['zoom'];
});
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top