2013-01-18 11 views
5

ho questo DrawingManager Oggetto:Come ottenere le coordinate del punto di una forma del drawingmanager modificata? GoogleMaps API v3

drawingManager = new google.maps.drawing.DrawingManager({ 
     drawingMode: google.maps.drawing.OverlayType.POLYGON, 
     markerOptions: { 
     draggable: true 
     }, 
     polylineOptions: { 
     editable: true 
     }, 
     polygonOptions: polyOptions, 
     map: map 
    }); 

E quando un poligono viene completato ricevo le loro coordinate con:

google.maps.event.addListener(drawingManager, 'polygoncomplete', function (polygon) { 
     var coordinates = (polygon.getPath().getArray()); 
     console.log(coordinates); 
     }); 

Ma se cambio il poligono utilizzando DrawingManager ovviamente la forma cambierà , magari aggiungendo più punti ..
Quindi come posso ottenere tutti i punti con i loro coords dopo averlo modificato e ad esempio fare clic su un pulsante per finire l'edizione ?? Grazie in anticipo.

+0

Beh, ovviamente ho bisogno di implementare un pulsante per la finitura l'edizione forma, quando sarò clic su di esso dovrei ottenere i dati. .. – chespinoza

risposta

12

Ok avere la risposta al mio secondo codice:

var coordinates = (polygon.getPath().getArray()); 

Finalmente ho avuto l'ultimo array con coordinate di chiamare questo codice con l'aggiunta di un listener per chiamare una funzione che ottiene la matrice:

JS

function getCoordinates() { 
    console.log(polygon.getPath().getArray()); 
} 

google.maps.event.addDomListener(document.getElementById('CoordsButton'), 'click', getCoordinates); 

HTML

<button id="CoordsButton">Coordinates</button> 

Poi, quando il pulsante viene premuto ora ho la coords ...

Grazie comunque

+0

Quando provo questo, la matrice dell'array di coordinate reali sarebbe unter 'coordinate [0] .j'. – ProblemsOfSumit

Problemi correlati