Hauptmenü

Runden in FTUI

Begonnen von NewMatic, 16 Dezember 2019, 17:09:51

Vorheriges Thema - Nächstes Thema

NewMatic

Hallo,

folgender Code zeigt mir ein Symbol an, in welchen Bereich mein Rollo steht (zusätzlich eine invertierde Prozentzahl von state (diese ist ein Userreading und bereits gerundet bzw. abgeschnitten)):

  <header> <div data-type="label" class="big">WZ Fenster</div>  
<div class="hbox">
  <ul><li> <div data-type="symbol" data-device="wz_JalousieFenster"
data-states='["on","([7][5-9])|([8-9][0-9])","([5-6][0-9])|([7][0-4])","([2][5-9])|([3-5][0-9])","([0-9])|([1][0-9])|([2][0-4])","off"]'
data-icons='["oa-fts_garage_door_10","oa-fts_garage_door_20","oa-fts_garage_door_40","oa-fts_garage_door_60","oa-fts_garage_door_80","oa-fts_garage_door_100"]'
data-colors='["SeaGreen","Crimson","Crimson","Crimson","Crimson","GoldenRod"]'></div></li></ul>
<ul><li>  <div data-type="label" data-device="wz_JalousieFenster" data-get="stateInverted"  data-colors="green" data-unit="%"></div> </li></ul>
<!-- stateInverted is ein Userreading! muss zuvor angelegt werden!-->
</div>
  </header>


Funktioniert eigentlich super. Das Problem ist nur, dass meine data-states Bereiche nicht mit Prozentzahlen umgehen können.
Wenn z.B: state=96,5 ist, zeigt er ein fast ganzes geschlossenes Symbol an, obwohl, er nur minimal runtergefahren ist und ein fast ganz offenes Symbol anzeigen sollte.
Bzw. er zeigt oa-fts_garage_door_80 an, obwohl oa-fts_garage_door_20 richtig wäre.

Meine Frage:
wie kann ich in der Index.html data-states runden?

Eine Lösung hätte ich bereits... die scheint mir aber doch recht umständlich:
Anstatt "([7][5-9])|([8-9][0-9])" müsste man "([7][5-9])|([8-9][0-9].[0-9])" schreiben.
Diese bläst aber das ganze ziemlich auf.

Die andere Lösung, wäre dass ich im data-states mein bereits vorhandenes UserReading stateInverted auslese... geht sowas? wenn ja, wie?^^

So ist es derzeit bei einer Nachkommastelle (state=96,5):
falsch.png

so wäre der richtige Zustand:
richtig.png

Danke für eure mithilfe!