2009-04-08 4 views
1

Ich habe eine Google-Karte und Street View basierend auf bereitgestellten Koordinaten Koordinaten, Zoom, Gieren und Pitch. Ich muss ein Javascript aufrufen, um ein verstecktes Feld für jeden dieser Werte zu aktualisieren, wenn sich eine der Details von ihrem Standard ändert oder wenn auf eine Schaltfläche geklickt wird.Get lat/lng/Zoom/Gieren/Pitch von Google Street View

Wenn also die Karten-/Straßenansicht gezoomt, geschwenkt, geneigt usw. ist, werden die neuen Details ausgegeben.

Wie rufe ich die Funktionen getPOV(), yawchanged (Gieren: Number), pitchchanged (pitch: Number) und zoomchanged (Zoom: Number), wenn die Street View geändert wird (ähnlich für Maps Moveend)

Antwort

4

nicht dem besten Weges, um sicher mehr Zeit habe, 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); 
}); 
2

Ich habe festgestellt, dass "moveend" das beste Ereignis ist, das als Hook verwendet wird, um den Status der Karte zu erhalten, wenn ein Benutzer sie ändert. Ich muß sehen, wie die lat/lng, Zoom zu bekommen, Gier- und Tonhöhe von der Karte isntanct wenn ich heute Nachmittag dies aber diese Werke zu komprimieren

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

geben einen gehen, danke für den Beitrag –

+0

Dieses W Orks gut für Karten, ich brauche jetzt das genaue Äquivalent von moveend für die Street-Ansicht, um entweder getPOV() oder yawchanged (gay: Number), pitchchanged (pitch: Number) und zoomchanged (zoom: Number) auszugeben –

2

für google Maps aPI v3 ... Vorausgesetzt, dass Sie ein Streetview Karte namens loaded "Panorama"

es bereits
google.maps.event.addListener(panorama, "pov_changed", function() { 
    var panoInfo = panorama.getPov(); 
    var thePitch = panoInfo['pitch']; 
    var isHeading = panoInfo['heading']; 
    var theZoom = panoInfo['zoom']; 
});