lehrkraefte:blc:informatik:glf25:labyrinthe:bilder-einlesen

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:labyrinthe:bilder-einlesen [2026/03/19 18:00] – [Startpunkte finden] Ivo Blöchligerlehrkraefte:blc:informatik:glf25:labyrinthe:bilder-einlesen [2026/03/19 18:14] (current) – [Pixel-Bilder einlesen] Ivo Blöchliger
Line 25: Line 25:
 pip install Pillow pip install Pillow
 </code> </code>
 +
 +===== Eigenes Bild erstellen =====
 +
  
 <WRAP todo> <WRAP todo>
Line 36: Line 39:
 Schreiben Sie ein Python-Programm das folgendes tut: Schreiben Sie ein Python-Programm das folgendes tut:
   * Bild einlesen   * Bild einlesen
-  * Neues, Labyrinth mit gleicher Grösse wie das Bild erzeugen (erst mal alle Mauern geschlossen).+  * Neues, Labyrinth mit gleicher Grösse wie das Bild erzeugen (erst mal alle Mauern geschlossen).  
 +    * Die Grösse soll direkt aus der Grösse vom Bild bestimmt werden, d.h. das Programm soll unverändert für unterschiedlich grosse Bilder funktionieren.
   * Das Bild ins Labyrinth übertragen, d.h. alle Zellen, die schwarzen Pixeln entsprechen, sollen mit '#' markiert werden.   * Das Bild ins Labyrinth übertragen, d.h. alle Zellen, die schwarzen Pixeln entsprechen, sollen mit '#' markiert werden.
   * Geben Sie dieses Labyrinth aus.   * Geben Sie dieses Labyrinth aus.
-  * Die Zellen haben eine zusätzliche Eigentschaft ''bild'' (wie ''mark''), die auf eine Zahl gesetzt werden kann, wobei 
-    * 0 bedeutet Schwarz 
-    * 1 bedeutet Weiss 
-  * Ihr Programm soll nun zusätzlich die Eigenschaft ''bild'' jeder Zelle setzen (1 oder 0). 
-  * Das Programm soll nun alle Markierungen im Labyrinth löschen, z.B. mit ''lab.clearMarks()''. 
  
 ===== Startpunkte finden ===== ===== Startpunkte finden =====
-  * In einem Labyrinth, wo wie oben die Zellen die Eigenschaft ''bild'' auf 0 oder 1 gesetzt wurden, ergänzen Sie das Programm so, dass +  * In einem Labyrinth, wo wie oben einige Zellen mit ''#'' markiert wurden, ergänzen Sie das Programm so, dass 
-    * auf gegenüberliegenden Rändern vom Labyrinth möglichst weit voneinander entfernte Zellen gesucht werden, für die die Eigenschaft ''bild==0'' ist (d.h. Teil der schwarzen Fläche).+    * auf gegenüberliegenden Rändern vom Labyrinth möglichst weit voneinander entfernte Zellen gesucht werden, die mit ''#'' markiert sind (d.h. Teil der schwarzen Fläche).
   * Das sind dann die Startpunkte für das Labyrinth. Markieren Sie diese mit 'S' und 'Z'   * Das sind dann die Startpunkte für das Labyrinth. Markieren Sie diese mit 'S' und 'Z'
   * Testen Sie Ihr Programm mit unterschiedlichen Bildern.   * Testen Sie Ihr Programm mit unterschiedlichen Bildern.
  
 ===== Weg finden ===== ===== Weg finden =====
-  * Ergänzen Sie das Programm so, dass ein Labyrinth mit Startzelle 'S' generiert wird, mit der Zusatzbedinung, dass nur Zellen mit ''bild==0'' betreten werden.+  * Ergänzen Sie das Programm so, dass ein Labyrinth mit Startzelle 'S' generiert wird, mit der Zusatzbedingung, dass nur Zellen betreten werden, die mit ''#'' markiert sind.
   * Bestimmen Sie die Abfolge der Zellen, die dem Weg vom Start 'S' zum Ziel 'Z' entspricht.   * Bestimmen Sie die Abfolge der Zellen, die dem Weg vom Start 'S' zum Ziel 'Z' entspricht.
 +    * Wie könnte dazu die Todo-Liste verwendet werden?
  
  
  
  
  • lehrkraefte/blc/informatik/glf25/labyrinthe/bilder-einlesen.1773943217.txt.gz
  • Last modified: 2026/03/19 18:00
  • by Ivo Blöchliger