Probleme mit draw-Performance

Alles rund um die Programmierung mit Qt
Antworten
qtnub
Beiträge: 17
Registriert: 10. Juli 2007 15:27

Probleme mit draw-Performance

Beitrag von qtnub »

Hallo, ich habe mich nach langer Zeit mal wieder an mein Projekt gemacht, bin aber wieder am verzweifeln.
Das Problem:
Ich programmiere eine Gui, auf der sich (viele!) Balken in Real-Time bewegen sollen (alle 30 ms!).

Nun habe ich mehrere Sachen probiert:
1. Jeder Balken ist ein Widget mit überschriebendem paintEvent
->unbrauchbar, da das den Prozessor komplett lahmlegt!

2. Alle Balken in einem Widget malen
->auch fast so langsam

Merkwürdig finde ich folgendes: wenn ich ein ganz großes bild mit drawPixmap male ist es relativ schnell (ca 20% Prozessorlast bei 30 ms refresh)

Male ich hingegen viele sehr kleine (ca 100) mit jeweils nur wenigen Pixeln (10x10), dann wird ein Core wieder voll ausgelastet. Das Problem ist nun offensichtlich drawPixmap, da es deutlich aufwändiger ist viele kleine Aufrufe zu nutzen als einen Aufruf für ein großes Bild.
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Schon mal versucht, QGraphicsView zu verwenden?
qtnub
Beiträge: 17
Registriert: 10. Juli 2007 15:27

Beitrag von qtnub »

hm..., also ich hab mal dieses Beispiel aus der QT-Doku zum laufen gebracht:
http://doc.trolltech.com/4.3-snapshot/g ... gmice.html
Das lastet einen Core aber auch komplett aus, deswegen gehe ich davon aus, dass QGraphicsView das Problem nicht lösen wird.
Antworten