====== Turtlegrafik mit Python ====== ==== Aufgaben ==== Screenshots und Codes auf den geteilten Ordner ''turtle'' auf OneDrive. Namenskonvention: * Nur Kleinbuchstaben a-z, Ziffern und Minus und Bodenstrich. * Start mit Namen, gefolgt von _, gefolgt von Kurzbeschreibung, gefolt von .py oder .png (evtl. .svg). * Beispiel: ''hanswurst_stern.py'' und ''hanswurst_stern.png''. Screenshots sind zugeschnitten auf das Wesentliche. * [[.:polygone-und-sterne|Polygone und Sterne]] * [[.:lsystems|Lindenmayer Systems (L-Systems)]] * [[.:pythagorasbaum|Pythagorasbaum]] === Grundsätze === * Jeglicher Code wird selbst getippt. * Jedes Programm wird in eine eigene Datei geschrieben. * Sprachmodelle kommen keine zum Einsatz. * Schalten Sie alle Benachrichtigungen aus (Schule und privat). * nach Möglichkeit wird auch auf eine Suchmaschine verzichtet und stattdessen folgende Seiten verwendet: * [[lehrkraefte:blc:informatik:glf25:python:zusammenfassung|Zusammenfassung Python]] * [[https://docs.python.org/3/library/turtle.html|Offizielle Dokumentation der Turtle Bibliothek]] * [[https://docs.python.org/3/|Offizielle Python Dokumentation]] === Hintergründe === * Die Lösung der Aufgaben hat kaum Nutzen. * Es geht um den Lernprozess, um zur selbst zur Lösung zu kommen. * Dazu gehört auch das Lesen von technischer Dokumentation. Dass diese oft nicht so angenehm zu lesen ist, ist ein Feature, kein Bug. So wird das Hirn motiviert, sich das Zeugs zu merken und zu verstehen, damit das mühsame Nachlesen in Zukunft nicht mehr nötig ist. * Eigener Code ist ebenfalls eine gute Quelle technischer Dokumentation. ===== Organisation der Dateien ===== * Alle Ihre Turtle-Programme sollen in einem Ordner gespeichert werden, z.B. mit dem Namen ''turtle''. * In VS-Code muss dieser **Ordner geöffnet** werden (z.B. im Menü oben links: File -> Open Folder) Template für neue Dateien: from turtle import * from math import sqrt,sin,cos,tan,pi if True: # Schnelles Zeichnen ohne Animation hideturtle() getscreen().tracer(False) # Hier Funktionen einfügen... # Funktion(en) aufrufen penup() # Eventl. Grafik als Vektorgrafik speichern. Diese kann z.B. mit inkscape geöffnet werden. # Screen().getcanvas().postscript(file="ausgabe.eps") exitonclick() ''turtle'' ist in der Standardlibrary, benötigt aber ''tkinter'', was u.U. nicht installiert ist. Nachinstallation via Paketmanager (Ubuntu): sudo apt install python3-tk ===== Mögliche Prüfungsaufgaben ===== Die Prüfung wird auf Papier stattfinden. Geprüft wird, ob Sie * gegebene Programme von Hand ausführen, * gegebenen Programme korrigieren bzw. ergänzen, * eigene Programme schreiben können. Beispiele für Prüfungsaufgaben: * Programm, das ein «Haus des Nikolaus» zeichnet (Quadrat mit Diagonalen und aufgesetztem rechtwinkligen Dreieck). * Regelmässiges Fünfeck zeichnen. * Uhrzeiger zu gegebener Uhrzeit (stunden, minuten) zeichnen. * ...