2012-03-12 6 views
1

図面マネージャを使用してポリゴンを描画し、ポリゴン座標をデータベースに保存するPHPスクリプトに送信しようとしました。Google Maps v3の図面マネージャでも編集可能なオプションの後にポリゴンを編集することができません

1)私はポリゴンに対して「true」として編集可能なオプションをコーディングしました。しかし、私は ポリゴンを編集していません。何が間違っていたのか分かりませんか?

2)また、私は、この座標が正しいか確認してください んmethod..itがarray..Howとして返されgetPathsを使用して

ポリゴンのパスを取得しよう。私が 'オブジェクト[]オブジェクト'として表示されたら、これらの問題を解決するのを手伝ってください。

答えて

1

マップの相互作用を有効にするには、描画モードをtrueに設定する必要があります。次のコードは、第二の部分のイムは、現在、今やその上で作業に関してトリック:)

google.maps.event.addListener(drawingManager, 'polygoncomplete', function(polygon) { 
     drawingManager.setDrawingMode(null); 

}); 

を行います。アラートの代わりにconsole.logを使用します。パスについて

+0

私がドローイングモードを設定する必要がある理由を教えてもらえますか? – ArunRaj

+0

私はこれをしてからしばらくしています。描画モードが設定されていない場合は、図面と対話できません。希望があれば – encodes

+1

あなたの知識を共有してくれてありがとう。 ;) – ArunRaj

1

var thisPath=polygon.getPath(); 
for(i=0;i<thisPath.length;i++){ 
    var latlng=thisPath.getAt(i); 
    pathString= pathString+', '+ latlng.lat()+' - '+ latlng.lng()+'\n' 
} 
alert (pathString); 
0

部2については、sharingStuffコードが動作します、私は

vertices = this.polygon.getPath(); 
var points = []; 
// Iterate over the vertices. 
if(this.polygon.getMap() == null){ 
    return false; 
} 
for (var i =0; i < vertices.length; i++) { 
    var xy = vertices.getAt(i); 
    points.push(xy.lat() +"," + xy.lng()); 
} 
return JSON.stringify({points: points}); 

、JSONオブジェクトであることがパスに好ましいいずれかの方法は、微細で、ちょうど私は考えあなたに別の選択肢を与える。 :)