gpt4 book ai didi

javascript - OpenLayers.Filter.Function 未按预期工作。事实上,根本不工作

转载 作者:行者123 更新时间:2023-11-29 20:06:58 26 4
gpt4 key购买 nike

我正在尝试使用函数过滤器设置规则。但它不起作用:该层上的线条只是黑色。更重要的是,我提供的用于过滤特征的函数从未被调用。

谁能指出我犯的错误是什么?

这是代码。

感谢您的时间和亲切的关心。

var my_filter = new OpenLayers.Filter.Function(
function(attributes) {
console.log(attributes);
var x=0;
return true;
});

var ruleLow = new OpenLayers.Rule({
filter:my_filter ,
symbolizer: {pointRadius: 10, fillColor: "green",
fillOpacity: 0.5, strokeColor: "green"}
});


var my_style=new OpenLayers.Style( null,ruleLow);

var my_style_map=new OpenLayers.StyleMap({
"temporary":my_style,
"default":my_style,
"select":my_style
});

this.vectors= new OpenLayers.Layer.Vector(
"Vector Layer",
{
styleMap:my_style_map,
renderers:this.renderer,
}
);

最佳答案

很高兴与您分享如何使用 OpenLayers.Filter.Function!! (所以我解决了我遇到的问题):这基本上是我必须改变的。

还是谢谢你

var my_filter = new OpenLayers.Filter.FeatureId({
**type: OpenLayers.Filter.Function,**
evaluate:function(attributes) {
console.log(attributes);
var x=0;
return true;

}
});
var ruleLow = new OpenLayers.Rule({
filter:my_filter,
});


var my_style=new OpenLayers.Style( {pointRadius: 7, fillColor: "#FF3300",
fillOpacity: 0.5, strokeColor: "#FF3300"},**{rules:[ruleLow]}**);

var my_style_map=new OpenLayers.StyleMap({
"temporary":my_style,
"default":my_style,
"select":my_style

});
this.vectors= new OpenLayers.Layer.Vector(
"Vector Layer",
{
styleMap: my_style_map,
renderers:this.renderer,
}
);

关于javascript - OpenLayers.Filter.Function 未按预期工作。事实上,根本不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11616658/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com