Modellierung von Pflanzen
Modellierung von Pflanzen
Modellierung von Pflanzen
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
Computergraphik II<br />
<strong>Modellierung</strong> <strong>von</strong> <strong>Pflanzen</strong><br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 1
Computergraphik II<br />
zwei unterschiedliche Herangehensweisen:<br />
1. Prozedurale Methoden (Algorithmen)<br />
intuitiv, einfache Parameter, Speziallösung für einzelne <strong>Pflanzen</strong><br />
2. Regelbasierte Systeme (formale Grammatiken)<br />
lokale Regeln, schwierig aufzubauen, generell einsetzbar<br />
→ Verbindung beider Paradigmen durch regelbasierte Objekterzeugung<br />
→ Versuch, Stärken beider Ansätze zu verbinden<br />
→ andere Unterteilungen möglich<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 2
¤ <br />
¦ £<br />
§<br />
§ ¤<br />
©<br />
§ ¤<br />
¢<br />
£ ¢<br />
£ ¦ ¢<br />
¡<br />
¨¥<br />
¨¥<br />
¦ £<br />
¥ ¨<br />
¥ <br />
Computergraphik II<br />
Verzweigungsmuster aus zellulären Automaten<br />
→ Ulam 1966: zelluläre Automaten (v. Neumann) für Verzweigungen<br />
→ Zellen werden nach bestimmten Regeln angeschaltet<br />
5 4<br />
5<br />
43<br />
5 4 3<br />
43<br />
5<br />
54<br />
4 3<br />
53<br />
4¤<br />
2<br />
1 2<br />
<br />
2<br />
4 3<br />
54<br />
3<br />
54<br />
<br />
5<br />
4 3<br />
2<br />
4 3<br />
43<br />
5 4 3<br />
43<br />
5 4<br />
5<br />
Verzweigungsmuster nach Ulam<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 3
Computergraphik II<br />
Erstes kontiunierliches Modell<br />
→ 1967, Biologe E. Cohen: Erzeugung <strong>von</strong> Verzweigungsstrukturen<br />
→ für jedes Verzweigungsmuster Fortran-Programm mit Wachstumsregeln<br />
Verzweigungsstrukturen nach Cohen<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 4
Computergraphik II<br />
Beschreibung des Modells:<br />
• Wachstum findet nur an den Spitzen der Äste statt<br />
• Stärke und Winkel des Wuchses werden durch die aktuelle Richtung, ein<br />
lokales Dichtefeld, dessen Gradienten sowie die Resistenz der Struktur<br />
gegen Winkelveränderungen bestimmt.<br />
• Die Verzweigungstendenz wird durch ein probabilistisches Maß bestimmt,<br />
das neben einem generellen Wert <strong>von</strong> der Entfernung zur letzten<br />
Verzweigung und vom lokalen Dichtefeld abhängt.<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 5
Computergraphik II<br />
Verfahren <strong>von</strong> Honda und Fischer<br />
→ weiteres prozedurales Modell<br />
• Die Internodien sind gerade, ihre Dicke wird nicht beachtet<br />
• Verzweigung geschieht binär, die Länge der verzweigenden Segmente<br />
(Kindsegmente) ist über zwei Verhältniswerte r 1 und r 2 auf die Länge<br />
des Vatersegments bezogen.<br />
• Vatersegment und die beiden Kindsegmente liegen in einer Ebene (Ausnahme<br />
Abzweigungen vom Hauptstamm, hier ist Divergenz zugelassen),<br />
die Kindsegmente haben einen konstanten Verzweigungswinkel.<br />
• Die Verzweigung nimmt in diskreten Schritten mit jeder Verzweigungsordnung<br />
zu.<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 6
Computergraphik II<br />
⇒ es wird untersucht, wie Regulationsmechanismen die Verzweigung<br />
steuern, d.h. keine Überlappung zwischen Ästen<br />
→ betrachteten Modelle sind zweidimansional und es werden zwei Arten<br />
<strong>von</strong> Regelungen untersucht:<br />
1. Verzweigung wird nur ausgeführt, wenn in einem um den Verzweigungspunkt<br />
gezogenen Kreis keine anderen Äste hineinragen<br />
→ Kreis hat konstante Größe<br />
Verzweigungsbildung nach Honda<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 7
Computergraphik II<br />
2. wie ändert sich Verzweigungcharakteristik ändert, Nachfolgeäste unterschiedliche<br />
Wachstumsraten erhalten<br />
Verzweigunsbildung nach Honda<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 8
Computergraphik II<br />
Erweiterte Vielfalt<br />
→ effiziente <strong>Modellierung</strong> <strong>von</strong> Verzweigungstrukturen<br />
→ welche Vielfalt kann damit erzeugt werden<br />
→ aufbauend auf Grundverfahren <strong>von</strong> Aono und Kunii:<br />
1. Verzweigung geschieht durch Bifurkation, die damit modellierten Bäume<br />
haben monopodiale oder sympodiale Form.<br />
2. Länge und Durchmesser der verzweigenden Äste nehmen mit konstantem<br />
Faktor ab, die Verzweigungswinkel bleiben konstant über alle Verzweigungsstufen.<br />
3. Die beiden verzweigenden Äste liegen in der Ebene, die durch den Vater<br />
und seinen maximalen Gradienten aufgespannt wird.<br />
4. Die Verzweigung geschieht simultan an allen Enden der Zweige.<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 9
Computergraphik II<br />
(a)<br />
(b)<br />
a) Parametrisierung <strong>von</strong> Ästen; b) Divergenzwinkel.<br />
Parameter im Modell nach Aono und Kunii<br />
→ Koordinaten <strong>von</strong> P 1 und P 2 ergeben sich über die Winkelfunktionen<br />
x i = x B + R i ∗ (u ∗ cos(h i ) − S ∗ T ∗ v ∗ sin(h i ))<br />
y i = y B + R i ∗ (v ∗ cos(h i ) + S ∗ T ∗ u ∗ sin(h i ))<br />
z i = z B + R i ∗ w ∗ cos(h i )<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 10
Computergraphik II<br />
→ mit den folgenden Parametern<br />
(R i konstanter Reduktionsfaktor für den Radius):<br />
u = x B − x A , v = y B − y A , w = z B − z A<br />
S = 1/ √ u 2 + v 2<br />
T = √ u 2 + v 2 + w 2<br />
⇒ später Ansätze verwenden meistens Elemente dieses<br />
Verzweigungmodells<br />
→ Nachteile:<br />
→ Blätter werden aber nur rudimentär angedeutet<br />
→ Geomatrie <strong>von</strong> Stamm und Ästen ist nur durch<br />
Liniensegmenten unterschiedlicher Dicke dargestellt<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 11
Computergraphik II<br />
Ergebnisse:<br />
Verzweigungsstrukturen nach Aono und Kunii<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 12
Computergraphik II<br />
Darstellung <strong>von</strong> Bäumen über Partikelsysteme<br />
→ visuelle Modelle, für Film<br />
→ primitives rekursives Verzweigungmodell<br />
Postprocessing: Zufälligkeiten werden eingebaut<br />
Blätter: kleine Kugel mit Farbe und Ausrichtung<br />
→ wichtig: korrekte Farben sowie Licht/Schatten<br />
→ Ergebnis trotz botanischer Inkorrektheit brauchbar<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 13
Computergraphik II<br />
Ergebnisbilder:<br />
Strukturierte Partikelsysteme nach Reeves und Blau<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 14
Computergraphik II<br />
Fraktale Baummodelle nach Oppenheimer<br />
→ inspiriert durch Arbeiten <strong>von</strong> Mandelbrot<br />
→ rekursive Prozedur zur Erzeugung <strong>von</strong> Selbstähnlichkeit<br />
⇒ Verwendete Parameter sind:<br />
→ Verzweigungswinkel<br />
→ Verhältnis der Größe <strong>von</strong> Vater- und Kindzweigen<br />
→ Grad der Verjüngung entlang Stamm und Ästen<br />
→ Anzahl Zweige pro Stamm-Segment<br />
→ Deviationswinkel<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 15
Computergraphik II<br />
Ergebnisbild:<br />
Fraktales Baummodell nach Oppenheimer<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 16
Computergraphik II<br />
Algorithmus nach Oppenheimer:<br />
procedure fractaltree()<br />
begin<br />
Zeichne aktuelles Astsegment<br />
if (klein genug)<br />
then Zeichne Blatt<br />
else<br />
begin<br />
Transformiere für aktuellen Ast<br />
fractaltree()<br />
repeat<br />
begin<br />
Transformiere für Verzweigung<br />
fractaltree()<br />
end<br />
end end<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 17
Computergraphik II<br />
→ Stamm und Äste: generalisierte Zylinder durch Verbindung<br />
<strong>von</strong> Segmenten<br />
→ realistisch aussehende Rinde:<br />
horizental verlaufende Sägezahnfunktion + Brownsches Rauschen<br />
Rinde(x, y) = Sägezahn(N ∗ (x + R ∗ noise(x, y)))<br />
noise(x, y): periodisch in x− und y−Richtung verlaufendes Rauschen<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 18
Computergraphik II<br />
Geometrisches Modellieren in Bäumen (Bloomthal<br />
→ Kontrollpunkte über rekursiven Algorithmus erzeugt<br />
→ Punkte werden über Spline-Interpolation C2 stetig verbunden<br />
→ Oberfläche wird erzeugt, indem senkrecht zum Spline kreisförmige<br />
Scheiben angeordnet und verbunden werden<br />
→ Schwierigkeit: natürliche Verzweigungen<br />
→ Lösung: sattelförmige Flächen zwischen verzweigenden Strängen<br />
→ Rinde wird durch Bump- Mapping mit einer aus echter Rinde<br />
gewonnenen Textur dargestellt<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 19
Computergraphik II<br />
Ergebnisgeometrien nach Bloomthal:<br />
Prozedurales Modell nach Bloomthal<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 20
Computergraphik II<br />
Knospung: ein botanischer Ansatz<br />
→ Simulation des Wachstums der Spossachsen in diskreten<br />
Zeitabschnitten <strong>von</strong> Knoten zu Knoten<br />
→ entlang eines Sprosses wird so Internodium an Intermodium<br />
gesetzt, nach definierter Länge Blätter/Verzweigungen<br />
→ Spross kann ruhen oder absterben<br />
→ Knospe trägte Wahrscheinlichkeiten für Zustände in sich:<br />
1. Wahrscheinlichkeit abzusterben<br />
2. Wahrscheinlichkeit einen Zeitabschnitt auszusetzen<br />
3. Wahrscheinlichkeit sich zu verzweigen<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 21
Computergraphik II<br />
Wachstumsvorgang nach deReffye<br />
verwendete Parameter:<br />
• Alter des Baums,<br />
• Wachstumsgeschwindigkeiten der Äste verschiedener Ordnungen,<br />
• Anzahl möglicher Knospen pro Knoten in Abhängigkeit der Ordnung,<br />
• Wahrscheinlichkeiten für Absterben, Aussetzen, Verzweigen<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 22
Computergraphik II<br />
→ Der Algorithmus procedure budtree()<br />
begin<br />
for jedes Zeitsignal do<br />
begin<br />
for jede noch lebende Knsope do<br />
begin<br />
if Knospe stirbt nicht und setzt nicht aus<br />
then<br />
begin<br />
generiere Internodium<br />
generiere apikales Blatt<br />
end<br />
for jede in Frage kommende Knospe do<br />
begin<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 23
Computergraphik II<br />
if Knospe verzweigt<br />
then<br />
bilde Vezweigung<br />
end<br />
end<br />
end<br />
end<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 24
Computergraphik II<br />
Ergebnissgeometrien nach deReffye et al.:<br />
Ergebnisse botanisch motivierter Wachstumsmodelle nach deReffye<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 25
Computergraphik II<br />
Eine Kombinatorische Methode (Vienot et al.)<br />
→ Strahleranalyse weißt jedem Knoten/jeder Kante eine Zahl zu<br />
→ Erweiterung zu Biordnung: Zahlenpaar (c, d) pro Knoten<br />
ist k die Horton-Strahler-Ordnung des Vaters und i und j die<br />
der Söhne, so ist:<br />
c = k, d = i<br />
wenn j = k und i < k<br />
c = d = k − 1 sonst (i = j = k − 1)<br />
→ Biordnung beschreibt Charakteristikum des Knotens im Sinne der<br />
Ordnungsverteilung der Söhne<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 26
Computergraphik II<br />
→ für alle Knoten mit Strahler- Zahl wird Wahrscheinlichkeit für<br />
bestimmte Biordnung festgelegt<br />
→ Werte werden in Verzweigungsmatrix P gespeichert:<br />
→ a k Anzahl Knoten mit Horton-Strahler-Ordnung k k ≥ 2<br />
→ b k,i Anzahl Knoten mit Biordnung (k, i)<br />
1 ≤ i < k<br />
→ b k,k Anzahl Knoten mit Biordnung (k − 1, k − 1) k ≥ 2<br />
→ p kj = b k,j /a k<br />
1 ≤ i ≤ k<br />
→ entstandene Matrizen haben charakteristische Form für<br />
verschiedene Arten <strong>von</strong> Bäumen<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 27
Computergraphik II<br />
P perfekt =<br />
⎛<br />
⎜<br />
⎝<br />
0 1<br />
0 0 1<br />
0 0 0 1<br />
. . . . ...<br />
⎞<br />
⎟<br />
⎠<br />
Matrix für einen perfekt verzweigten binären Baum<br />
P zufall =<br />
⎛<br />
⎜<br />
⎝<br />
1/2 1/2<br />
1/2 1/4 1/4<br />
1/2 1/4 1/8 1/8<br />
1/2 1/4 1/8 1/16 1/16<br />
. . . . . ...<br />
⎞<br />
⎟<br />
⎠<br />
Matrix für zufällige Binärbäume mit n Knoten<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 28
Computergraphik II<br />
→ topologisch selbstähnliche Verzweigungsstrukturen besitzen gleiche<br />
Zeilen, die um jeweils eine Spalte nach rechts verschoben sind<br />
P F arn =<br />
⎛<br />
⎜<br />
⎝<br />
1 − 1/p 1/p<br />
0 1 − 1/p 1/p<br />
0 0 1 − 1/p 1/p<br />
. . . . ...<br />
⎞<br />
⎟<br />
⎠<br />
Matrix für Farne<br />
→ zur Herstellung eines Baumes wird aus gegebener dreiecksförmiger<br />
(s − 1) × s Verzweigungsmatrix R und gegebenen<br />
S ≤ s zufällig ein Binärbaum T n mit Horton-Strahler<br />
Zahl S erzeugt, dessen Verzweigungmatrix ähnlich R ist<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 29
Computergraphik II<br />
procedure kombitree()<br />
begin<br />
erzeuge T 1<br />
n = 1<br />
repeat<br />
Wähle terminale Kante aus T n mit Horton-Strahler-Ordnung k > 1<br />
Verzweige <strong>von</strong> dieser Kante und gebe den Kindkanten die<br />
Ordnungen k und i entsprechend der<br />
Wahrscheinlichkeiten für die Biordnung der<br />
Kanten dieser Ordnung in der Verzweigungsmatrix<br />
T n+1 = T n<br />
until alle terminalen Kanten <strong>von</strong> T n+1 haben<br />
Horton-Strahler-Ordnung k = 1<br />
end<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 30
Computergraphik II<br />
Ergebnisgeometrien nach Vienot et al.:<br />
Kombinatorischer Aufbau <strong>von</strong> Bäumen nach Vienot<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 31
Computergraphik II<br />
Bäume aus Strängen<br />
→ Idee: Leonardo da Vinci<br />
→ Baum wird durch Stränge <strong>von</strong> der Wurzel bis zu jeweils einem Blatt<br />
definiert<br />
→ in einer Gabelung werden die Stränge aufgeteilt und laufen<br />
als Kinder weiter<br />
→ dabei ist die Summe des Querschnitts des Vaters einer Astgabelung<br />
gleich die Summe der Querschnitte der Söhne<br />
→ Anzahl der Stränge bestimmt Dicke und Länge der Äste, Anzahl<br />
der Blätter und den Verzweigungswinkel<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 32
Computergraphik II<br />
→ gabelt sich ein Ast mit S 0 Strängen, wobei das Verhältniss<br />
der Strangzahlen mit P G,W in Abhängigkeit <strong>von</strong> der<br />
Gravelius- und Weibull- Ordnungszahl des Astes gegeben ist,<br />
so gilt für die Anzahl der Stränge S 1 , S 2 in den Kindern:<br />
S 1 = 1 + P G,W (S 0 − 2)<br />
S 2 = 1 + (1 − P G,W )(S 0 − 2)<br />
S 0 = S 1 + S 2 .<br />
Modell aus Strängen nach Holton<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 33
Computergraphik II<br />
→ Druchmesser der Äste: d i = T √ S i<br />
mit T eine Konstante daraus folgt:<br />
d 2 0 = d 2 1 + d 2 2.<br />
→ Länge der Zweige wird aus den Strängen berechnet, wobei Verhältniss<br />
der Wurzelfunktionen der Strangzahlen verwendet wird:<br />
a 1 = S 2<br />
S 0<br />
A G,W<br />
a 2 = A G,W − a 1<br />
→ charakteristische Längen L i und und aktive im Modell erscheinende<br />
Längen l i sind vom Benutzer vorgegebene Parameter<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 34
Computergraphik II<br />
Bäume nach Holton:<br />
Beispielbäume nach Holton<br />
→ Tannen aus jeweils 2500 Strängen<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 35
Computergraphik II<br />
Aproximatives Modellieren der <strong>Pflanzen</strong>gestelt<br />
→ Ziel ist es aproximative Lösungen für Bäume im Hintergrund zu finden<br />
→ Baumprozedur benötigt 50 Parameter, wie Form des Baumes, Größe<br />
des untern Teils ohne Äste, Anzahl Verzweigungebenen und Form<br />
des Stammfußes (=generelle Parameter)<br />
Beispielpflanze nach Weber und Penn<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 36
Computergraphik II<br />
Wachstum mit Voxeln<br />
→ Betrachtung <strong>von</strong> Interaktion <strong>von</strong> <strong>Pflanzen</strong> mit ihrer Umgebeung<br />
und ihr effiziente Erzeugung<br />
→ Zerlegung der Szene in Voxel und Spezifizierung der Voxel, in denen<br />
die Winde wachsen kann<br />
→ ein parametrisierbarer probabilistischer Algorithmus läßt die Pflanze<br />
<strong>von</strong> manuelle spezifizierten Saatpunkt aus wachsen<br />
→ über Suchstrategien werden Internodien in den möglichen Voxeln<br />
platziert (dabei Betrachtung des direkt einfallenden Sonnenlichts und<br />
diffusen Beleuchtungen<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 37
Computergraphik II<br />
Voxelpflanzen nach Green:<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 38
Computergraphik II<br />
Voxelmodell nach Green<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 39
Computergraphik II<br />
Regelbasierte <strong>Modellierung</strong> <strong>von</strong> Planzen<br />
→ Verwendung einer formalen Regelbasis um einen Anfangszustand in<br />
einen Endzstand zu verwandeln<br />
→ ermöglicht eine äußerst kompakte Beschreibung für komplexe<br />
Endzustände<br />
→ Daten müssen in einem zeitaufwendigen Prozess aus<br />
Regelmenge generiert werden<br />
→ in einem Textersetzungssystem werden Zeichen in einem Text durch<br />
andere ersetzt mit Hilfe <strong>von</strong> Regeln<br />
→ zur Herstellung der Geometrien werden die Zeichen des Textes<br />
graphisch interpretiert<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 40
Computergraphik II<br />
Ersetzungssysteme<br />
klassisches Beispiel: Koch-Kurve<br />
→ jede Ersetzung geschieht graphisch, d.h. jede Kante wird durch<br />
eine Folge <strong>von</strong> Kanten ersetzt<br />
→ Ersetzungsvorgang wird durch den Generator realisiert<br />
→ sukzessive Anwenden des Genarators auf die Kanten des initialen<br />
Objektes (Initiator) ergibt eine Komplexe Figur<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 41
Computergraphik II<br />
mögliche Ersetzungssysteme:<br />
• Graphen<br />
Kanten oder Knoten werden durch Teilgraphen ersetzt<br />
• Felder<br />
Werte oder Wertekombinationen in einem Felde werden durch andere<br />
Werte ersetzt<br />
• Texte<br />
Es werden Zeichen in einem Text ersetzt<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 42
Computergraphik II<br />
Lindenmayer- Systeme<br />
→ Lindenmayer- System (L- System) ist ein Textersetzungssystem<br />
→ gegeben durch eine formale Grammatik G = (V, ω, P ) mit:<br />
V ...Alphabet<br />
ω... ein nichtleeres Wort (Axiom)<br />
P ... eine Menge <strong>von</strong> Produktionen<br />
→ die Menge V ∗ ist die Menge der Worte über V<br />
die Menge V + ist die Menge aller nichtleeren Worte<br />
→ eine Produktion p ∈ P wird beschrieben durch:<br />
φ ::= χ mit φ, χ ∈ V +<br />
→ in einem kontextfreien L- System (OL-System) hat φ die Länge<br />
Eins, d.h. die Regel ist immer anwendbar, wenn a = φ auftaucht<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 43
Computergraphik II<br />
Kontextsensitive L- Systeme<br />
→ in einem kontextsensitiven L- System wird die Anwendbarkeit einer<br />
Regel vom Umfeld des Buchstabens abhängig gemacht:<br />
φ = τaυ mit τ, υ ∈ V + und a ∈ V<br />
→ Hat τ die Länge k und υ die Länge l, so nennt man<br />
dies ein (k,l)-System<br />
Deterministische L- System<br />
→ in deterministischem L- System (DOL-Systeme) existiert zu einem<br />
φ höchstens eine Regel mit φ als linke Seite<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 44
Computergraphik II<br />
Stochastische L- Systeme<br />
→ stochastische L- Systeme werden beschrieben durch formale<br />
Grammatik:<br />
G = (V, ω, P, π)<br />
→ in Ergänzung zum deterministischem L- System wird der Produktions-<br />
Menge P eine Menge <strong>von</strong> Wahrscheinlichkeiten π : P → (0, 1]<br />
zugeordnet<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 45
Computergraphik II<br />
→ in L- Systemen erfolgt die Ersetzung parallel<br />
→ pro Schritt werden alle möglichen Ersetzungen vorgenommen<br />
→ daraus entstehen neue Mächtigkeiten in Bezug auf die<br />
Chomsky-Sprachen<br />
IL-Systeme<br />
Endliche Sprachen<br />
Reguläre Sprachen<br />
(k,l)-Systeme<br />
Kontextfreie Sprachen<br />
Kontextsensitive Sprachen<br />
Aufzählbare Sprachen<br />
Mächtigkeit <strong>von</strong> 0L- Systemen und (kl)-Systemen im Vergleich zu Chomsky-Sprachen<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 46
Computergraphik II<br />
Ein Beispiel:<br />
Alphabet: V = {f, F, +, −}<br />
Axiom: w = F − −F − −F<br />
Regelmenge: P = {F ::= F + F − −F + F }<br />
Entstehende Ableitungsfolge:<br />
F − −F − −F<br />
F + F − −F + F − −F + F − −F + F − −F + F − −F + F<br />
F + F − −F + F + F + F − −F + F − −F + F − −F + F + F +<br />
F − −F + F − −F + F − −F + F + F + F − −F + F − −F +<br />
F −−F +F +F +F −−F +F −−F +F −−F +F +F +F −−F +F<br />
→ Text muß im letzen Schritt graphisch interpretiert werden<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 47
Computergraphik II<br />
Graphische Interpretation<br />
→ häufig verwendet: Turtle-Metapher (Schildkröte)<br />
→ hierbei wird eine Turtle über die Zeichenebene oder durch<br />
den Raum geschoben<br />
→ Zustand der Turtle: Vektor (x, y, α) aus Position+Winkel<br />
der aktuellen Bewegungsrichtung (plus weiteres)<br />
→ ist Position und Richtung vorgegeben, so läuft Turtle immer<br />
geradeaus bis Richtungsänderung notwendig wird<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 48
Computergraphik II<br />
→ Fahrbefehle für die Turtle:<br />
F<br />
f<br />
Bewege Turtle um Länge d in aktueller Richtung, zeichne<br />
eine Linie: (x, y, α) → (x + d cos δ, y + d sin δ, α)<br />
Bewege Turtle um Länge d in aktueller Richtung, ohne zu<br />
zeichnen: (x, y, α) → (x + d cos δ, y + d sin δ, α)<br />
+ Erhöhe aktuellen Winkel um δ:<br />
(x, y, α) → (x, y, α + δ)<br />
- Erniedrige aktuellen Winkel um δ:<br />
(x, y, α) → (x, y, α + δ)<br />
→ was kommt bei Beispiel heraus (Winkel: 30 ◦ )<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 49
Computergraphik II<br />
Raumfüllende Kurven<br />
→ weitere Kurven erhält man, wenn zwei zusätliche Zeichen L und R<br />
dem Alphabet hinzugefügt werden<br />
→ sie signalisieren den Zustande eines Kurvenstückes und werden<br />
bei der Expansion getrennt behandelt<br />
→ für Fahranweisung spielen sie jedoch keine Rolle<br />
→ man unterscheidet Kanten- und Knotenersetzungen:<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 50
Computergraphik II<br />
Beispiel für Knotenersetzung:<br />
Sei n = 3, δ = 90 ◦ und w = −L. Mit den Produktionen:<br />
L ::= LF + RF R + F L − F − LF LF L − F RF R+<br />
R ::= −LF LF + RF RF R + F + RF − LF L − F R<br />
Ergebnis:<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 51
Computergraphik II<br />
werden die Produktionen auf folgende Weise verändert<br />
L ::= LF LF + RF R + F LF L − F RF − LF L − F R + F + RF − LF L −<br />
F RF RF R+<br />
R ::= −LF LF LF + RF R + F L − F − LF + RF R + F LF + RF RF −<br />
LF L − F RF R,<br />
Ergebnis:<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 52
Computergraphik II<br />
Dreidimensionale Fahrbefehle<br />
→ allgemeine Rotationen werden durch Rotationen bzgl. der drei<br />
Koordinatenachsen beschrieben<br />
→ Differenzwinkel δ kann nun drei Winkel (α, β, γ)<br />
bezüglich der x-,y- und z-Achse verändern<br />
→ Zustand der Maschine wird über das Tupel (x, y, z, M)<br />
beschrieben, mit M als Rotationsmatrix<br />
zugehörige Fahrbefehle:<br />
F<br />
Bewege Turtle um Vektor ⃗ d in aktueller Richtung, zeichne<br />
eine Linie: (x, y, z, M) → (x + (M ⃗ d) 1 , y + (M ⃗ d) 2 , z +<br />
(M ⃗ d) 3 , M)<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 53
Computergraphik II<br />
f<br />
Bewege Turtle um Länge d in aktueller Richtung, ohne zu<br />
zeichnen: (x, y, z, M) → (x + (M ⃗ d) 1 , y + (M ⃗ d) 2 , z +<br />
(M ⃗ d) 3 , M)<br />
+ Erhöhe aktuellen Winkel γ um δ: (x, y, z, M) →<br />
(x, y, z, M · R γ (δ))<br />
- Erniedrige aktuellen Winkel γ um δ: (x, y, z, M) →<br />
(x, y, z, M · R γ (−δ))<br />
& Erhöhe aktuellen Winkel β um δ: (x, y, z, M) →<br />
(x, y, z, M · R β (δ))<br />
∧ Erniedrige aktuellen Winkel β um δ: (x, y, z, M) →<br />
(x, y, z, M · R β (−δ))<br />
\ Erhöhe aktuellen Winkel α um δ: (x, y, z, M) →<br />
(x, y, z, M · R α (δ))<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 54
Computergraphik II<br />
/ Erniedrige aktuellen Winkel α um δ: (x, y, z, M) →<br />
(x, y, z, M · R α (−δ))<br />
| Drehe um, hierbei verwende Matrix R γ (180 ◦ ):<br />
(x, y, z, M) → (x, y, z, M · R α (180 ◦ ))<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 55
Computergraphik II<br />
Verzweigungstrukturen<br />
→ zur Erzeugung <strong>von</strong> Verzweigungsstrukturen werden verwendete<br />
L- System erneut erweitert<br />
→ Abarbeitung geschieht als sogenannter Pushdown- Automat<br />
Pushdown- Automaten<br />
→ um bei Auswertung einen Pushdown- Automaten zu implementieren<br />
muss mittels eines Stacks der aktuelle Zustand des Systems<br />
gespeichert und auch wieder geladen werden können<br />
Zeichen:<br />
[ Speichere aktuellen Zustand (x, y, z, M) auf Stack<br />
] Lade Zustand (x, y, z, M) vom Stack<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 56
Computergraphik II<br />
(a) (b) (c) (d)<br />
Abbildung n δ w P<br />
(a) 5 25,7 ◦ F { F ::= F[+F]F[-F]F }<br />
(b) 4 22,5 ◦ F { F ::= FF-[-F+F+F]+[+F-F-F] }<br />
(c) 7 25,7 ◦ X { X ::= F[+X][-X]FX, F ::= FF }<br />
(d) 5 22,5 ◦ X { X ::= F[[X]+X]+F[+FX]-X, F ::= FF }<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 57
Computergraphik II<br />
Dreidimensionales Beispiel:<br />
A ::= [&F L!A]///// ′ [&F L!A]/////// ′ [&F L!A]<br />
F ::= S/////F<br />
S ::= F L<br />
L ::= [ ′′′ ∧ ∧ {−f + f + f − | − f + f + f}]<br />
→ geschweifte Klammern dienen zur Markierung eines grphischen Pfades<br />
in Form einer Folge <strong>von</strong> Punkten<br />
→ Punke werden bei Geometrieerzeugung über Triangulierung in<br />
eine Fläche umgewandelt<br />
→ ! und ’ dienen zur Vermiderung des Astdurchmessers und zur<br />
Steuerung der Farben<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 58
Computergraphik II<br />
Ein dreidimensionaler Busch<br />
aus Prusinkiewicz, Lindenmayer: The algorithmic beauty of plants<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 59
Computergraphik II<br />
Stochastische und parametrische Systeme<br />
→ bisher vorgestellte L- Systeme erzeugen immer dieselben<br />
Verzweigungsstrukturen<br />
→ nun: zufällige Ereignisse in die Strukturen einbauen<br />
→ Variation <strong>von</strong> Parametern<br />
→ zufällige Anwendung der Regeln (mehrer Regeln mit gleicher<br />
linker Seite, Auswahlmechanismus)<br />
→ außerdem: Einführung <strong>von</strong> Parametern<br />
→ diese werden während Expansion verändert<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 60
Computergraphik II<br />
F(w)<br />
f(w)<br />
Bewege Turtle um Vektor ⃗ d(w) in aktueller Richtung,<br />
zeichne eine Linie: (x, y, z, M) → (x + (M ⃗ d(w)) 1 , y +<br />
(M ⃗ d(w)) 2 , z + (M ⃗ d(w)) 3 , M)<br />
Bewege Turtle um Länge d in aktueller Richtung, ohne<br />
zu zeichnen: (x, y, z, M) → (x + (M ⃗ d(w)) 1 , y +<br />
(M ⃗ d(w)) 2 , z + (M ⃗ d(w)) 3 , M)<br />
+(w) Erhöhe aktuellen Winkel γ um a: (x, y, z, M) →<br />
(x, y, z, M · R γ (w))<br />
&(w) Erhöhe aktuellen Winkel β um a: (x, y, z, M) →<br />
(x, y, z, M · R β (w))<br />
/(w) Erhöhe aktuellen Winkel α um a: (x, y, z, M) →<br />
(x, y, z, M · R α (w))<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 61
Computergraphik II<br />
Ein einfaches Beispiel: Binärbaum<br />
mit n = 10, δ = 85 ◦ , R = 1.456 und Axiom w = A(1))<br />
Produktion:<br />
A(s) ::= F (s)[+A(s/R)][−A(s/R)]<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 62
Computergraphik II<br />
Weitere Beispiele mit parametrisierten L- Systemen:<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 63
Computergraphik II<br />
Phyllotaxis<br />
→ Beschreibung der Anordnung <strong>von</strong> Blättern und Blütenblättern in<br />
<strong>Pflanzen</strong><br />
→ Beispiel: Arangements der Samen der Sonnenblume<br />
→ mathematische Beschreibung: goldener Schnitt<br />
r i = c · √i<br />
α i = i · φ (1)<br />
wobei c eine positive Konstante ist und φ genau den Wert <strong>von</strong> 137.5 ◦<br />
einnehmen muß. Es gilt<br />
φ = 360◦<br />
τ 2 = 137.5077.. ◦ mit τ =<br />
√<br />
5 + 1<br />
. (2)<br />
2<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 64
Computergraphik II<br />
Divergenz φ<br />
21er Nachbarschaft<br />
34er Nachbarschaft<br />
249<br />
248<br />
247<br />
246<br />
245<br />
244<br />
243<br />
242<br />
241<br />
240<br />
239<br />
238<br />
237<br />
¡<br />
236<br />
235<br />
234<br />
233<br />
232<br />
¢<br />
231<br />
230<br />
229<br />
£<br />
228<br />
227<br />
226<br />
225<br />
224<br />
¤<br />
223<br />
222<br />
221<br />
220<br />
219<br />
¥<br />
218<br />
217<br />
216<br />
215<br />
214<br />
213<br />
212<br />
211<br />
¦<br />
210<br />
209<br />
208<br />
§<br />
207<br />
206<br />
205<br />
204<br />
203<br />
¨<br />
202<br />
201<br />
200<br />
199<br />
198<br />
197<br />
196<br />
195<br />
194<br />
193<br />
192<br />
191<br />
190<br />
189<br />
188<br />
187<br />
186<br />
185<br />
184<br />
183<br />
182<br />
181<br />
180<br />
179<br />
178<br />
177<br />
176<br />
175<br />
174<br />
173<br />
172<br />
171<br />
170<br />
169<br />
168<br />
167<br />
166<br />
165<br />
164<br />
©<br />
163<br />
162<br />
161<br />
160<br />
159<br />
158<br />
157<br />
156<br />
155<br />
154<br />
153<br />
152<br />
151<br />
150<br />
149<br />
148<br />
147<br />
146<br />
145<br />
144<br />
143<br />
142<br />
141<br />
140<br />
139<br />
138<br />
137<br />
136<br />
135<br />
134<br />
133<br />
132<br />
131<br />
130<br />
<br />
129<br />
128<br />
127<br />
126<br />
125<br />
124<br />
123<br />
122<br />
121<br />
120<br />
119<br />
118<br />
117<br />
116<br />
115<br />
114<br />
113<br />
112<br />
111<br />
110<br />
109<br />
108<br />
107<br />
106<br />
105<br />
104<br />
103<br />
102<br />
101<br />
100<br />
99<br />
98<br />
97<br />
96<br />
95<br />
94<br />
93<br />
92<br />
91<br />
90<br />
89<br />
88<br />
87<br />
86<br />
85<br />
84<br />
83<br />
82<br />
81<br />
80<br />
79<br />
78<br />
77<br />
76<br />
75<br />
<br />
74<br />
73<br />
72<br />
71<br />
70<br />
69<br />
68<br />
67<br />
66<br />
65<br />
64<br />
63<br />
62<br />
61<br />
60<br />
59<br />
58<br />
57<br />
56<br />
55<br />
54<br />
<br />
53<br />
52<br />
51<br />
50<br />
49<br />
48<br />
47<br />
46<br />
45<br />
44<br />
43<br />
42<br />
41<br />
<br />
40<br />
39<br />
38<br />
37<br />
36<br />
35<br />
34<br />
33<br />
32<br />
31<br />
30<br />
<br />
29<br />
28<br />
27<br />
26<br />
25<br />
<br />
24<br />
23<br />
22<br />
21<br />
20<br />
<br />
19<br />
18<br />
17<br />
16<br />
15<br />
14<br />
13<br />
12<br />
11<br />
10<br />
9<br />
8<br />
7<br />
6<br />
5<br />
4<br />
3<br />
2<br />
1<br />
0<br />
φ = 137.2 o<br />
φ = 137.5 o<br />
φ = 137.7 o<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 65
Computergraphik II<br />
→ erstaunlich: Nachbarschaften entsprechen Fibonaccizahlen<br />
f = 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 ...<br />
a) 8-Nachbarschaft wird zu 144-Nachbarschaft<br />
b) Parastichien: 21 rot, 34 grün, 55 blau, 89 magenta, 144<br />
c) Nicht-Fibonacci-Zahlen erzeugen keine reinen Parastichien (22-26)<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 66
Computergraphik II<br />
Phyllotaxis mit L-Systemen<br />
Produktion: A(n) ::= +(137.5)[f( √ n) ∼D]A(n + 1)<br />
→ D ist L-System zur Beschreibung eines kleine Kreises<br />
→ Kompletter Kopf einer Sonnenblume unter Zuhilfenahme <strong>von</strong><br />
L-Systemen zur Erzeugung der Form <strong>von</strong> Samen S, <strong>von</strong><br />
Blütenständen R und <strong>von</strong> Blütenblättern M, N, O, P<br />
A(n) ::= +(137.5)[f( √ n)C]A(n + 1)<br />
C(n) : n ≤ 440 ::= ∼S<br />
C(n) : 440 < n ≤ 565 ::= ∼R<br />
C(n) : 565 < n ≤ 580 ::= ∼M<br />
C(n) : 580 < n ≤ 595 ::= ∼N<br />
C(n) : 595 < n ≤ 610 ::= ∼O<br />
C(n) : 610 < n ::= ∼P<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 67
Computergraphik II<br />
Sonnenblume und Rosen, generiert über parametische L-Systeme<br />
aus Prusinkiewicz, Lindenmayer: The algorithmic beauty of plants<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 68
Computergraphik II<br />
Animation mit L-Systemen<br />
→ differential L- Systems<br />
→ L-Systemartige Produktionen beschreiben topologische Änderungen<br />
und Differentialgleichungen die kontinuierlichen Prozesse<br />
→ Produktionen bestehen auf der linken Seite aus:<br />
φ = τaυ mit τ, υ, a ∈ V<br />
→ diese parametrischen 2L -Systeme besitzen den Parametersatz:<br />
φ = τ(w τ )a(w)υ(w υ )<br />
→ kontinuierliche Verhalten der a(w) wird durch gewöhnliche<br />
Differentilagleichungen beschrieben<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 69
Computergraphik II<br />
Wachstum <strong>von</strong> Lychnis coronaria<br />
aus Prusinkiewicz, Lindenmayer: The algorithmic beauty of plants<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 70
Computergraphik II<br />
Interaktion <strong>von</strong> <strong>Pflanzen</strong> und Umwelt<br />
→ umweltsensitive L-Systeme<br />
Interaktion <strong>von</strong> <strong>Pflanzen</strong> mit ihrer Umwelt<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 71
Computergraphik II<br />
Regelbasierte Objekterzeugung<br />
Regelbasierte Verfahren:<br />
• mächtig und flexibel, um Struktur herzustellen<br />
• nicht intuitiv, Erzeugungsregeln lokal<br />
Prozedurales Modellieren:<br />
• mächtige Methode, um Geometrie<br />
• und auch Struktur herzustellen (CAD-Systeme)<br />
• intuitiv, aber beschränkt<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 72
Computergraphik II<br />
Idee:<br />
Regelbasiertes und prozedurales Modellieren verbinden<br />
Umsetzung:<br />
Baum repräsentiert Modell<br />
Knoten:<br />
Komponenten (Daten + Algorithmen)<br />
Kanten:<br />
Erzeugungsabhängigkeiten bzw. -regeln<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 73
Computergraphik II<br />
Geometrieerzeugung<br />
Drei Arten <strong>von</strong> Komponenten:<br />
1. Geometrieerzeugung (Primitive, Blätter, Zweige etc.)<br />
2. Multiplikation anderer Komponenten<br />
3. Globale <strong>Modellierung</strong><br />
Problem:<br />
Strukturinformation wird auf zwei Arten repräsentiert:<br />
→ Multiplikatorkomponenten<br />
→ Graphstruktur<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 74
Computergraphik II<br />
Daher:<br />
Dreistufiger Algorithmus<br />
1. erzeuge Graph aus Komponentenprototypen<br />
(p-graph)<br />
2. expandiere Graph zu Baum (i-tree)<br />
3. erzeuge Geometrie durch Traversierung des Baums<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 75
Computergraphik II<br />
Komponenten<br />
(a) (b) (c) (d) (e) (f) (g) (h) (i) (j) (k)<br />
Geometrieerzeugung: a) Simple, b) Revo, c) Horn, d) Leaf<br />
Multiplikation: e) Tree, f) Hydra, g) Wreath, h) Phiball<br />
Globale <strong>Modellierung</strong>: i) FFD, j) Hyperpatch, k) World<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 76
Computergraphik II<br />
Horn/Tree-Geometrie (inspiriert <strong>von</strong> Todd/Latham):<br />
T 2<br />
T 1<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 77
Computergraphik II<br />
Multiplikation:<br />
a) Hydra, b) Wreath, c) Phiball<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 78
Computergraphik II<br />
Ein Beispiel<br />
A<br />
B<br />
C<br />
D<br />
Wurzel<br />
Geometrieerzeugende Komponente<br />
Multiplikator (Anzahl Kopien=3)<br />
Geometrieerzeugende Komponente (Rekursionstiefe=3)<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 79
Computergraphik II<br />
→ Multiplikatoren speichern Werte in Form <strong>von</strong> Wertebereichen<br />
→ Jede multiplizierte Komponente erhält individuellen Wert<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 80
Computergraphik II<br />
<strong>Pflanzen</strong>beispiel Eins: Sonnenblume<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 81
Computergraphik II<br />
<strong>Pflanzen</strong>beispiel Zwei: Rhododendron<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 82
Computergraphik II<br />
<strong>Pflanzen</strong>beispiel Drei: Baum<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 83
Computergraphik II<br />
Erzeugung <strong>von</strong> <strong>Pflanzen</strong>populationen/<br />
Ökosystemen<br />
• Verwendung parametrisierter <strong>Pflanzen</strong>modelle<br />
→ xfrog, L-Systeme<br />
• Spezifikation <strong>von</strong> Terrain und Bodendaten<br />
→ interaktiv oder mit Geodaten<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 84
Computergraphik II<br />
• Spezifikation <strong>von</strong> <strong>Pflanzen</strong>positionen<br />
und -parametern<br />
→ interaktiv, deklarativ oder simulativ<br />
• Reduktion <strong>von</strong> Geometriedaten<br />
→ Quantisierung, approximative Instanziierung<br />
• effiziente Bilderzeugung<br />
→ cache-koherentes Raytracing<br />
→ hardware-beschleunigtes Raycasting<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 85
Computergraphik II<br />
Spezifikation <strong>von</strong> <strong>Pflanzen</strong>positionen und<br />
-parametern<br />
Möglichkeiten:<br />
a) Interaktive Spezifikation“Malprogramm”<br />
b) Prozedurale Generierung anhand explizit bekannter Verteilungen<br />
→ Interpretation <strong>von</strong> Satellitenbildern<br />
c) Prozedurale Generierung aufgrund<br />
<strong>von</strong> Simulationsverfahren<br />
→ Verdrängung, Kampf um Licht<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 86
Computergraphik II<br />
Interaktive Spezifikation<br />
Anwendungen:<br />
• Gärten, Parks, gestaltete Landschaften<br />
• menschliche Einflußnahme<br />
Vorgehensweise:<br />
• male Bilder, deren Grauwerte Parameter bestimmen<br />
→ Positionen, Größe/Prosperität, Orientierung, Auflösung<br />
• bestimme Positionen durch Halftoning Verfahren<br />
→ hierbei evtl. Relaxation<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 87
Computergraphik II<br />
• ordne <strong>Pflanzen</strong>positionen Parameterwerte zu<br />
→ Funktionen spezifizieren, wie Bilder interpretiert werden<br />
• erzeuge Datei mit <strong>Pflanzen</strong>parametern<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 88
Computergraphik II<br />
Beispiel: Garten<br />
Parameterbilder, Positionen:<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 89
Computergraphik II<br />
Generiertes Bild:<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 90
Computergraphik II<br />
Grasmodell:<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 91
Computergraphik II<br />
Spezifikation durch Simulation<br />
→ Ausgangspositionen zufällig oder interaktiv spezifiziert<br />
→ Simulation <strong>von</strong> Selbstverdrängung (self-thinning)<br />
Yoda et al.:<br />
log(m) = − 3 log[d] + const<br />
2<br />
(m: Trockengewicht, d: <strong>Pflanzen</strong>dichte)<br />
Population unter Selbstverdrängungskurve<br />
⇒ mehr Individuen<br />
Wachstum (Vergrößerung des Gewichts)<br />
⇒ Selektion<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 92
Computergraphik II<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 93
Computergraphik II<br />
→ Simulation verschiedener <strong>Pflanzen</strong>arten<br />
Komplexeres Modell:<br />
→ Verdrängung/Selbstverdrängung<br />
→ Umweltfaktoren (Wasser, Erdbeschaffenheit)<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 94
Computergraphik II<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 95
Computergraphik II<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 96
Computergraphik II<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 97
Computergraphik II<br />
Oliver Deussen <strong>Pflanzen</strong>modellierung 98