我目前正在制作以下 Map . 它包含不同的折线,如果他们的路线已经在 Map 中显示,则可以获得偏移(通过Leaflet Polyline Offset插件) . 正如您所看到的,在更高的缩放级别下一切正常 . 问题是,当选择较低的缩放级别时,Leaflet会以某种方式错误地显示偏移的行 . 然后该线在某些点上获得一些丑陋的戒指 . 如果我选择较低的偏移量,则线条会正确显示,但它看起来并不像我想要的那样 . 这是一个常见问题还是有人知道如何解决这个问题?

Zoom level 13

Zoom level 12

function drawGeoJSONFeature(feature) {
        var featureGroup = L.featureGroup();
        var geometryArray = getAllGeometriesFromFeature(feature);

        for(var i = 0; i < geometryArray.length; i++) {
            if(!usedLineIDs.includes(geometryArray[i].lineID)) {
                usedLineIDs.push(geometryArray[i].lineID);
                var coords = turf.getCoords(geometryArray[i]);
                var swappedCoords = lnglatTolatlng(coords);
                var layer = L.polyline(swappedCoords, {color: feature.properties.lineColor, weight: 4}).addTo(featureGroup);
            } else {
                usedLineIDs.push(geometryArray[i].lineID);
                var coords = turf.getCoords(geometryArray[i]);
                var swappedCoords = lnglatTolatlng(coords);
                var layer = L.polyline(swappedCoords, {color: feature.properties.lineColor, weight: 4, offset: 4}).addTo(featureGroup);
            }
        }
        featureGroup.addTo(line);
    }

最好的祝福