2013-01-18 13 views
5

私はこのDrawingManagerオブジェクトがあります。変更されたdrawingManagerシェイプのポイント座標を取得する方法は? GoogleマップのAPI v3の

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

をポリゴンが完了したときに私は彼らのCOORDSを得る:

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

しかし、私はDrawingManagerを使用してポリゴンを変更した場合、明らかに形状が変化します多分もっと多くのポイントを追加することができます。
それを修正した後、ポイントをすべて取得するにはどうしたらいいですか?たとえば、ボタンをクリックしてエディションを終了しますか?前もって感謝します。

+0

まあ、明らかに私は私がデータを取得する必要があり、それをクリックしますと、仕上げ用の形状版をボタンを実装する必要があります。 .. – chespinoza

答えて

12

[OK]を、私の第二のコード上の答えを持つ:

JS

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

は、最後に私は、座標が配列を取得関数を呼び出すために、リスナーを追加することで、このコードを呼び出すと、最後の配列を得ました
function getCoordinates() { 
    console.log(polygon.getPath().getArray()); 
} 

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

HTML

<button id="CoordsButton">Coordinates</button> 
012ボタンは現在クリックされたとき

は、それから私は、COORDSを取得...

おかげでとにかく

+0

これを試してみると、実際の座標配列の配列は 'coordinates [0] .j'になります。 – ProblemsOfSumit

関連する問題