<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns="http://www.w3.org/TR/REC-html40" xmlns:v = 
"urn:schemas-microsoft-com:vml" xmlns:o = 
"urn:schemas-microsoft-com:office:office" xmlns:w = 
"urn:schemas-microsoft-com:office:word" xmlns:m = 
"http://schemas.microsoft.com/office/2004/12/omml"><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.2800.1106" name=GENERATOR>
<STYLE>@font-face {
        font-family: Calibri;
}
@page Section1 {size: 8.5in 11.0in; margin: 1.0in 1.0in 1.0in 1.0in; }
P.MsoNormal {
        FONT-SIZE: 11pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Calibri","sans-serif"
}
LI.MsoNormal {
        FONT-SIZE: 11pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Calibri","sans-serif"
}
DIV.MsoNormal {
        FONT-SIZE: 11pt; MARGIN: 0in 0in 0pt; FONT-FAMILY: "Calibri","sans-serif"
}
A:link {
        COLOR: blue; TEXT-DECORATION: underline; mso-style-priority: 99
}
SPAN.MsoHyperlink {
        COLOR: blue; TEXT-DECORATION: underline; mso-style-priority: 99
}
A:visited {
        COLOR: purple; TEXT-DECORATION: underline; mso-style-priority: 99
}
SPAN.MsoHyperlinkFollowed {
        COLOR: purple; TEXT-DECORATION: underline; mso-style-priority: 99
}
SPAN.EmailStyle17 {
        COLOR: windowtext; FONT-FAMILY: "Calibri","sans-serif"; mso-style-type: personal-compose
}
.MsoChpDefault {
        mso-style-type: export-only
}
DIV.Section1 {
        page: Section1
}
</STYLE>
<!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1" />
 </o:shapelayout></xml><![endif]--></HEAD>
