2017-10-05 19 views
0

새 폴리선을 그릴 때 가이드 라인에서 폴리 라인 포인트를 스냅하려고합니다. 내 마우스가 접근하면 가이드 레이어에 스냅되지만 가이드 레이어에 새 포인트를 추가 할 수는 없습니다. 내가 리플릿의 V1.0.3, Leaflet.draw의 v0.49 및 Leaflet.Snap의 v0.0.4을 사용하고Leaflet.Snap이 폴리 라인을 guideLayer에 스냅 할 수 없습니다.

var mymap = L.map('map').setView([46.658, 7.011], 14); 
var drawnItems = new L.FeatureGroup();   
var mymap.addLayer(this.drawnItems); 
var tracksGeoJson = L.geoJSON(listTracks).addTo(mymap); 
var guideLayers = [tracksGeoJson]; 

var drawControl = new L.Control.Draw(); 
var drawControl.initialize({ 
    edit: { 
     featureGroup: drawnItems 
     }, 
    draw: { 
     polygon: false, 
     circle: false, 
     rectangle: false, 
     marker: false, 
     polyline: {guideLayers: display.guideLayers, snapDistance: 10} 
    } 
}); 
mymap.addControl(this.drawControl);  

:

내지도 및 컨트롤 선언은 다음과 같습니다.

답변

0

발견!

"snapDistance"옵션은 폴리 라인에 적합하지 않았습니다.

var drawControl = new L.Control.Draw(); 
var drawControl.initialize({ 
    edit: { 
     featureGroup: drawnItems 
     }, 
    draw: { 
     polygon: false, 
     circle: false, 
     rectangle: false, 
     marker: false, 
     polyline: {guideLayers: display.guideLayers} 
    } 
}); 
mymap.addControl(this.drawControl); 

그리고 지금은 다른 폴리 라인에 폴리 라인의 포인트를 추가 할 수 있도록 새 drawControl 초기화입니다.