I had a symbolfunction that looked like this:
private function getTrackSymbol(graphic:Graphic):Symbol
{
var symbol:Symbol = nodatasymbol;
var minpall:Number;
if (mapvariables.strshowAALayer==MapInitialData.strMinorityField )
{
if (minoritysetting.boolminoritypercentdefault)
minpall = graphic.attributes.MIN_P_ALL;
else
{
if (minoritysetting.strminoritypercentfields.length > 0)
{
var tmnumber:Number = 0;
if (minoritysetting.strminoritypercentfields.indexOf("t_pop_black_african_amer") > -1)
tmnumber += Number(graphic.attributes.t_pop_black_african_amer);
if (minoritysetting.strminoritypercentfields.indexOf("t_pop_asian") > -1)
tmnumber += Number(graphic.attributes.t_pop_asian);
if (minoritysetting.strminoritypercentfields.indexOf("t_pop_hisp") > -1)
tmnumber += Number(graphic.attributes.t_pop_hisp);
if (minoritysetting.strminoritypercentfields.indexOf("t_pop_haw_PI") > -1)
tmnumber += Number(graphic.attributes.t_pop_haw_PI);
minpall = (graphic.attributes.persons_pop==0)?0:(tmnumber*100/graphic.attributes.persons_pop);
}
else
minpall = 0;
}
}
else if (mapvariables.strshowAALayer==MapInitialData.strIncomeField)
minpall = graphic.attributes.INC_P_ALL;
// show on map
if (minpall >=0 )
{
if (minpall < commonaasetting.numaabreak1toplimit)//20
{
symbol = gsymbol1;//trackinsymbol[0];
}
else if (minpall >= commonaasetting.numaabreak1toplimit && minpall < commonaasetting.numaabreak2toplimit)
{
symbol = gsymbol2;//trackinsymbol[1];
}
else if (minpall >= commonaasetting.numaabreak2toplimit && minpall < commonaasetting.numaabreak3toplimit)
{
symbol = gsymbol3;//trackinsymbol[2];
}
else if (minpall >= commonaasetting.numaabreak3toplimit && minpall < commonaasetting.numaabreak4toplimit)
{
symbol = gsymbol4;//trackinsymbol[3];
}
else if (minpall >= commonaasetting.numaabreak4toplimit && minpall < commonaasetting.numaabreak5toplimit)
{
symbol = gsymbol5;//trackinsymbol[3];
}
else if (minpall >= commonaasetting.numaabreak5toplimit )
{
symbol = gsymbol6;//trackinsymbol[3];
}
}
return symbol;
}
The issue is here:
in symbolfunction I could get a value say: minpall = graphic.attributes.MIN_P_ALL;
and based on user selection I could compute a value and then compare the value with the limits to give symbols.
But in classbreak renderer in api 2, I can only mention
classValuerenderer.attribute = "MIN_P_ALL";
and compare that attribute value to the limits..
Is there a way to do a computed value comparison with the limits in api 2 (similar to symbol function in 1.3)?