Punkt animieren

Plattformunabhängige GUIs mit wxWidgets.
Antworten
Dennis
User
Beiträge: 7
Registriert: Donnerstag 17. Mai 2007, 20:09

Hey,
ich habe mich jetzt mal ein bisschen mehr mit wxpython beschäftigt. Also ein Programm mit Oberfläche und Formularen habe ich bereits erstellt. Doch ich muss nun einen Punkt mit einer gewissen Geschwindigkeit in eine Richtung animieren. Den Punkt zu machen ist natürlich nicht die Herausforderung:

Code: Alles auswählen

dc.SetPen(wx.Pen('BLACK'))
dc.DrawPoint(x, y)
Doch ich habe leider keine Idee, wie ich den Punkt jetzt animieren kann. Hättet ihr nicht ein paar Vorschläge.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Was meinst du denn überhaupt mit animieren? Größer/kleiner verdender Punkt? Sich bewegender Punkt? Sich verfärbender Punkt?
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Dennis
User
Beiträge: 7
Registriert: Donnerstag 17. Mai 2007, 20:09

Hab ich doch schon ein bisschen beschrieben.

Einen Punkt in eine Richtung bewegen. So nach dem Motto :

1) .
2) .
3) .
4) .
also theoretisch einen Pixel nach rechts und den alten pixel löschen. und das mit einer geschwindigkeit z.b. m/s.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Ich würde mir ein Canvas nehmen und einen Zeitgeber und dann bei jedem Tick des Zeitgebers die neue Position des Punktes ausrechnen, das Canvas löschen und den neuen Punkt draufzeichnen.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Dennis hat geschrieben:Doch ich muss nun einen Punkt mit einer gewissen Geschwindigkeit in eine Richtung animieren.
Hallo Dennis!

Vielleicht findest du in diesem Topic was du suchst.
http://www.python-forum.de/topic-16675. ... ight=cairo

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Also mit PyGooCanvas geht das ganz einfach (mir war gerade nach Spielen zumute). Das hat sogar schon recht umfangreiche Animationsmöglichkeiten eingebaut, da muss man sich gar nicht mehr um Zeiten und so kümmern. Achja und nutzt wie Gerolds Beispiel auch Cairo unter der Haube.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Dennis
User
Beiträge: 7
Registriert: Donnerstag 17. Mai 2007, 20:09

Ja, vielen Dank schonmal, die Sachen (vorallem pygoocanvas) sehen echt nicht schlecht aus, damit würde das bestimmt klappen.

Aber ich bekomm es nicht hin, das Modul unter Windows zum Laufen zu bekommen. In dem Ordner ist keine setup.py und eine binary hab ich auch nicht gefunden.

Ich muss es also irgendwie kompilieren ( Ne configure, make und install Datei ist vorhanden ), aber ich weiß leider nicht wie?
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Dennis hat geschrieben:Ich muss es also irgendwie kompilieren ( Ne configure, make und install Datei ist vorhanden ), aber ich weiß leider nicht wie?
Unter Windows brauchst du dazu wohl erstmal goocanvas (dazu gibt es Binaries) mitsamt der Header für Cairo, GTK+ und goocanvas und kannst es dann mit MingGW über ./configure, make und make install installieren. Ist aber recht aufwendig.

Einfachere Lösung: Linux nutzen (auf der Hardware, in einer VM oder diesen Linux-on-Windows-Projekten). Dort habe ich es direkt aus dem Paketmanagement her; ich wäre zu faul um das selbst zu kompilieren.

Alternativ: Entwickler anmailen und fragen ob sie Win32-Binaries online stellen.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten