Python-Einstieg: Wie kann ich Grafiken zeichnen?

3 Antworten

import graphics sollte eigentlich funktionieren, wenn graphics.py direkt neben Deinem Python-Programm liegt.

Anstatt Dich damit herumzuschlagen, kannst Du auch direkt das mitgelieferte Modul tkinter verwenden https://docs.python.org/3/library/tkinter.html). Dann läuft Dein Programm auf jedem Rechner, der Python installiert hat.

Es sieht so aus, als ob graphics.py sowieso bloß auf tkinter basiert und nur ein tk-Fenster mit einem Canvas-Objekt erzeugt. Das schaffst Du auch alleine. Dann kannst Du später noch ein paar Eingabefelder und Buttons hinzufügen.

KnorxyThieus 
Fragesteller
 23.05.2017, 19:17

Danke, ich wollte es mir erstmal nur möglichst einfach machen, aber tkinter ist ja auch einfach :)

Ich wollte allerdings nicht alle Module in meinen Projektordner kopieren, sondern sie aus dem syspath nutzen. Oder ist das für Python die falsche Philosophie?

PS: Kann man mit tkinter auch auf separate Buffer zeichnen und diese später auf das Canvas übertragen?

0

In der von dir zitierten Stelle steht

from graphics import *

was heißt, dass alle von graphics exportierten Namen importiert werden.

Da Python bei import graphics nicht schimpft, hat es den Modul gefunden.

Wenn du nicht die oben erwähnte (und nicht empfehlenswerte) Syntax verwendest, hast du zwei Möglichkeiten.

1.) 

from graphics import GraphWin

oder

2.)

import graphics
...
win= graphics.GraphWin()
KnorxyThieus 
Fragesteller
 23.05.2017, 19:19

Ich habe oben schon geschrieben, dass PyCharm nicht einmal das hier akzeptiert:

import graphics

Aber genau da wollte ich hin, doch egal, ich nutze jetzt einfach Tkinter. :)

0

in python 3 kannst du recht einfach mit

Tkinter

alle möglichen Grafiken zeichnen

https://youtube.com/watch?v=D0eJhE6VO5w

Woher ich das weiß:Studium / Ausbildung – Studium in theoretischer Informatik (Master)
KnorxyThieus 
Fragesteller
 21.05.2017, 14:55

Okay, danke schon mal ...

Ist das auch effizient oder nur für ein paar Spielereien geeignet? Also reicht das z. B. aus, wenn ich ein paar Animationen zeichnen will oder generell mit Buffern arbeiten möchte? Oder gibt es da direkt ein Modul für DirectX, oder wäre das ungewöhnlich?
Als Python-Einsteiger suche ich erstmal den "standardmäßigen" Weg.

0
GrakaVII  21.05.2017, 15:07
@KnorxyThieus

also wenn du animationen machen willst ist das fortgescrittene Python Progammierung, für voll objektorientiertes Programmieren als Einsteiger empfehle ich dir eher C#

0
KnorxyThieus 
Fragesteller
 21.05.2017, 16:53
@GrakaVII

Tja ... ich habe es ja oben schon geschrieben, C# kenne ich grundlegend schon - jetzt nicht speziell im Bezug auf Grafik, aber mir ging es jetzt gerade darum, mit Python eine (für mich) neue und unkomplizierte Sprache zu erlernen. Ich wollte jetzt auch weiß Gott keine eigene GUI bauen oder so, einfach mal ein paar Grafikexperimente - Dreieck zu Kreis morphen und so was in der Art.

  • Ist Python da überhaupt noch die richtige Sprache oder zu langsam?
  • Und wenn ja zu Python, dann mit tkinter oder mit einem anderen Modul? :)
0
GrakaVII  21.05.2017, 18:37
@KnorxyThieus

Ja also wenns nichts großes werden soll ist Python eigtl. perfekt, anfängerfreundlich (musst halt auf die Einrückungen achten, da ist der Compiler sehr genau), und für deine Zwecke ist Tkinter eigtl. absolut ausreichend. Für alles was deutlich komplexer wird ist Python eigtl. nicht mehr geeignet

0