首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ol.style.stroke中不同颜色的边框

ol.style.stroke中不同颜色的边框
EN

Stack Overflow用户
提问于 2016-02-18 13:38:16
回答 1查看 1.2K关注 0票数 5

在OpenLayers 3中,可以在所选内容中更改边框颜色:

代码语言:javascript
复制
style = new ol.style.Style({
    stroke: new ol.style.Stroke({
      color: 'blue',
      width: 2
    })
  });

但是否有可能只改变边界底部呢?

类似于:

代码语言:javascript
复制
style = new ol.style.Style({
    stroke: new ol.style.Stroke({
      color: 'blue',
      width: 2,
      border-bottom: 2px dotted #ff9900
    })
  });
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-18 14:52:12

当然,由于有了大量的OL 3资源,您可以使用第二种样式来模拟边框底部。使用ol.style#GeometryFunction。灵感来源于这个例子

http://jsfiddle.net/jonataswalker/k11bxma2/

有点不同- http://jsfiddle.net/jonataswalker/n73gm0u9/

代码语言:javascript
复制
var style = [
  new ol.style.Style({
    fill: new ol.style.Fill({
      color: 'rgba(255, 255, 255, 0.2)'
    }),
    stroke: new ol.style.Stroke({
      color: 'red',
      width: 2
    })
  }),
  new ol.style.Style({
    stroke: new ol.style.Stroke({
      color: 'green',
      width: 2
    }),
    geometry: function(feature) {
      var geom = feature.getGeometry();
      var extent = geom.getExtent();
      var bottomLeft = ol.extent.getBottomLeft(extent);
      var bottomRight = ol.extent.getBottomRight(extent);

      // return a linestring with the second style
      return new ol.geom.LineString([bottomLeft, bottomRight]);
    }
  })
];
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35483007

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档