Включите привязку для опции редактирования на листке - PullRequest
0 голосов
/ 13 июня 2019

Я хочу включить привязку для опции редактирования на панели инструментов рисования листовки, чтобы при редактировании пользователем существующего объекта он мог привязываться к соседнему объекту

Во время редактирования слой может привязываться к себе. Поэтому я удалил слой редактирования из направляющего слоя. editLyr содержит один многоугольник, а editGuideLyr содержит остальные многоугольники, но editLyr не привязывается с помощью editGuideLyr

Текущий слой содержит все слои многоугольника

drawGuideLyr = currLyr.getLayers();
editLyr.addLayer(currLyr.getLayers()[0]);
tempLyr.removeLayer(editLyr.getLayers()[0]);
editGuideLyr = tempLyr.getLayers();

Параметры панели инструментов рисования

    var drawPluginOptions = {
    position: 'topleft',
    draw: {
        polygon: {            
            guideLayers: drawGuideLyr,
            snapDistance: 10,
            allowIntersection: false,
            showArea: true,
            drawError: {
               color: '#b00b00',
               timeout: 1000
            }},
            polyline: false,
            circle: false,
            rectangle: false,
            marker: false,
        },
    // Try 1
    edit: {
        featureGroup: editLyr,
        edit:{            
            snapOptions: {
                guideLayers: editGuideLyr,
            },
        },
        remove: false,
    },
   //Try2
     edit: {
        featureGroup: editLyr,
        edit:true,            
        snapOptions: {
          guideLayers: editGuideLyr,  
        },
        remove: false,
    },
};

Захват работает нормально при рисовании нового многоугольника, но не работает при редактировании существующих многоугольников

...