Performanz von QGraphicsView erhöhen?

Alles rund um die Programmierung mit Qt
Antworten
Andy2211
Beiträge: 65
Registriert: 29. September 2008 23:02

Performanz von QGraphicsView erhöhen?

Beitrag von Andy2211 »

Hallo,
könnt Ihr mir ein paar Tips geben, wie ich die Performanz von den Graphen erhöhen kann?

Momentan benutze ich einen QTimer mit ca. 50ms und einem .addLine Aufruf.

Leider lahmt das ganz ein bisschen (Antial. etc. schon ausgeschaltet).
Was gibt es noch für Möglichkeiten?

Gruß,
Andy
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Für die View ein OpenGL-Widget verwenden. Was machst du eigentlich konkret?
Andy2211
Beiträge: 65
Registriert: 29. September 2008 23:02

Beitrag von Andy2211 »

Hi,
danke für den Tipp, aber das mache ich eigentlich schon (view->setViewport(new QGLWidget())?

Ich mache einen Graphen der mit fortlaufend werte als Diagramm anzeigen soll. Bei jedem Timeraufruf soll dann eine Linie zum nächsten Punkt gezogen werden.

Gruß,
Andy
franzf
Beiträge: 3114
Registriert: 31. Mai 2006 11:15

Beitrag von franzf »

Ich trau mich wetten, du aktualisierst mit einem update() immer die komplette view, wenn eine neue Linie dazukommt...
Ansonsten brauchen wir Code.
slash-ex
Beiträge: 239
Registriert: 30. März 2005 21:40

Beitrag von slash-ex »

Das ist nicht so einfach zu verallgemeinern. Du kannst das Update()-Verhalten als erstes enstellen. Dann musst du bedenken, was den Widget können muss.
Wenn du sehr viele Items in der Scene hast, die sich alle in ihrer Position verschieben, dann wird das ganze wohl langsamer sein, als eine optimierte paintEvent()-Funktion, die nur den Teil malt, der gezeichnet werden soll, dafür aber Veränderungen berücksichtigt.
Zudem, kannst du sehr komplexe Scenen auch als Bild zwischenspeichern und dann zeichnen, bis sich was ändert. Allerdings gibts da evtl Probleme wenn die Scene sehr groß ist, bzw. der Ausschnitt darin geändert werden muss.
Außerdem kannst du in einem GraphicsView glaube den Hintergrund puffern und von Veränderungen ausnehmen.
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Von wievielen Linien reden wir hier eigentlich?
Antworten