绘图标记顶部的一条线

时间:2015-04-17 14:06:50

标签: openlayers-3

我正在尝试使用开放层在另一条线上绘制一条线。想法是绘制预定义线路径的第二行顶部。 sample image line overlay

我们如何在预定义的线路径上绘制一条起始坐标和距离的线?

1 个答案:

答案 0 :(得分:4)

您可以通过从图层的样式函数返回第二个样式来执行此操作,该样式函数具有从原始样式派生的自定义几何图形:

var lineStyle = new ol.style.Style(...); // your existing style
var secondLineStyle = new ol.style.Style({
  ... // styles for the 2nd line
  geometry: function(feature) {
    var geometry = feature.getGeometry().clone();
    ... // modify the geometry, e.g. using forEachSegment and getCoordinateAtM
    return geometry;
  }
});
var layer = new ol.layer.Vector({
  style: function(feature, resolution) {
    return [
      lineStyle,
      secondLineStyle
    ];
  }
});