[OpenLayers-Users] save Filter
Jimmy Aumard
jimmy.aumard at gmail.com
Fri Dec 18 04:55:58 EST 2009
It's work I make this:
function createSLD(layer){
var rules=[];
for(var i=0;i<layer.styleMap.styles.default.rules.length;i++){
rules[i]=layer.styleMap.styles.default.rules[i];
}
var defaultStyle = new OpenLayers.Style("default", {
rules: rules,
name:"default",
isDefault:true
});
rules=[];
for(var i=0;i<layer.styleMap.styles.select.rules.length;i++){
rules[i]=layer.styleMap.styles.select.rules[i];
}
var selectStyle = new OpenLayers.Style("select", {
rules: rules,
name:"select",
});
var sld = new OpenLayers.Format.SLD().write({
namedLayers: [{
name: layer.name,
userStyles: [defaultStyle,selectStyle]
}]
});
return sld;
}
Just a little problem : I use externalGraphics for Point and size is by
default to 6? How can I specify the size of externalGraphics?
Thanks for help.
Jim
The StyleMap is no 1:1 representation of an SLD document. So you would
e.g. have to do the following:
var rule = new OpenLayers.Rule({
filter: yourFilter
});
rule.symbolizer[yourGeometryType(point|line|polygon)] = yourSymbolizer;
var style = new OpenLayers.Style("", {rules: [rule]});
var sld = new OpenLayers.Format.SLD().write({
namedLayers: [{
name: yourLayer.name,
userStyles: [style]
}]
});
--
Aumard Jimmy
Développeur - http://www.kinaxia.fr
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/openlayers-users/attachments/20091218/ab60a5fa/attachment.html
More information about the Users
mailing list