Just realized that although the 'bar' type barometer shows Min / Max, the 'anolog' (dial and needle) does not !
Code: Select all
function dobar(type){
if(type=="analog"){
abtc=AnalogBaroTextColor;abnc=AnalogBaroNeedleColor;
tgd="<div id='barometer' style='"+fst+"width:220px; height:180px;'><img src='dbimages/barometer2.gif'></div>";
document.getElementById("barometer").parentNode.innerHTML=tgd;
var jg=new jsGraphics("barometer");
jg.drawImage('dbimages/'+bardata[5]+'.gif',70,97,9,29);
// do 'current' needle
val=0;
if(parseFloat(bardata[0])<100){
val=Math.ceil(bardata[0]/0.029528750668088)-565;
}else{
val=parseInt(bardata[0])-565;
}
to=getpixel(110,110,63,val,2);
jg.setColor(abnc || "#000000"); // BLACK default unless set in html page
jg.setStroke(2);
jg.drawLine(110,110,to[0],to[1]);
jg.drawEllipse(103,103,14,14);
// do 'Max' needle
val=0;
if(parseFloat(bardata[3])<100){
val=Math.ceil(bardata[3]/0.029528750668088)-565;
}else{
val=parseInt(bardata[3])-565;
}
to=getpixel(110,110,55,val,2);
jg.setColor("#FF0000"); // RED
jg.drawLine(110,110,to[0],to[1]);
// do 'Min' needle
val=0;
if(parseFloat(bardata[4])<100){
val=Math.ceil(bardata[4]/0.029528750668088)-565;
}else{
val=parseInt(bardata[4])-565;
}
to=getpixel(110,110,55,val,2);
jg.setColor("#0000FF"); // BLUE
jg.drawLine(110,110,to[0],to[1]);
jg.setColor("#999999");
jg.fillEllipse(105,105,12,12);
jg.setFont("verdana","9px",Font.PLAIN);
jg.setColor(abtc || "#555555");
jg.drawStringRect("Now: "+parseFloat(bardata[0]),60,138,100,"center")
jg.setFont("verdana","9px",Font.PLAIN);
jg.setColor(abtc || "#555555");
jg.drawStringRect("Max: "+parseFloat(bardata[3]),60,150,100,"center")
jg.setFont("verdana","9px",Font.PLAIN);
jg.setColor(abtc || "#555555");
jg.drawStringRect("Min: "+parseFloat(bardata[4]),60,162,100,"center")
mo[0]="Current:"+bardata[0]+" "+bardata[1];
mo[1]="Max Today:"+parseFloat(bardata[3])+" "+bardata[1];
mo[2]="Min Today:"+parseFloat(bardata[4])+" "+bardata[1];
mo[3]="Trend:"+bardata[2];
document.getElementById("barometer").title="header=[Barometer ("+bardata[1]+")] body=["+getmo(mo)+"] delay=["+mod+"]";
}else{
w=90;
h=100;
tgd="<div id='barometer' style='"+fst+"width:"+w+"px; height:"+h+"px;'></div>";
document.getElementById("barometer").parentNode.innerHTML=tgd;
var jg=new jsGraphics("barometer");
jg.setColor("#AAAAAA");
jg.fillRect(0,0,w,h);
jg.setColor("#DDDDDD");
jg.fillRect(5,5,w-10,23);
jg.setColor("#FEFEFE");
jg.drawLine(0,0,w,0);
jg.setColor("#FEFEFE");
jg.drawLine(0,0,0,h);
jg.setColor("#000000");
jg.drawLine(1,h,w,h);
jg.setColor("#000000");
jg.drawLine(w,h,w,1);
jg.setColor("#FEFEFE");
jg.drawLine(5,28,w-5,28);
jg.setColor("#FEFEFE");
jg.drawLine(w-5,5,w-5,28);
jg.setColor("#000000");
jg.drawLine(5,5,w-5,5);
jg.setColor("#000000");
jg.drawLine(5,5,5,28);
jg.setFont("verdana","18px",Font.BOLD);
jg.setColor("#000000");
jg.drawStringRect(bardata[0],5,5,w-10,"center");
jg.setFont("verdana","9px",Font.PLAIN);
jg.setColor("#FFFFFF");
jg.drawStringRect(bardata[1],5,36,70,"left");
jg.drawImage('dbimages/'+bardata[5]+'.gif',w-14,35,9,29);
jg.setFont("verdana","9px",Font.PLAIN);
jg.setColor("#FFFFFF");
jg.drawStringRect(bardata[2],5,50,70,"left");
jg.setFont("verdana","9px",Font.PLAIN);
jg.setColor("#FFFFFF");
jg.drawStringRect("Max: "+parseFloat(bardata[3]),5,70,w-10,"center");
jg.setFont("verdana","9px",Font.PLAIN);
jg.setColor("#FFFFFF");
jg.drawStringRect("Min: "+parseFloat(bardata[4]),5,82,w-10,"center");
}
jg.paint();
}