在OpenLayers3中向一行添加渐变

时间:2016-10-17 20:50:42

标签: openlayers openlayers-3

感谢您花时间阅读。

我的任务是将一个LineString绘制为一系列不同风格的片段,理想情况下表示为各种渐变。

没有遇到任何问题让他们出现,只是让他们渲染为渐变。对于图层的样式函数,我创建了一个新的样式数组,并以我喜欢的样式返回它。

如果我只使用带笔画的风格,一切都会变得很棒。当我添加填充(即使是单色的简单填充)时,填充也不会显示。

我在这里有很多自由度和自由度,所以如果使用LineString是错误的方法,我很乐意采取不同的方向。

再次,感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

不是添加填充,而是将一系列笔触样式设置为线条。一个用于内部(填充),一个用于外部(笔划)。 像这样:

  var styles = [
                new ol.style.Style({
                    stroke: new ol.style.Stroke({

                        color: "#000000",
                        width: 10
                    })

                }),
                new ol.style.Style({
                    stroke: new ol.style.Stroke({

                        color: "#ff0000",
                        width: 6
                    })
                })
  ];

这是一个fiddle来查看效果(只需在地图上画一条线)