eigentlich ist es ganz einfach, aber ich hänge bei dieser Aufgabe jedesmal wenn ich es benötige

Ich habe einen Balken...
Vollausschlag entsprich dem Wert 20
Ganz unten ist der Balken bei dem Wert 300
Und will ich Werte von 2-4 auf diesem Balken abbilden..als.
2 soll 300 entsprechen und
4 soll 20 entsprechen....*kopfkratz*
Code: Alles auswählen
Procedure TFT_16_Bit_Bars;
Var space : Byte; //Abstand einzelner Klötzchen
BL_Start : Word; //Balkenlänge statisch oben
BL_End,p : Word; //Balkenlänge statisch unten
BL : Word; // Balkenlänge_Dynamisch
testvalue : Real;
Begin
space := 22; //Abstand einzelner Klötzchen
BL_Start := 20; //Balkenlänge statisch oben
BL_End := 300; //Balkenlänge statisch unten
BL := 20; // Balkenlänge Dynamisch
testvalue := 3.0; //76,7
BL:= 320-(testvalue*80);
// ******** Balken 1 *******
TFT_16bit_Set_Brush(1, 1, 1, LEFT_TO_RIGHT_16bit, CL_lime_16bit, CL_white_16bit);
For p:=300 DownTo BL DO //downTo Ausschlag nach oben
Begin
IF p mod space = 0 THEN TFT_16bit_Rectangle(0, p, 20, p+20);
// delay_ms(5);
end;
TFT_16bit_Set_Brush(1, 1, 1, LEFT_TO_RIGHT_16bit, CL_red_16bit, CL_WHITE_16bit);
For p:=BL_Start To BL DO
Begin
IF p mod space = 0 THEN TFT_16bit_Rectangle(0, p, 20, p+20);
end;
end;