Natürlich kann man einen Radio Stack in XML bauen.
Als ich gesagt habe, dass man mit XML nicht alles machen kann, meinte ich, dass man es nicht schaffen wird, ein FMC oder ein ähnlich komplexes Gauge zu bauen. Aber sonst ist alles machbar!
Hier ein kleiner Ausschnitt aus einem XML Radio Gauge:
(wenn man XML postet, sollte man die Smilies deaktivieren!!!)
PHP-Code:
<Text X="85" Y="35" Bright="Yes" Length="6" Fixed="Yes" Font="Quartz" Color="%('#9F2E40' '#FF9900' (L:DimColor,bool) ?)" Adjust="Left" VerticalAdjust="Center" Multiline="No">
<String>%((L:NavCom1 test,bool))%{if}888.88%!s!%{else}%((A:COM1 ACTIVE FREQUENCY, MHz))%!6.2f!%</String>
</Text>
Kurz erklärt: Mit X und Y wird die Größe(in Pixel) in x und y Richtung definiert.
Bright="YES" sagt aus, dass die Schrift beleuchtet wird, wie es sich für digitale Anzeigen gehört.
Length gibt die Länge in Zeichen an. z.B.: 119.90-->6Zeichen
Mit Adjust und Vertical Adjust wird die Zentrierung bestimmt.
Multiline hat anscheinend keine Funktion.
Mit
wird der darzustellende Text eingeleitet. Wenn nun kein %-Zeichen kommt, so wird das, was man hineinschreibt, angezeigt. z.B.
PHP-Code:
<String>HALLO</String>
gibt HALLO im Flusi. Wenn man aber das ganze zw. zwei % % setzt, so kann man auch Zahlenwerte aus dem Flusi auslesen und dann anzeigen. Z.B.:
PHP-Code:
<String>%((A:General eng4 oil pressure, psi))%!3d!</String>
Dann wird im Flusi der jeweilige Oil-Pres Zahlenwert angezeigt.
Das !3d! heißt, dass eine Zahl ohne Komma(natürliche Zahl???) mit drei Stellen vor dem Komma angezeigt werden soll.
Eine !3.2f! Zahl ist eine Fließkommazahl(float), mit 3 Stellen vor dem Komma und 2 danach!
Der String in diesem speziellen Fall fragt nach einem (L:NavCom1 test,bool), wenn das erfüllt ist, so wird 888.88 angezeigt, ansonsten der jeweilige Zahlenwert.
Soweit so unklar??? Ich poste nachher noch das Radio Gauge.
Viele Grüße,
Harri :-)