Colors openlayers多边形更改颜色
我正在使用OL3和javascript在地图上绘制几个多边形。每个多边形来自WKT格式的数据库,如“POLIGON((39-9,…)”。我可以在地图上画它们,但我想改变每一个的填充颜色,但不知道怎么做。 这是我的密码:Colors openlayers多边形更改颜色,colors,polygon,openlayers-3,Colors,Polygon,Openlayers 3,我正在使用OL3和javascript在地图上绘制几个多边形。每个多边形来自WKT格式的数据库,如“POLIGON((39-9,…)”。我可以在地图上画它们,但我想改变每一个的填充颜色,但不知道怎么做。 这是我的密码: //WKTpoly -> this is my array of POLYLINES var format = new ol.format.WKT(); var vectorArea = new ol.source.Vector({}); for (var i=0;i<
//WKTpoly -> this is my array of POLYLINES
var format = new ol.format.WKT();
var vectorArea = new ol.source.Vector({});
for (var i=0;i<WKTpoly.length;i++) {
var featureGeom = format.readFeature(WKTpoly[i]);
featureGeom.getGeometry().transform('EPSG:4326', 'EPSG:3857');
vectorArea.addFeature(featureGeom);
}
VectorMap = new ol.layer.Vector({
name: map,
source: vectorArea,
});
map.addLayer(VectorMap);
//WKTpoly->这是我的多段线数组
var format=new ol.format.WKT();
var vectorArea=new ol.source.Vector({});
对于(var i=0;i嗯,在LessThanJake响应和更多的google搜索之后,我找到了解决方案,我必须创建一个样式并在addFeature()之前调用setStyle():
感谢LessThanJake指出了正确的方向。或者您可以将图层设置为使用函数作为样式
函数签名是
var makeStyle = function(feature,resolution) {
return [styles];
};
可以使用此选项按特征和分辨率(缩放级别)管理样式。
由于在每次功能渲染时都会调用该函数,因此需要将样式缓存在js对象中以获得性能。我建议查看GIS StackExchange以了解openlayers问题!
var makeStyle = function(feature,resolution) {
return [styles];
};