Hallo,
ich arbeite gerade daran, ein EKG-Signal, dass ich über eine serielle Schnittstelle auslese (bei mir kommt das Signal in Form von zahlen von 0 bis 255 an) in Echtzeit zu plotten.
Ich habe schon verschiedenes versucht - zunächst einfach jede paar millisekunden oder immer wenn ein neues signal kommt alles neu zu zeichenen, was sehr starkes flimmern verursacht hat.
Dann habe ich das ganze mit bufferung versucht, also erst in eine image variable reingemalt und die dann als ganzes bei jeder änderung auf den bildschirm malen lassen.
Das Ergebnis: kein Flimmern mehr, aber der Plot kommt mit dem Datenstrom nicht mehr mit und hängt total hinterher.
Jetzt hatte ich die Idee, dass ich nur die neuen Daten zeichne und alte die "im Weg sind" mit der Hintergrundfarbe übermale.
Theoretisch sollte das halbwegs funktionieren, nur finde ich es relativ unflexibel, z.B. wenn man das Fenster verschiebt oder die Größe ändert trifft man auf Probleme.
Kennt ihr vielleicht noch eine gute Möglichkeit, wie ich das lösen kann?
Auf jeden Fall sollte es nicht flackern und das Signal muss in Echtzeit ohne Verzögerung geplottet werden.
Vielen Dank schonmal für eure Hilfe!
In der Zeit bis eine Antwort kommt werde ich das mit dem Übermalen nochmal ausprobieren, wie gesagt ist das wie ich denke relativ schnell, aber man muss dann im Paintevent wahrscheinlich noch einiges behandeln.
ich arbeite gerade daran, ein EKG-Signal, dass ich über eine serielle Schnittstelle auslese (bei mir kommt das Signal in Form von zahlen von 0 bis 255 an) in Echtzeit zu plotten.
Ich habe schon verschiedenes versucht - zunächst einfach jede paar millisekunden oder immer wenn ein neues signal kommt alles neu zu zeichenen, was sehr starkes flimmern verursacht hat.
Dann habe ich das ganze mit bufferung versucht, also erst in eine image variable reingemalt und die dann als ganzes bei jeder änderung auf den bildschirm malen lassen.
Das Ergebnis: kein Flimmern mehr, aber der Plot kommt mit dem Datenstrom nicht mehr mit und hängt total hinterher.
Jetzt hatte ich die Idee, dass ich nur die neuen Daten zeichne und alte die "im Weg sind" mit der Hintergrundfarbe übermale.
Theoretisch sollte das halbwegs funktionieren, nur finde ich es relativ unflexibel, z.B. wenn man das Fenster verschiebt oder die Größe ändert trifft man auf Probleme.
Kennt ihr vielleicht noch eine gute Möglichkeit, wie ich das lösen kann?
Auf jeden Fall sollte es nicht flackern und das Signal muss in Echtzeit ohne Verzögerung geplottet werden.
Vielen Dank schonmal für eure Hilfe!
In der Zeit bis eine Antwort kommt werde ich das mit dem Übermalen nochmal ausprobieren, wie gesagt ist das wie ich denke relativ schnell, aber man muss dann im Paintevent wahrscheinlich noch einiges behandeln.