2017-08-23 40 views
0

2つの特定マーカーの間のポリラインラインを削除する方法。 多くのポリラインが多数のマーカーでつながっています。しかし、私はダブルクリックで任意の行を削除したい。リーフレット2つのマーカーの間のポリラインを削除

どうすればいいですか?

私は、ポリラインを描くためにリーフレットを使用しています。 enter image description here

ここで、ダブルクリックでマーカー3とマーカー4の間のポリラインを削除したいとします。それを行うための手順は何でしょうか。

ありがとうございます。

私はこのようなものを試しましたが、うまくいきませんでした。誰か助けてください、間違いはどこですか?

//polyline delete on double click 

    for (var i = 0; i < $scope.polycoords.length; i++) { 
     var polyline = $scope.polycoords[i]; 
     $scope.polycoords[i].on('click', function (e) { 
     console.log("sdd",polyline._leaflet_id); 
     for (var j = 0; j < $scope.polycoords.length; j++) { 
      if($scope.polycoords[i]._leaflet_id = $scope.polycoords[j]._leaflet_id){ 
        console.log($scope.polycoords[j]) 
        var polyline = $scope.polycoords[j]; 
         map.removeLayer(polyline); 
       } 


      } 


    }); 
    } 

答えて

1
polyline.on('dblclick', function (e) { 
    map.removeLayer(this); 
}); 

編集
これが仕事に行くされ、ここでSO上ごother questionに基づいているので、私はあなたが行ごとに異なるポリラインを作成することを知っています。しかし、すべての座標をまとめて1つのポリラインを作成する他の人にとっては、このソリューションはその一部だけでなくポリライン全体を削除します。

+0

最後の行だけを削除します。 – upendtu

+0

各ポリラインの作成後にこの解決策を置く必要があります(私が正しく覚えていれば、そのダブルループ内にあります)。他の人が理解できるように、ここにサンプルコードを投稿してください。 –

+0

[サンプルコード](https://stackoverflow.com/questions/45810267/marker-with-polyline-while-dragging-the-marker-using-leaflet)マーカ付きポリラインをドラッグするのに使用したサンプルコード – upendtu