有没有办法在传单多边形,多边形中创建两个颜色边框?

时间:2016-07-18 06:43:21

标签: javascript leaflet geojson

如何使用传单创建多边形的自定义边框?我想内边框是黑色,外边是红色,反之亦然。

显示我的意思的示例图片:

有没有办法做到这一点?

1 个答案:

答案 0 :(得分:1)

您可以使用Leaflet Polyline Offset插件按指定的像素数绘制重复的折线偏移,并获得所需的效果。

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/