I use this code to change the style for selected features.
//selected features get the new style
function bunt()
{
var vlyr= opener.map.layers[opener.map.aktLayer];
//output=vlayer.name + ', isVector=' + vlayer.isVector;
if(vlyr.isVector==true);
{
var objFs = vlyr.selectedFeatures;
for(var i=0;iobjFs.length;i++)
{
var feature = objFs[i];
var obj = new opener.OpenLayers.Style();
obj.fillColor = blue;
obj.fillOpacity = 0.5;
obj.strokeColor = #00;
obj.strokeOpacity = 1;
obj.strokeWidth = 6;
obj.strokeLinecap = 'round';
obj.pointRadius = 2;
feature.style = obj;
vlyr.drawFeature(feature);
}
};
}
//bunt(); this way sets only the above style values
function BuntOnSelect()
{
var vlyr= map.layers[idx];
var objFs = vlyr.selectedFeatures;
var myStyle = OpenLayers.Util.extend({},
map.layers[idx].styleMap.styles[default].defaultStyle);
myStyle.strokeColor = #FF00FF;
//... other
for(var i=0;iobjFs.length;i++)
{ objFs[i].style = myStyle;
vlyr.drawFeature(objFs[i]);
}
}
BuntOnSelect(); //this way all style values are taken from the default of
the layer style and then you can change yours.
Look also:
http://www.nabble.com/Change-style-only-for-one-feature-on-a-layer-td1834918
0.html
Arnd Wippermann
-Ursprüngliche Nachricht-
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Im
Auftrag von Jani Patokallio
Gesendet: Dienstag, 5. August 2008 11:05
An: users@openlayers.org
Betreff: [OpenLayers-Users] Setting the color of a single vector
Greetings,
A very simple question, probably with a very simple answer, but I'm having a
devil of a time figuring it out...
I have a PointTrack layer with a StyleMap attached to it. The StyleMap says
strokeColor: yellow, so when I draw vectors on the layer, they're yellow.
My question is, how do I specify that one (1) vector should
*not* be yellow, but red?
Feature.Vector has style objects as an optional argument, but I have no idea
what style {Object} An optional style object is supposed to mean, and my
guess at new Vector(point, {foo: bar}, {strokeColor: red})
does nothing. Google searches dig up people extending the default style and
then defining a second, entirely separate layer, while
http://trac.openlayers.org/wiki/Styles goes straight off the deep end into
advanced rule-based styling, but all I want to do is draw one red line.
Help?
Cheers,
-jani
___
Users mailing list
Users@openlayers.org
http://openlayers.org/mailman/listinfo/users
___
Users mailing list
Users@openlayers.org
http://openlayers.org/mailman/listinfo/users