Zur Hauptnavigation springen [Alt]+[0] Zum Seiteninhalt springen [Alt]+[1]

Unterrichtsverlauf

Die Unterrichtseinheit ist in zwei Teile gegliedert, die ineinander greifen. Zunächst werden Algorithmen zur digitalen Bildbearbeitung behandelt. Deren Prinzipien werden durch Aufgaben begleitet, die die SuS schriftlich lösen sollen. Diese sind mit Stift gekennzeichnet.

Danach werden die Algorithmen in einer BlueJ-Umgebung implementiert, die es erlaubt, die Operationen direkt auf Beispielbilder anzuwenden und diese anzuzeigen. Dazu enthält der Ordner IMP einige Klassen, die dies ermöglichen. Aufgaben, die in dieser Umgebung bearbeitet werden sollen, sind auf den Aufgabenblättern mit Symbol für Beispielbild gekennzeichnet. Oft schließen sich Experimente oder Tests mit den neu implementierten Methoden an.

Nun schließt sich die Erstellung einer graphischen Benutzeroberfläche (GUI) an, mit der diese Bildbearbeitungsalgorithmen komfortabel ausgeführt werden können. Die Gestaltung der Oberfläche wird im Gluon Scene Builder vorgenommen. (Kennzeichnung: ). Es ist sinnvoll, das Erstellen der Benutzeroberfläche parallel zum ersten Teil als Hausaufgabe bearbeiten zu lassen, um Zeit während des Unterrichts zu sparen (vgl. 4. Doppelstunde).

Die Verbindung der Algorithmen und der Oberfläche geschieht durch Implementierung eines geeigneten Controllers. Wichtig ist dabei, dass dies im BlueJ-Projekt "bildbearbeitung" erfolgt. (Kennzeichnung: ). Das Unterverzeichnis IMP enthält auch hier die gleichen Klassen wie beim ersten Projekt, diese sind aber teilweise anders implementiert. Der PictureViewer ist hier ein JavaFX-Control-Element, das in die GUI eingebunden werden kann. Die Klassen aus dem alten Projekt müssen mit "Add class from file ..." in BlueJ übernommen werden.

Da es eine Vielzahl von interessanten Algorithmen im Bereich der Bildbearbeitung gibt, lässt sich diese Unterrichtseinheit bei Bedarf gut erweitern. Es könnte sich eine umfangreichere Hausaufgabe für die Schülerinnen und Schüler (im Folgenden als SuS abgekürzt) anschließen, in der ein weiterer Algorithmus implementiert werden muss. Auch als GFS Thema sind sie gut geeignet. Die Aufgabenblätter zu den Erweiterungen sind deutlich weniger detailliert als der Pflichtteil. Sie sind daher schwerer zu bearbeiten. Die Vorgehensweise ist aber analog zum Pflichtteil: In jedem Arbeitsblatt werden die vier Arbeitsschritte durchlaufen. Auch hier sind die Aufgaben entsprechend gekennzeichnet.

Hinweis zu BlueJ und JavaFX

  1. Bei älteren BlueJ Versionen kann es zu folgender Fehlermeldung kommen:

    Fehlermeldung:

    java.lang.IllegalStateException: Toolkit not initialized

    at com.sun.javafx.application.PlatformImpl.runLater(PlatformImpl.java:273)

    at javafx.application.Platform.runLater(Platform.java:83)

    at bluej.runtime.ExecServer.runOnTargetThread(ExecServer.java:902)

    at bluej.runtime.ExecServer.access$700(ExecServer.java:78)

    at bluej.runtime.ExecServer$3.run(ExecServer.java:787)

    Installieren Sie dann bitte die neuste Version oder wählen unter Werkzeuge->Einstellungen->Diverses->Run user code in this project on thread die Option "Default" (BlueJ 4.1.2).

  2. Wiederherstellung von Objekten in BlueJ

    Zum Testen der eigenen Implementierung müssen immer wieder die gleichen Objekte erzeugt werden. Mit Rechtsklick auf eine Klasse (z.B. GeometrsicheBildoperationen) kann man eine "Testklasse erzeugen". Dann erstellt man die benötigten Objekte und ruft bei der Testklasse "Objektzustand speichern" auf. Danach können jederzeit mit "Objektzustand wiederherstellen" sehr schnell alle Objekte neu erzeugt werden.

 

Unterrichtsverlauf: Herunterladen [odt][154 KB]

Unterrichtsverlauf: Herunterladen [pdf][233 KB]

 

Weiter zu Spiegeln und Drehen