On a single measure, one single IfEqualValue / IfEqualAction options pair can be used. On the [MeasureFillColorLeft] and [MeasureFillColorRight] measures, you've used 9 - 9 pairs, which makes them to not work. That's one reason why I say that the IfConditions are much better. You can use any number of them onto a single measure, just have to number them. So, replace the mentioned two measures with the following ones:
Code: Select all
[MeasureFillColorLeft]
Measure=Calc
Formula=MeasureLeft*100
IfCondition=(MeasureFillColorLeft<45)
IfTrueAction=[!SetOption MeterLeft LineColor 0,255,0,255][!UpdateMeter "MeterLeft"][!Redraw]
IfCondition2=(MeasureFillColorLeft=46)
IfTrueAction2=[!SetOption MeterLeft LineColor 255,255,0,255][!UpdateMeter "MeterLeft"][!Redraw]
IfCondition3=(MeasureFillColorLeft=47)
IfTrueAction3=[!SetOption MeterLeft LineColor 255,255,0,255][!UpdateMeter "MeterLeft"][!Redraw]
IfCondition4=(MeasureFillColorLeft=48)
IfTrueAction4=[!SetOption MeterLeft LineColor 255,255,0,255][!UpdateMeter "MeterLeft"][!Redraw]
IfCondition5=(MeasureFillColorLeft=49)
IfTrueAction5=[!SetOption MeterLeft LineColor 255,255,0,255][!UpdateMeter "MeterLeft"][!Redraw]
IfCondition6=(MeasureFillColorLeft=50)
IfTrueAction6=[!SetOption MeterLeft LineColor 255,255,0,255][!UpdateMeter "MeterLeft"][!Redraw]
IfCondition7=(MeasureFillColorLeft=51)
IfTrueAction7=[!SetOption MeterLeft LineColor 255,255,0,255][!UpdateMeter "MeterLeft"][!Redraw]
IfCondition8=(MeasureFillColorLeft=52)
IfTrueAction8=[!SetOption MeterLeft LineColor 255,255,0,255][!UpdateMeter "MeterLeft"][!Redraw]
IfCondition9=(MeasureFillColorLeft=53)
IfTrueAction9=[!SetOption MeterLeft LineColor 255,255,0,255][!UpdateMeter "MeterLeft"][!Redraw]
IfCondition10=(MeasureFillColorLeft=54)
IfTrueAction10=[!SetOption MeterLeft LineColor 255,255,0,255][!UpdateMeter "MeterLeft"][!Redraw]
IfCondition11=(MeasureFillColorLeft>54)
IfTrueAction11=[!SetOption MeterLeft LineColor 255,0,0,255][!UpdateMeter "MeterLeft"][!Redraw]
[MeasureFillColorRight]
Measure=Calc
Formula=MeasureRight*100
IfCondition=(MeasureFillColorRight<45)
IfTrueAction=[!SetOption MeterRight LineColor 0,255,0,255][!UpdateMeter "MeterRight"][!Redraw]
IfCondition2=(MeasureFillColorRight=46)
IfTrueAction2=[!SetOption MeterRight LineColor 255,255,0,255][!UpdateMeter "MeterRight"][!Redraw]
IfCondition3=(MeasureFillColorRight=47)
IfTrueAction3=[!SetOption MeterRight LineColor 255,255,0,255][!UpdateMeter "MeterRight"][!Redraw]
IfCondition4=(MeasureFillColorRight=48)
IfTrueAction4=[!SetOption MeterRight LineColor 255,255,0,255][!UpdateMeter "MeterRight"][!Redraw]
IfCondition5=(MeasureFillColorRight=49)
IfTrueAction5=[!SetOption MeterRight LineColor 255,255,0,255][!UpdateMeter "MeterRight"][!Redraw]
IfCondition6=(MeasureFillColorRight=50)
IfTrueAction6=[!SetOption MeterRight LineColor 255,255,0,255][!UpdateMeter "MeterRight"][!Redraw]
IfCondition7=(MeasureFillColorRight=51)
IfTrueAction7=[!SetOption MeterRight LineColor 255,255,0,255][!UpdateMeter "MeterRight"][!Redraw]
IfCondition8=(MeasureFillColorRight=52)
IfTrueAction8=[!SetOption MeterRight LineColor 255,255,0,255][!UpdateMeter "MeterRight"][!Redraw]
IfCondition9=(MeasureFillColorRight=53)
IfTrueAction9=[!SetOption MeterRight LineColor 255,255,0,255][!UpdateMeter "MeterRight"][!Redraw]
IfCondition10=(MeasureFillColorRight=54)
IfTrueAction10=[!SetOption MeterRight LineColor 255,255,0,255][!UpdateMeter "MeterRight"][!Redraw]
IfCondition11=(MeasureFillColorRight>54)
IfTrueAction11=[!SetOption MeterRight LineColor 255,0,0,255][!UpdateMeter "MeterRight"][!Redraw]
Note that in each IfTrueAction option I added an
[!UpdateMeter "MeterLeft"] respectively an
[!UpdateMeter "MeterRight"] bang, to update the appropriate meters, then redraw them. If they are not updated, redrawing them is useless.
Then, you're using the values returned by these measures as the MeasureName option of the [MeterLeft] and [MeterRight] meters. But the measures used as MeasureName into a Roundline meter (or a Bar one) should return percentual values. [MeasureFillColorLeft] and [MeasureFillColorRight] don't return such values. To make them to do so, add to the [MeasureFillColorLeft] and [MeasureFillColorRight] measures a
MinValue=0 and a
MaxValue=100 option, to set the smallest and largest value of these measures. You have to do this, because [MeasureLeft] and [MeasureRight] are returning values between 0 and 1, and the [MeasureFillColorLeft] and [MeasureFillColorRight] measures, multiply these values by 100, so their values are between 0 and 100.
And one more: in your initial measures, even if the IfActions would be working, they was set wrong, because you had
IfBelowValue=45 respectively
IfEqualValue=46, which means that you don't have set a condition for 45.
IfBelowValue=45 means up to 44 (including) but not 45 as well.