lehrkraefte:blc:informatik:glf25:turtle:lsystems

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
lehrkraefte:blc:informatik:glf25:turtle:lsystems [2026/01/09 09:10] – [Weitere Erweiterungen] Ivo Blöchligerlehrkraefte:blc:informatik:glf25:turtle:lsystems [2026/01/09 10:28] (current) – [Sierpinski Dreieck annähern] Ivo Blöchliger
Line 84: Line 84:
 {{lehrkraefte:blc:informatik:glf25:turtle:dragon.svg?200}} {{lehrkraefte:blc:informatik:glf25:turtle:dragon.svg?200}}
  
 +==== Hilbertkurve ====
 +
 +  * https://en.wikipedia.org/wiki/Hilbert_curve
 +
 +Hier werden die Buchstaben ''A'' und ''B'' nicht gezeichnet... 
 +
 +<code python>
 +zeichne("A", {"A":"+BF-AFA-FB+", "B":"-AF+BFB+FA-"},2)
 +</code>
 +
 +{{lehrkraefte:blc:informatik:glf25:turtle:hilbert.svg?200}}
 +
 +==== Zu zeichnende Buchstaben festlegen ====
 +Den regeln wird ein weiterer Parameter ''draw'' hinzugefügt, indem eine Liste mit Buchstaben gespeichert wird, die gezeichnet werden sollen.
 +
 +Die Drachenkurve wird dann wie folgt definiert:
 +<code python>
 +zeichne("A",{"A":"A+B", "B":"A-B", "draw":"AB"},8)
 +</code>
 +Die Bedingung zum Zeichnen ist dann
 +<code python>
 +if c in regeln['draw']:
 +</code>
 +Damit alter Code noch läuft, kann am Anfang der Funktion ''zeichne'' die Präsenz des Schlüssels ''draw'' in den Regeln überprüft werden. Fehlt der Schlüssel wird dieser auf ''F'' gesetzt:
 +<code python>
 +if not "draw" in regeln:
 +   regeln['draw'] = 'F'
 +</code>
 +
 +
 +==== Sierpinski Dreieck annähern ====
 +<code python>
 +zeichne("A", {"A":"+B-A-B+", "B":"-A+B+A-", "draw":"AB"}, 4)
 +</code>
 +
 +{{lehrkraefte:blc:informatik:glf25:turtle:sierpinski.svg?200}}
  
  • lehrkraefte/blc/informatik/glf25/turtle/lsystems.1767949828.txt.gz
  • Last modified: 2026/01/09 09:10
  • by Ivo Blöchliger