<BODY lang=EN-US vLink=purple link=blue>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2><SPAN 
class=815370222-12042010>Hi Jeff,</SPAN></FONT></DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2><SPAN 
class=815370222-12042010></SPAN></FONT>&nbsp;</DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2><SPAN 
class=815370222-12042010>that's the styleMap I use to get the effect. 
Still&nbsp;in IE the labels with&nbsp;the font-size&nbsp;= 0px will drawn in 
very small letters?!</SPAN></FONT></DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2><SPAN 
class=815370222-12042010></SPAN></FONT>&nbsp;</DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2><SPAN 
class=815370222-12042010>Labels are a function of the zoomlevel (context) and 
the features are a function of the attribute popClass 
(UniqueValueRules).</SPAN></FONT></DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2><SPAN 
class=815370222-12042010></SPAN></FONT>&nbsp;</DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2>var 
styleMapCapitols;</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2>function 
setStyleMapCapitols()<BR>{<BR>&nbsp;&nbsp;&nbsp; var context = 
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; getFontSize : 
function(ft){</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff 
size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var 
diffZ = map.getZoom() - 
4;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var 
popclass = parseInt(ft.attributes.popclass);</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff 
size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
if(popclass &gt; 10 &amp;&amp; map.getZoom() &gt; 
1)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
return(map.getZoom() + 7 + 
"px");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
else if(diffZ &gt; 0 &amp;&amp; 
popclass&gt;9)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
return (10 + 1*diffZ 
+"px")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
else if(diffZ &gt; 
0)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
return (8 + 1*diffZ 
+"px")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
else<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
return("0px");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
},<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; getName : function 
(ft){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
return ft.attributes.name;<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
}<BR>&nbsp;&nbsp;&nbsp; };<BR>&nbsp;&nbsp;&nbsp; var template = 
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; strokeColor: 
"#0000FF",<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; strokeOpacity: 
1,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; strokeWidth: 
3,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fillColor: 
"#00AAFF",<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fillOpacity: 
1,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pointRadius: 
5,<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; pointerEvents: 
"visiblePainted",</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff 
size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; label : 
"${getName}",</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff 
size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; labelOffsetX: 
"10",<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; labelOffsetY: 
"-10",<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fontColor: 
"red",<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fontSize: 
"${getFontSize}",<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fontFamily: 
"Arial",<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fontWeight: 
"bold",<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; labelAlign: 
"lt"<BR>&nbsp;&nbsp;&nbsp; };<BR>&nbsp;&nbsp;&nbsp; styleMapCapitols = new 
OpenLayers.StyleMap(new OpenLayers.Style(template, {context:context}) 
);</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2>&nbsp;&nbsp;&nbsp; 
var tata = {fillColor: '#FFAADD', pointRadius: 5, label : 
"${getName}",labelOffsetX: "10",labelOffsetY: "20",fontColor: "yellow",fontSize: 
"${getFontSize}",fontFamily: "Arial",fontWeight: "bold",labelAlign: 
"lt"}</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2>&nbsp;&nbsp;&nbsp; 
var popArrO = [0.5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ,&nbsp;&nbsp;&nbsp;&nbsp; 
0.5&nbsp; , 0.5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 
0.5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 0.5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 
0.5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 0.5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 
0.5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 0.75&nbsp;&nbsp;&nbsp;&nbsp; , 
0.75&nbsp;&nbsp;&nbsp;&nbsp; , 0.75];<BR>&nbsp;&nbsp;&nbsp; var popArrW = 
[1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ,&nbsp;&nbsp;&nbsp;&nbsp; 
1&nbsp;&nbsp;&nbsp; , 1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 
1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 
1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 
1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 
2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 
2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 
2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 
2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 2 ];<BR>&nbsp;&nbsp;&nbsp; var 
popArrR = [2&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ,&nbsp;&nbsp;&nbsp;&nbsp; 
2&nbsp;&nbsp;&nbsp; , 3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 
3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 
4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 
4&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 
5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 
5&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 
6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 
7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; , 10];<BR>&nbsp;&nbsp;&nbsp; var 
popArrC = ['#FFFF00', '#00FF00', '#AA00FF', '#0000FF', '#FF8800', '#FF0000', 
'#FFAAAA', '#AAFFAA', '#AAAAFF', '#FF00FF', '#FF00AA'];</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2>&nbsp;&nbsp;&nbsp; 
var lookup = {};&nbsp; //popclass beginnt mit 1!<BR>&nbsp;&nbsp;&nbsp; for(var 
i=0;i&lt;11;i++)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
lookup[i+1]&nbsp;&nbsp;&nbsp; = new OpenLayers.Util.applyDefaults({pointRadius: 
popArrR[i], fillColor: popArrC[i], fillOpacity: popArrO[i], strokeWidth: 
popArrW[i], strokeColor: popArrC[i]}, tata);</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2>&nbsp;&nbsp;&nbsp; 
styleMapCapitols.addUniqueValueRules("default", "popclass", 
lookup);<BR>}<BR>setStyleMapCapitols();<BR></FONT></DIV>
<DIV dir=ltr align=left><SPAN class=815370222-12042010><FONT face=Arial 
color=#0000ff size=2>an example:</FONT></SPAN></DIV>
<DIV dir=ltr align=left><FONT face=Arial color=#0000ff size=2><A 
href="http://gis.ibbeck.de/OLClient/OLClient.asp?KARTE=k10000">http://gis.ibbeck.de/OLClient/OLClient.asp?KARTE=k10000</A></FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><SPAN class=815370222-12042010></SPAN><U><FONT face=Arial><FONT 
color=#0000ff><FONT size=2>A<SPAN 
class=815370222-12042010>rnd</SPAN></FONT></FONT></FONT></U><BR></DIV>
<DIV class=OutlookMessageHeader lang=de dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>Von:</B> users-bounces@openlayers.org 
[mailto:users-bounces@openlayers.org] <B>Im Auftrag von </B>Jeff 
Dege<BR><B>Gesendet:</B> Montag, 12. April 2010 22:19<BR><B>An:</B> 
users@openlayers.org<BR><B>Betreff:</B> [OpenLayers-Users] Vector labels at 
different zoom levels<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV class=Section1>
<P class=MsoNormal>I'm adding some attributes to the GML data I'm using to draw 
a vector layer, and have set the label member of the style object to display 
those attributes.<o:p></o:p></P>
<P class=MsoNormal><o:p>&nbsp;</o:p></P>
<P class=MsoNormal>It works fine, except that it looks lousy when I zoom 
out.&nbsp; The labels are still drawn the same, even though the features may be 
nearly invisible.<o:p></o:p></P>
<P class=MsoNormal><o:p>&nbsp;</o:p></P>
<P class=MsoNormal>How do I turn off the rendering of labels, when the scale 
exceeds some threshold?&nbsp; (Note - I still want to draw the features, I 
simply don't want the labels.)<o:p></o:p></P>
<P class=MsoNormal><o:p>&nbsp;</o:p></P>
<P class=MsoNormal>I've tried adding a listener to map.movestart, that changes 
the value of layer.styleMap.styles['default'.defaultStyle.label, but that only 
affects future renderings of the map, it has no effect on the current 
zoom.<o:p></o:p></P>
<P class=MsoNormal><o:p>&nbsp;</o:p></P></DIV></BODY></HTML>