2016-07-13 9 views
0

私はポリラインを持っており、右クリックでいくつかの点を削除したいと思います。右クリックでポリポイントを取得する方法はありますか?私は地図の座標を取得し、点のポリ配列とそれらを比較することができますが、これは簡単な方法が必要です。この点をクリックするとポリラインポイントを得る方法は?

enter image description here

おかげ

答えて

1

あなたはそれを右クリックしたときには、ライン上の点の座標を取得することができます:

polyline.addListener('rightclick', function(polyMouseEvent) { 
    var coords = polyMouseEvent.latLng; 
}); 

それは、その点があるならば、決定するために少しトリッキーですノードの1つ。 the docsによれば、"イベントが発生したときにカーソルの下の頂点のインデックス、頂点でイベントが発生し、ポリラインまたはポリゴンが編集可能な場合"が見つかります。私はこれで多くの運がないことを思い出しているようです。

パスのセクションを削除するだけでなく、そこから単一の座標を削除する必要があると思います。おそらく毎回ポリラインを完全に再描画しない限り。

ぼんやりと同じようなことをしました。hereここで、ポリラインのそのビットを右クリックすると、パスのセクションが削除されます。

1
newShape.addListener('rightclick', function (polyMouseEvent) { 
    if (google.maps.geometry.poly.isLocationOnEdge(polyMouseEvent.latLng, this, 0.0001)) { 
     var vertex = polyMouseEvent.vertex; 
     // alert(vertex) 
    } 
}); 
関連する問題