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
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
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
-
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).
-
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