ich habe einen Hänger. Es geht um folgenden Code:
Code: Alles auswählen
{
"Input": [
["In","Eingang","$In","c"]
],
"Output": [
["Out","Ausgang","$Out","c"]
],
"Level": [
["$In","float",0],
["$Out","float",0]
],
"Module": [
["Interpolation","$In","$In",[[0,0],[100,255]]],
["Polynomial","$In","$Out",[0,1]]
]
}
Das an sich funktioniert. Mir ist aber aufgefallen, dass die Logik die Interpolation doppelt ausführt, wenn ich mit dem Wert weiterarbeite. Nachfolgend ein BEISPIEL mit Interpolation, in dem nichts anderes macht wird, als das Ergebnis dann doch auf einen Ausgang zu bekommen. Habe sowohl über den Doktermodus aber auch über ein Objekt den Eingangswert "100" geschrieben und erhalte folgendes Ergebnis: Ihr seht, die Variable "$In" wird zweimal interpoliert. Das Ergebnis ist folglich gleich dem Quadrat aus der ersten Interpolation von "$In".
Hier konkret: 100-->255-->65025
Was habe habe ich noch getestet:
1) nur das Modul Interpolation ohne weitere Verarbeitung. Laut Grafane macht es was es soll: 2) ein Latch als Ergebnisspeicher macht auch was ich erwarte:
Code: Alles auswählen
"Module": [
["Interpolation","$In","$In",[[0,0],[100,255]]],
["Latch","$In","$Out","$true",0]
]
Kann jemand mein "Problem" nachvollziehen? Es geht mir nicht direkt um eine funktionierende Code-Alternativ. Die habe ich mit dem Latch ja bereits. Es geht mir viel eher darum meine Wissenslücke zu schließen (oder im Zweifelsfall einen Bug zu melden ). Ist der Verzicht auf die interne Variable eigentlich schlechter Stil, weil fehleranfälliger oder handhabt ihr das regelmäßig auch so?
Eine Anmerkung noch: ich habe zwar oben die 2.0-IP4 vermerkt, aufgefallen war mir das aber schon in der 1.6 vor dem Update.
Vielen Dank soweit.
Viele Grüße
Tobias