2016-07-18 123 views

回答

1

您可以使用​​插件以指定的像素数绘制重复折线偏移,并获得一定程度的预期效果。

L.polyline([ 
    [48.3, 0.1], 
    [48.3, 0.7], 
    [48.7, 0.7], 
    [48.7, 0.1], 
    [48.3, 0.1] 
], { 
    fillColor: "none", 
    weight: 4, 
    lineJoin: "miter", 
    color: "red" 
}).addTo(map); 

L.polyline([ 
    [48.3, 0.1], 
    [48.3, 0.7], 
    [48.7, 0.7], 
    [48.7, 0.1], 
    [48.3, 0.1] 
], { 
    fillColor: "none", 
    weight: 4, 
    lineJoin: "miter", 
    color: "black", 
    offset: -4 // Thanks to Leaflet Polyline Offset plugin 
}).addTo(map); 

然而,有一个“错误”的折线起点和终点,由于它是个偏移,但不能缩短/延长至与折线的开始缩小差距。

enter image description here

使用一个L.rectangleL.polygon示出了一个不同的错误,其中最后段未偏移。这可能是插件的改进空间,如果有人有专注的眼光,纠正错误并提交合并请求! :-)

演示:http://jsfiddle.net/3v7hd2vx/42/