Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
lehrkraefte:snr:mathematik:klasse-2:2022-23:python-koordinatengrafik [2022/12/15 23:20] Olaf Schnürer [Aufgaben 1 und 2: Grafik-Bibliothek "kantigrafik" herunterladen und wesentliche Befehle kennenlernen] |
lehrkraefte:snr:mathematik:klasse-2:2022-23:python-koordinatengrafik [2023/01/31 17:37] (current) Olaf Schnürer [Aufgabe 5: Funktionsgraphen zeichnen (etwa Sinus, Cosinus, Tangens)] |
||
---|---|---|---|
Line 21: | Line 21: | ||
<WRAP center round todo> | <WRAP center round todo> | ||
- | Versuche anhand des folgenden Programms die wesentlichen Funktionen der Bibliothek '' | + | Versuche anhand des folgenden Programms die wesentlichen Funktionen der Bibliothek '' |
{{ : | {{ : | ||
Line 32: | Line 32: | ||
* pygame installieren! In der Kommandozeile (cmd): '' | * pygame installieren! In der Kommandozeile (cmd): '' | ||
* Manchmal sind mehrere Versionen von Python installiert. In VS-Code kann man per " | * Manchmal sind mehrere Versionen von Python installiert. In VS-Code kann man per " | ||
+ | * ??? | ||
+ | * beim Nachbarn mitprogrammieren | ||
</ | </ | ||
</ | </ | ||
Line 86: | Line 88: | ||
<WRAP center round todo> | <WRAP center round todo> | ||
Zeichne mit Koordinatengrafik die folgende Figur (fünf konzentrische Fünfecke) bzw. allgemeiner einige konzentrische $n$-Ecke. | Zeichne mit Koordinatengrafik die folgende Figur (fünf konzentrische Fünfecke) bzw. allgemeiner einige konzentrische $n$-Ecke. | ||
+ | |||
+ | Hinweis: Zeichne zuerst ein Fünfeck, dessen Umkreis den Radius eins hat. | ||
(Lösung vermutlich gemeinsam. Benötigt Trigonometrie und die '' | (Lösung vermutlich gemeinsam. Benötigt Trigonometrie und die '' | ||
{{: | {{: | ||
+ | |||
+ | ---- | ||
+ | |||
+ | <hidden Mögliche Lösung> | ||
+ | <code python konzentrische-n-ecke.py> | ||
+ | from kantigrafik import * | ||
+ | from math import * | ||
+ | |||
+ | n = 5 | ||
+ | |||
+ | zeichenfenster(-6, | ||
+ | |||
+ | farbe(GRAU) | ||
+ | raster() | ||
+ | farbe(WEISS) | ||
+ | x_achse() | ||
+ | y_achse() | ||
+ | |||
+ | farbe(ROT) | ||
+ | alpha = 360 / n | ||
+ | alpha_im_bogenmass = alpha / 180 * pi | ||
+ | for radius in range(2, 6): | ||
+ | for i in range(n): | ||
+ | gefuellter_kreis(radius * cos(i * alpha_im_bogenmass), | ||
+ | linie(radius * cos(i * alpha_im_bogenmass), | ||
+ | radius * cos((i+1) * alpha_im_bogenmass), | ||
+ | zeige() | ||
+ | speichere(" | ||
+ | warte_auf_klick() | ||
+ | </ | ||
+ | </ | ||
</ | </ | ||
<WRAP center round box> | <WRAP center round box> | ||
- | Bekanntlich kann man leicht ein $n$-Eck mit Turtle-Grafik zeichnen. | + | Bekanntlich kann man leicht ein einzelnes |
Wer noch nicht von den Vorteilen von Koordinatengrafik überzeugt ist, zeichne einmal einige konzentrische $n$-Ecke mit Turtlegrafik. | Wer noch nicht von den Vorteilen von Koordinatengrafik überzeugt ist, zeichne einmal einige konzentrische $n$-Ecke mit Turtlegrafik. | ||
</ | </ | ||
- | ===== Aufgabe 5: Funktionsgraph | + | ===== Aufgabe 5: Funktionsgraphen |
+ | |||
+ | (mit 2rG gemacht, mit 2aLIM noch nicht) | ||
<WRAP center round todo> | <WRAP center round todo> | ||
- | Zeichne die Graphen von Sinus, Cosinus und Tangens in unterschiedlichen Farben mit Koordinatengrafik | + | Zeichne die Graphen von Sinus, Cosinus und Tangens in unterschiedlichen Farben mit Koordinatengrafik. |
+ | Du darfst natürlich auch den Graphen einer beliebigen anderen Funktion | ||
- | (Lösung vermutlich gemeinsam. Im Bild ist neben der üblichen Bogenmass-Skala auch eine Grad-Skala angegeben.) | + | <hidden Hier ist ein mögliches Programm-Gerüst> |
+ | <code python graphen-zeichnen.py> | ||
+ | from kantigrafik import * | ||
+ | # Lädt unter anderem die trigonometrischen Funktionen | ||
+ | # sin(...), cos(...), tan(...), aber auch die Kreiszahl pi. | ||
+ | from math import * | ||
+ | |||
+ | # minimale x-Koordinate | ||
+ | MINX = -10 | ||
+ | # maximale x-Koordinate | ||
+ | MAXX = 10 | ||
+ | |||
+ | # minimale y-Koordinate | ||
+ | MINY = -6 | ||
+ | # maximale y-Koordinate | ||
+ | MAXY = 6 | ||
+ | |||
+ | # Länge einer Einheit im Koordinatensystem in Pixeln | ||
+ | PIXEL_PRO_EINHEIT = 80 | ||
+ | |||
+ | zeichenfenster(MINX, | ||
+ | |||
+ | # ... und hier darfst du deinen Code ergänzen. | ||
+ | |||
+ | zeige() | ||
+ | speichere(" | ||
+ | warte_auf_klick() | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ---- | ||
+ | |||
+ | {{: | ||
- | {{:lehrkraefte: | + | Optional: Gib neben der üblichen Bogenmass-Skala wie im Bild auch die Grad-Skala an. |
</ | </ | ||
Line 119: | Line 189: | ||
* '' | * '' | ||
* '' | * '' | ||
- | * '' | + | * '' |
* '' | * '' | ||
* '' | * '' | ||
Line 138: | Line 208: | ||
====== Link zur Kursseite ====== | ====== Link zur Kursseite ====== | ||
- | Link zur Seite [[lehrkraefte: | + | Link zur |
+ | * [[lehrkraefte: | ||
+ | * [[lehrkraefte: | ||
+ | |||