Seite 1 von 1

Graph in QGraphicScene

Verfasst: 9. Oktober 2010 01:24
von phlox81
Hallo,

möchte euch kurz ein Projekt vorstellen, was ich gerade umgesetzt habe.
Es geht um die Darstellung von Graphen in einem QGraphicsView, wobei verschiedene Layouts möglich sind, und die Transition dazwischen ist mit dem Qt AnimationFramework animiert:
http://www.youtube.com/watch?v=OHdc-wtSmg0

Das Ganze ist zurzeit ein Prototyp, das GraphLayout ist modular in einer eigenen DLL unabhängig von Qt implementiert. Suche jetzt vor allem weitere Ideen und potentielle Anwender/Kunden dafür.

Ich bin auch nächste Woche auf den Qt DevDays, wenn ihr das Programm mal live sehen wollt.

Re: Graph in QGraphicScene

Verfasst: 21. Dezember 2010 21:47
von koppi
Hallo phlox81, schönes Video! Hast Du eventuell auch ein Beispiel mit vielen Knoten/Kanten (> 1000), wie gut skaliert das ganze im Moment?

Re: Graph in QGraphicScene

Verfasst: 31. Dezember 2010 00:10
von phlox81
koppi hat geschrieben:Hallo phlox81, schönes Video! Hast Du eventuell auch ein Beispiel mit vielen Knoten/Kanten (> 1000), wie gut skaliert das ganze im Moment?
Nein, habe ich aktuell nicht. Ist halt nur ein Prototyp den ich für die Qt DevDays geschrieben hatte. Danach gings leider gleich weiter mit Projekten und Vorträgen, so dass ich da bisher keine Zeit für hatte.

Prinzipiell ist die Performance des eigentlichen Algoritmus aber wohl unabhängig von Qt, und boost::graph sollte hier recht performant sein.
Dennoch hängt das auch von den verwendeten Parametern ab, da die Algorithmen halt teilweise sehr viele Zyklen für gute Ergebnisse laufen müssen, bzw. mehr Zyklen bessere Ergebnisse bringen können.

Auch ist die Frage, ob es lohnenswert wäre soviele Objekte in einem Graphicsview zu haben und zu animieren. Die Animation ist ja auch eigentlich nur Eyecandy, da sie mit der eigentlichen Positionierung nix zu tun hat, das wird also nicht wärend der Animation berechnet...

Verfasst: 31. Dezember 2010 12:38
von koppi
Ich habe im Studium mal an ein ähnliches Projekt in Java programmiert: http://gravisto.fim.uni-passau.de/