Seite 1 von 1

Python Turtle Modul

Verfasst: Montag 7. Februar 2011, 13:44
von püthon93
Hallo,

ich möchte eine mit Turtle (Python 3.2) erstellte Grafik in Postscript exportieren. Wäre froh, wenn die Lösung nicht allzu kompliziert wäre :oops:

Gruß
püthon93

Re: Python Turtle Modul

Verfasst: Montag 7. Februar 2011, 14:34
von Xynon1
Sollte eigentlich recht einfach sein da es dafür eine Methode gibt, probier mal ob mein kleiner Script geht:

Code: Alles auswählen

#!/usr/bin/env python3
import tkinter
import turtle

if __name__ == "__main__":
    root = tkinter.Tk()
    
    frame = turtle.ScrolledCanvas(root)
    frame.pack(expand=True, fill="both")
    
    screen = turtle.TurtleScreen(frame, "logo")
    t1 = turtle.RawTurtle(screen)
    
    t1.speed(0)
    for _ in range(24):
        t1.forward(100)
        t1.left(75)
    t1.speed(1)

    cv = frame._canvas
    cv.postscript(file="export.ps", colormode="color")

    root.mainloop()
und Willkommen im Forum.

Re: Python Turtle Modul

Verfasst: Montag 7. Februar 2011, 15:33
von püthon93
Vielen Vielen Dank für die schnelle Antwort!!! Funktioniert exzellent!!

Gruß
püthon93

Re: Python Turtle Modul

Verfasst: Montag 7. Februar 2011, 15:40
von Xynon1
Kein Ursache, ein kleiner Hinweis noch. Dort wo ich auf den Frame zugreife "frame._canvas", der Bodenstrich zeigt eigentlich an das dies nicht zu offiziellen API der Klasse gehört. Hier hat man nur leider keine andere Wahl, da das Canvas die Daten von der Zeichnung enthält und man nur so an das Canvas rankommt. Eine alternative wäre das ScrolledCanvas einfach nicht zu nutzen und einfach ein normales "tkinter.Canvas" zu nehmen, dann verliert man natürlich den Vorteil der Scrollbars oder muss diese sich selber scripten.