Struktur-Funktions-Modelle von Pflanzen - Sommersemester 2015 - Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.

Slides:



Advertisements
Ähnliche Präsentationen
Blue J.
Advertisements

Ziele von EINI I + II Einführen in „Informatik“
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Definition von Klassen in Java
Einführung in die Programmierung Zusammenfassung
Java: Objektorientierte Programmierung
Java: Grundlagen der Sprache
Polymorphie (Vielgestaltigkeit)
Polymorphie (Vielgestaltigkeit)
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
PKJ 2005/1 Stefan Dissmann Zusammenfassung Bisher im Kurs erarbeitete Konzepte(1): Umgang mit einfachen Datentypen Umgang mit Feldern Umgang mit Referenzen.
Regelbasierte Programmierung mit XL
Regelbasierte Programmierung mit XL
Welche Paradigmen der Programmierung braucht man für die Computergrafik und für die Ökologie? Winfried Kurth Brandenburgische Technische Universität Cottbus,
DVG Einführung in Java1 Einführung in JAVA.
DVG Klassen und Objekte
Einführung in die Programmierung Datensammlung
Informatik Grundkurse mit Java
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Artifizielle Wachstumsprozesse Winfried Kurth Günter Barczik Reinhard Hemmerling Udo Bischof Lehrstuhl Grafische SystemeLehrstuhl Entwerfen Bauen im Bestand.
Artifizielle Wachstumsprozesse Winfried Kurth Günter Barczik Reinhard Hemmerling Lehrstuhl Grafische SystemeLehrstuhl Entwerfen Bauen im Bestand.
EPROG Tutorium Einheit 4 Klassen und Objekte. Wiederholung Schleifen do... while while for break/continue Strings String char Methoden für Strings Arrays.
Programmiersprachen Proseminar Grundlagen wissenschaftlichen Arbeitens
Paul, Morten, Yannick Blue J. Entwicklungsumgebung  versteht Java Programmcode  Für die Entwicklung eigener Software  Durch die Programmierung.
Polymorphie (Vielgestaltigkeit). Wenn eine Methode, wie z.B. print für verschiedene Programmteile steht (und z.B. einmal Objekte verschiedener Klassen.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Java-Kurs Übung Besprechung der Hausaufgabe
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Paul, Morten, Yannick Blue J. Entwicklungsumgebung  versteht Java Programmcode  Für die Entwicklung eigener Software  Durch die Programmierung.
Objektorientierte (OO) Programmierung
Objektorientierte Programmierung §Klassen §Objekte §Attribute §Eigenschaften §Methoden §Datenkapselung §Ereignisse §Vererbung §Entwicklungszeit §Laufzeit.
Java Programme nur ein bisschen objektorientiert.
Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik.
Struktur-Funktions-Modelle von Pflanzen
Struktur-Funktions-Modelle von Pflanzen
Struktur-Funktions-Modelle von Pflanzen
Struktur-Funktions-Modelle von Pflanzen
Struktur-Funktions-Modelle von Pflanzen
 Präsentation transkript:

Struktur-Funktions-Modelle von Pflanzen - Sommersemester Winfried Kurth Universität Göttingen, Lehrstuhl Computergrafik und Ökologische Informatik 2. Vorlesung:

letztes Mal: Modelldreieck für Pflanzenmodelle reine Strukturmodelle, Motivation 3 Ebenen der Strukturbeschreibung 2 Arten der statischen Beschreibung - tabellarisch (dtd-Format) - imperativ (turtle geometry) (noch nicht behandelt)  Einstieg in GroIMP (Bedienung)

heute: GroIMP: Laden von dtd-Dateien erste Analysen von Verzweigungssystemen Programmierparadigmen Turtle-Geometrie Ausführung von Turtle-Geometrie-Befehlsfolgen mit GroIMP

Laden von dtd-Dateien in GroIMP File / Open: dtd-Datei wählen (öffnen) Verzweigungsstruktur erscheint in der 3D-Ansicht ggf. Kameraeinstellungen ändern Verändern der Datei und speichern  Änderung wird im Display sichtbar

Einfache Analysen einige Möglichkeiten wurden aus der Vorgängersoftware GROGRA übernommen Panels / RGG Panels / GROGRA functions / Analysis dort: - list of all shoots (erzeugt komplette Liste) - elementary analysis - basic tree parameters - topological analysis (später mehr)

Der Begriff "Programmierparadigma" Paradigma: grundlegende Denkweise, beispielorientierte Vorstellung Paradigmen der Programmierung

Paradigma: "Beschreibt eine Menge von Theorien, Standards und Methoden, die gemeinsam einen Weg repräsentieren, Wissen zu organisieren" Thomas Kuhn 1970: The Structure of Scientific Revolutions

Paradigma: "Beschreibt eine Menge von Theorien, Standards und Methoden, die gemeinsam einen Weg repräsentieren, Wissen zu organisieren" Thomas Kuhn 1970: The Structure of Scientific Revolutions Paradigmenwechsel: schwierig. Revolution im Denken!

wurde aufgegriffen von Robert Floyd 1978: Turing Award Lecture "The Paradigms of Programming" Robert W. Floyd ( )

Welche Paradigmen werden nahegelegt durch Probleme bei der Simulation natürlicher Objekte ?... bei deren computergrafischer Darstellung ?

Ökologie:

Organismen

Ökologie: Organismen Aufbau beschreiben

Ökologie: Organismen Verhalten (unter bestimmten Bedingungen) Aufbau beschreiben

Ökologie: Organismen Verhalten (unter bestimmten Bedingungen) Aufbau beschreiben Gesetzmäßigkeiten (Regeln) bestimmen

Ökologie: Organismen Verhalten (unter bestimmten Bedingungen) Prozesse Aufbau beschreiben Gesetzmäßigkeiten (Regeln) bestimmen

Ökologie: Organismen Verhalten (unter bestimmten Bedingungen) Prozesse Aufbau beschreiben Gesetzmäßigkeiten (Regeln) bestimmen Ablauf berechnen

Grafisches System:

Objekte

Grafisches System: Objekte (mit Attributen)

Grafisches System: Objekte (mit Attributen) regelmäßige Strukturen

Grafisches System: Objekte (mit Attributen) regelmäßige Strukturen Prozesse

Einige wichtige Programmierparadigmen -für numerische Simulation von Prozessen: imperatives Paradigma

Einige wichtige Programmierparadigmen -für numerische Simulation von Prozessen: imperatives Paradigma (auch: von-Neumann-Paradigma, Kontrollfluss-Paradigma) John von Neumann ( )

"Befehls-Programmierung" Computer = ? imperativ:

"Befehls-Programmierung" Computer = Maschine zur Veränderung von Variablen- werten.

"Befehls-Programmierung" Computer = Maschine zur Veränderung von Variablen- werten (diese Veränderungen können Seiteneffekte haben).

"Befehls-Programmierung" Computer = Maschine zur Veränderung von Variablen- werten. Programm = ?

"Befehls-Programmierung" Computer = Maschine zur Veränderung von Variablen- werten. Programm = Plan für den Berechnungsprozess mit Angabe der Befehle und des Kontrollflusses (z.B. Schleifen).

"Befehls-Programmierung" Computer = Maschine zur Veränderung von Variablen- werten. Programm = Plan für den Berechnungsprozess mit Angabe der Befehle und des Kontrollflusses (z.B. Schleifen). Programmfindung: ?

"Befehls-Programmierung" Computer = Maschine zur Veränderung von Variablen- werten. Programm = Plan für den Berechnungsprozess mit Angabe der Befehle und des Kontrollflusses (z.B. Schleifen). Programmfindung: Elementare Einzelschritte finden und in passende, flexible Reihenfolge bringen.

"Befehls-Programmierung" Computer = Maschine zur Veränderung von Variablen- werten. Programm = Plan für den Berechnungsprozess mit Angabe der Befehle und des Kontrollflusses (z.B. Schleifen). Programmfindung: Elementare Einzelschritte finden und in passende, flexible Reihenfolge bringen. Programmiersprachen, die dieses Paradigma unterstützen: Fortran, Pascal, C,..., Teile von Java,...

Beispiel: x = 0; while (x < 100) x = x + 1; Inhalt der Variable x wird verändert Schleife legt Kontrollfluss fest

Beispiel: x = 0; while (x < 100) x = x + 1; Inhalt der Variable x wird verändert Schleife legt Kontrollfluss fest Beachte: "=" steht hier nicht für math. Gleichheit, sondern für Zuweisung (prozesshaft)!

Nachteil des imperativen Paradigmas: simultane, parallele Zuweisung wird nicht unterstützt

Nachteil des imperativen Paradigmas: simultane, parallele Zuweisung wird nicht unterstützt Beispiel (Floyd 1978): Räuber-Beute-System, beschrieben durch R neu = f(R, B), B neu = g(R, B) Anfängerfehler beim Programmieren: for (i =... ) { R = f(R, B); B = g(R, B); }

Nachteil des imperativen Paradigmas: simultane, parallele Zuweisung wird nicht unterstützt Beispiel (Floyd 1978): Räuber-Beute-System, beschrieben durch R neu = f(R, B), B neu = g(R, B) Anfängerfehler beim Programmieren: for (i =... ) { R = f(R, B); B = g(R, B); }

Programmiersprachen, die das imperative Paradigma unterstützen: Fortran, Pascal, C,..., Teile von Java, Befehlssprache der Turtle-Geometrie

Turtle: zeichnende Schildkröte, die auf Befehle hört

Turtle: zeichnende Schildkröte, die auf Befehle hört

F0

F0 RU(90)

F0 RU(90) F0

F0 RU(90) F0 RU(90) LMul(0.5) F0

(später mehr)

zurück zum Beispiel: Objekte (mit Attributen)

Objektorientiertes Paradigma Computer = Umgebung für virtuelle Objekte Programm = Auflistung von (Objekt-) Klassen, d.h. allgemeiner Spezifikationen von Objekten, die zur Laufzeit des Programms (ggf. mehrfach) erschaffen und wieder vernichtet werden können und miteinander kommunizieren. Programmfindung: Spezifikation der Klassen (Daten und Methoden), die Objektstruktur und -verhalten festlegen. Programmiersprachen: Smalltalk, Simula, C++, Java,...

Beispiel: public class Auto extends Fahrzeug { public String marke; public int plaetze; public void anzeigen() { System.out.println("Das Auto ist ein " + marke); System.out.println("Es hat " + plaetze + "Sitze."); } typisch: Klassen ( Auto ) mit Daten ( marke, plaetze ) und Methoden ( anzeigen )

Vererbung von Attributen und Methoden von Ober- an Unterklassen Beispiel: public class Auto extends Fahrzeug { public String marke; public int plaetze; public void anzeigen() { System.out.println("Das Auto ist ein " + marke); System.out.println("Es hat " + plaetze + "Sitze."); } typisch: Klassen ( Auto ) mit Daten ( marke, plaetze ) und Methoden ( anzeigen )

Objekthierarchien sind auch in der Biologie sinnvoll zum Beispiel: Organ BlattBlüteInternodiumWurzelsegment Laub- blatt NadelGrob- WS Fein- WS

regelmäßige Strukturen

Regelbasiertes Paradigma Computer = Transformationsmaschine für Strukturen Es gibt eine aktuelle Struktur, die solange transformiert wird, wie dies möglich ist.

Regelbasiertes Paradigma Computer = Transformationsmaschine für Strukturen Es gibt eine aktuelle Struktur, die solange transformiert wird, wie dies möglich ist. Arbeitsprozess: Such- und Anwendungsprozess. matching: Suchen einer passenden Regel, rewriting: Anwendung der Regel, um die Struktur umzuschreiben.

Regelbasiertes Paradigma Computer = Transformationsmaschine für Strukturen Es gibt eine aktuelle Struktur, die solange transformiert wird, wie dies möglich ist. Arbeitsprozess: Such- und Anwendungsprozess. matching: Suchen einer passenden Regel, rewriting: Anwendung der Regel, um die Struktur umzuschreiben. Programm = Menge von Transformationsregeln

Regelbasiertes Paradigma Computer = Transformationsmaschine für Strukturen Es gibt eine aktuelle Struktur, die solange transformiert wird, wie dies möglich ist. Arbeitsprozess: Such- und Anwendungsprozess. matching: Suchen einer passenden Regel, rewriting: Anwendung der Regel, um die Struktur umzuschreiben. Programm = Menge von Transformationsregeln Programmfindung: Spezifikation der Regeln

Regelbasiertes Paradigma Computer = Transformationsmaschine für Strukturen Es gibt eine aktuelle Struktur, die solange transformiert wird, wie dies möglich ist. Arbeitsprozess: Such- und Anwendungsprozess. matching: Suchen einer passenden Regel, rewriting: Anwendung der Regel, um die Struktur umzuschreiben. Programm = Menge von Transformationsregeln Programmfindung: Spezifikation der Regeln Programmiersprachen: L-System-Sprachen, KI-Sprachen, Prolog,...

Regelsysteme zur Ersetzung von Zeichenketten Beispiel: L-Systeme (Lindenmayer-Systeme) (in Kürze mehr)

ebenfalls regelbasierter Mechanismus: Graph-Grammatiken

ebenfalls regelbasierter Mechanismus: Graph-Grammatiken Regel:

ebenfalls regelbasierter Mechanismus: Graph-Grammatiken Regel: Anwendung:

Zusammenfassung: Programmierparadigmen

Zusammenfassung: Programmierparadigmen ● imperativ

Zusammenfassung: Programmierparadigmen ● imperativ - Veränderung von Variablen - Turtle-Geometrie

Zusammenfassung: Programmierparadigmen ● imperativ - Veränderung von Variablen - Turtle-Geometrie ● objektorientiert

Zusammenfassung: Programmierparadigmen ● imperativ - Veränderung von Variablen - Turtle-Geometrie ● objektorientiert ● regelbasiert

Zusammenfassung: Programmierparadigmen ● imperativ - Veränderung von Variablen - Turtle-Geometrie ● objektorientiert ● regelbasiert - L-Systeme - Graph-Grammatiken

Zusammenfassung: Programmierparadigmen ● imperativ - Veränderung von Variablen - Turtle-Geometrie ● objektorientiert ● regelbasiert - L-Systeme - Graph-Grammatiken ● weitere: funktional; nebenläufig; chemisch...

Anwendungsschwerpunkte: prozedural: Numerik, z.B. Lösen von Gleichungssystemen Bsp. Photosynthese; Baumwasserfluss (Darcy-Gesetz = DGL,  diskretisiert, numerisches Lösungsverfahren) regelbasiert: Entwicklung verzweigter Strukturen (lokal 1-D) Bsp. Pflanzen logische Abhängigkeiten Bsp. Wissensbasierte Systeme objektorientiert: Ensembles interagierender Objekte Bsp. Tierindividuen

Synthese: Die Sprache XL „eXtended L-system language“ Programmiersprache, die parallele Graph- Grammatiken (RGG) einfach verfügbar macht

imperativobjektorientiertregelbasiert Java XL

F0 RU(90) F0 RU(90) LMul(0.5) F0 Turtle-Geometrie

(Turtle geometry, "Schildkrötengeometrie")

Turtle-Geometrie

Turtle-Geometrie in GroIMP

Wie man eine Turtle-Befehlsfolge mit GroIMP ausführt schreiben Sie in eine GroIMP-Projektdatei (oder in eine Datei mit Endung.rgg ): protected void init() [ Axiom ==> Turtle-Befehlsfolge ]

Beispiel: Zeichnen eines Dreiecks protected void init() [ Axiom ==> RU(30) F(10) RU(120) F(10) RU(120) F(10) ] siehe Datei sm09_b01.rgg

Wiederholung von Abschnitten der Zeichenkette möglich mit " for " z.B. for ((1:3)) ( A B C ) liefert A B C A B C A B C

was ist das Ergebnis der Interpretation von L(10) for ((1:6)) ( F0 RU(90) LMul(0.8) ) ?

L(10) for ((1:6)) ( F0 RU(90) LMul(0.8) )

anderes Beispiel: for ((1:20)) ( for ((1:36)) ( F0 RU(165) F0 RU(165) ) RU(270) )

anderes Beispiel: for ((1:20)) ( for ((1:36)) ( F0 RU(165) F0 RU(165) ) RU(270) )

Erweiterung auf 3D-Grafik: Turtle-Rotationen um 3 Achsen

Erweiterung auf 3D-Grafik: Turtle-Rotationen um 3 Achsen head left up

Erweiterung auf 3D-Grafik: Turtle-Rotationen um 3 Achsen head left up

Erweiterung auf 3D-Grafik: Turtle-Rotationen um 3 Achsen RH RL RU

3D-Befehle: RU(45) Drehung der turtle um die "up"-Achse um 45° RL(... ), RH(... ) analog um "left" und "head"-Achse up-, left- und head-Achse bilden ein rechtwinkliges, räumliches Koordinatensystem, das von der turtle mitgeführt wird RV(x) Rotation "nach unten" mit durch x vorgegebener Stärke RG Rotation ganz nach unten (Richtung (0, 0, -1))

Beispiel: L(100) D(3) RU(-90) F(50) RU(90) M0 RU(90) D(10) F0 F0 D(3) RU(90) F0 F0 RU(90) F(150) RU(90) F(140) RU(90) M(30) F(30) M(30) F(30) RU(120) M0 Sphere(15) erzeugt was ist das Ergebnis der Interpretation der Zeichenkette L(10) F0 RU(45) F0 RU(45) LMul(0.5) F0 M0 F0 ?

Verzweigungen: Realisierung mit Speicher-Befehlen [ lege aktuellen Zustand auf Speicher ("Ablage", Stack) ] nimm obersten Zustand von der Ablage und mache diesen zum aktuellen Zustand (damit: Ende der Verzweigung)

Verzweigungen: Realisierung mit Speicher-Befehlen [ lege aktuellen Zustand auf Speicher ("Ablage", Stack) ] nimm obersten Zustand von der Ablage und mache diesen zum aktuellen Zustand (damit: Ende der Verzweigung) F0 [ RU(-40) F0 ] RU(20) DMul(2) F0

Verzweigungen: Realisierung mit Speicher-Befehlen [ lege aktuellen Zustand auf Speicher ("Ablage", Stack) ] nimm obersten Zustand von der Ablage und mache diesen zum aktuellen Zustand (damit: Ende der Verzweigung) F0 [ RU(-40) F0 ] RU(20) DMul(2) F0

Mit welchen Turtle-Befehlsfolgen erzeugt man die folgenden Strukturen ?

Hausaufgabe zum nächsten Mal: Bearbeiten Sie im ILIAS-Lernmodul „Einführung in GroIMP“ (verfügbar über StudIP): - Einführung - Lektionen Lektion 23 (beachten Sie, dass das Laden von dtd-Dateien in der aktuellen GroIMP-Version einfacher ist als dort dargestellt)