Pr?sentation

Download Report

Transcript Pr?sentation

Präsentation
Solid Modeling
Seminar 2004/2005: Computergrafik
von
Nicolas Spehner
Präsentation von
Nicolas Spehner
Ablauf der Präsentation
Allgemein
Modellieren mit Raumprimitiven
Modellieren mit Begrenzungsflächen
Weitere Darstellungsformen
Präsentation von
Nicolas Spehner
Allgemein
Begriffserklärung
Solid Modeling  Festkörpermodellierung
Modellierung von komplexen, geschlossenen
Körpern („Solids“)
Konstruktion, Manipulation und bildlichen
Darstellung 3D geometrischer Objekte für
verschiedene Anwendungen
Zur rechnerorientierten Beschreibung solcher
Modelle sind entsprechende Datenstrukturen
erforderlich
Präsentation von
Nicolas Spehner
Allgemein
Anwendungsgebiete
CAE (Computer Aided-Engineering)
CAD - Computer Aided Design
CAP - Computer Aided Planing
CAM/CIM - Computer Aided Manufacturing
CAD = Theorie, Techniken und Systeme für
rechnergestützte Beschreibung und
Darstellung von 3D Körpern
Präsentation von
Nicolas Spehner
Allgemein
Anwendungsgebiete
CAD - Computer Aided Design
Präsentation von
Nicolas Spehner
Allgemein
Begriffserklärung
Modell
Abbild der Realität, welches bestimmte Aspekte der
Realität repräsentiert (und andere ausblendet)
Modell = Daten + Datenstruktur + Algorithmen
Festkörper
Körper mit festem Volumen
und einer geschlossenen Oberfläche
… begrenzt / homogen dreidimensional / endlich
Präsentation von
Nicolas Spehner
Allgemein
Begriffserklärung
Geometrie
Beschreibung und Konstruktion von
geometrischen Figuren und die Messung
von Längen, Winkeln, Flächen- und Rauminhalten
Topologie
Beschreibt die Beziehung zwischen jeweils
benachbarten geometrischen Elementen, die zusammen
die geometrische Form eines Körpers repräsentieren
Elemente:  z.B. Punkte, Kanten, Flächen
Präsentation von
Nicolas Spehner
Allgemein
Begriffserklärung
Geometrie und Topologie
Präsentation von
Nicolas Spehner
Allgemein
Implizite Darstellung
Beschreibung durch Angabe
einer impliziten Funktion bzw. Gleichung:
z.B. Kugel: x² + y² + z² = r²
Einschränkung:
Darstellung von Objekten einfacher
geometrischer Natur
Präsentation von
Nicolas Spehner
Allgemein
Kombinieren von Körpern
Kombination von Körpern  Volumina
Boolesche Mengenoperationen
Präsentation von
Nicolas Spehner
Allgemein
Mengenoperation mit Körpern
Problem: Ergebnis bei konventionellen
Mengenoperationen 
Volumen, Fläche, Strecken oder Punkte
Lösung: Regularisierte Mengenoperationen
Präsentation von
Nicolas Spehner
Allgemein
Regularisierte Mengenoperationen
A eine Menge von Punkten,
z.B. Teilmenge von R3.
A heißt beschränkt,
wenn ein endlicher Durchmesser existiert.
ε-Umgebung (ε>0) eines Punktes x ist die
Menge aller Punkte in A, deren Abstand zu x
kleiner als ε ist.
x  A heißt innerer Punkt von A,
wenn es eine ε-Umgebung von x gibt,
die ganz in A liegt.
Präsentation von
Nicolas Spehner
Allgemein
Regularisierte Mengenoperationen
x heißt Randpunkt von A, wenn jede
ε-Umgebung von x Punkte von A und des
Komplements von A enthält.
Der Rand von A (∂ A), ist die Menge aller
Randpunkte von A.
Das Innere von A ist Å = A – ∂A
A heißt offen, wenn Å = A
Der Abschluss von A
(auch „abgeschlossene Hülle“ von A)
ist  = A  ∂A (auch: Closure(A)).
Präsentation von
Nicolas Spehner
Allgemein
Regularisierte Mengenoperationen
A op* B = closure(interior(A op B))
op  {,,\}
Präsentation von
Nicolas Spehner
Allgemein
Kriterien von Darstellungsformen
Eindeutigkeit
Jedes Modell besitzt genau eine Darstellung
Vollständigkeit & Genauigkeit
Repräsentation ohne Informationsverlust
Effizienz
Zeitaufwand & Speicheraufwand für die Darstellung
Präsentation von
Nicolas Spehner
Modellieren mit Raumprimitiven
Constructive Solid Geometry (CSG)
Eine der wichtigsten
Darstellungsmöglichkeiten von 3D-Modellen
Beschreibung eines räumlichen Objekts als
mengentheoretische Kombination von
Standardprimitiven
Regularisierte Mengenoperationen
•„Zusammenfügen“ (Vereinigungsmenge)
•„Herausschneiden“ (Differenzmenge)
•„gemeinsame Anteile von Objekten“ (Schnittmenge)
Präsentation von
Nicolas Spehner
Modellieren mit Raumprimitiven
Constructive Solid Geometry (CSG)
Präsentation von
Nicolas Spehner
Modellieren mit Raumprimitiven
Constructive Solid Geometry (CSG)
Datenstruktur für das Modellieren mit
Raumprimitiven
Hierarchische Anwendung der drei
Grundoperationen
Baum oder Konstruktionsbaum
(DAG - Directed acyclic Graph)
Blätter
 Primitivkörper
Knoten
 Mengenoperationen
 Parameter für Transformation
Präsentation von
Nicolas Spehner
Modellieren mit Raumprimitiven
Constructive Solid Geometry (CSG)
Präsentation von
Nicolas Spehner
Modellieren mit Raumprimitiven
Konstruktion mit Raumprimitiven
Vorteile:
•Einfache Beschreibung eines räumlichen Objekts
•Vollständige Darstellung
•Unterstützung von algorithmischen Berechnungen durch
die booleschen Ausdrücke
•Freiformflächen können mit entsprechendem Aufwand
miteinbezogen werden
Präsentation von
Nicolas Spehner
Modellieren mit Raumprimitiven
Konstruktion mit Raumprimitiven
Nachteile:
•Keine eindeutige Darstellung
•Grafische Darstellung ist sehr rechenaufwendig
Präsentation von
Nicolas Spehner
Modellieren mit Begrenzungsflächen
Randdarstellung (B-Rep)
engl. Boundary Representation
Beschreibung eines räumliches Objekts
anhand seiner Begrenzungselemente, z.B.
Flächen, Kanten und Ecken
Einschränkung:
Nur polygonal berandete Objekte
(Polyeder, Meshes)
Präsentation von
Nicolas Spehner
Modellieren mit Begrenzungsflächen
Randdarstellung (B-Rep)
Präsentation von
Nicolas Spehner
Modellieren mit Begrenzungsflächen
Grundlagen
Geometrische Eigenschaften:
•Die Punktkoordinaten (Ecke) repräsentieren eindeutig
Punkte des Euklidischen Raumes
•Die Kanten sind entweder disjunkt oder sie schneiden
sich in gemeinsamen Ecken
•Die Flächen sind entweder disjunkt oder sie schneiden
sich in gemeinsamen Kanten oder Ecken
Präsentation von
Nicolas Spehner
Modellieren mit Begrenzungsflächen
Grundlagen
Topologische Eigenschaften:
•Jede Kante gehört zu genau zwei benachbarten Flächen
•Jede Kante hat genau einen Start- und einen Endpunkt
(Ecken)
•Jede Ecke gehört mindestens zu drei Kanten
Präsentation von
Nicolas Spehner
Modellieren mit Begrenzungsflächen
Eulerscher Polyedersatz
Ziel ist es einen Körper (3D Polyeder)
topologisch korrekt zu beschreiben
V–E+F=2
(eulerscher Polyedersatz, nach L. Euler,
1707 - 1783)
Beschreibung des Zusammenhangs
zwischen der Anzahl von Ecken Kanten und
Seiten eines einfachen Polyeders
Präsentation von
Nicolas Spehner
Modellieren mit Begrenzungsflächen
Reguläre bzw. regelmäßige Polyeder
Jede Ecke hat Grad p,
d.h. p Kanten, die sie trifft.
Jede Fläche ist ein regelmäßiges q-Eck
d.h. alle Seiten sind gleich lang.
5 Möglichkeiten
Präsentation von
Nicolas Spehner
Modellieren mit Begrenzungsflächen
Reguläre bzw. regelmäßige Polyeder
Präsentation von
Nicolas Spehner
Körper
p
q
F
V
e
Tetraeder
3
3
4
6
4
Hexaeder
(Würfel)
3
4
6
12
8
Oktaeder
4
3
8
12
6
Dodekaeder 3
5
12
30
20
Ikosaeder
3
20
30
12
5
Modellieren mit Begrenzungsflächen
Euler-Poincaré-Formel
Erweiterung des eulerscher Poyedersatz
Körper mit Höhlungen, mit mehrfachzusammenhängenden Seitenflächen und
Durchbohrungen
V–E+F=2*(S–G)+H
(Euler-Poincaré-Formel, nach R. Poincaré, 1860-1934)
Präsentation von
Nicolas Spehner
Modellieren mit Begrenzungsflächen
Euler-Poincaré-Formel
24 – 36 + 15 = 2 * ( 1 – 1 ) + 3
Präsentation von
Nicolas Spehner
Modellieren mit Begrenzungsflächen
Euler-Operationen
Konsistenten (De-) Konstruktion von Körpern
Hinzufügen oder löschen Ecken, Kanten
oder Flächen
Zeichenfolge aus den Zeichen (m | k) XY, wobei für
m = make, k = kill stehen und X und Y die einzelnen
Komponenten (Kanten, Fläche, etc.) bezeichnen
Durchführung jeder einzelner Operation
bleibt die Euler-Poincaré-Formel erfüllt
Präsentation von
Nicolas Spehner
Modellieren mit Begrenzungsflächen
Euler-Operatoren
Konstruktion eines Tetraeders
Präsentation von
Nicolas Spehner
Modellieren mit Begrenzungsflächen
Euler-Operatoren
Konstruktion eines Tetraeders
Präsentation von
Nicolas Spehner
Modellieren mit Begrenzungsflächen
Datenstruktur
Speicherung und Verarbeitung eines Objektes
in Randdarstellung
Ziel:
•Daten redundantfrei zu speichern
•Nicht gegebene Relationen berechnen
Vielzahl von Datenstrukturen für Objekte in der
Randdarstellung
Präsentation von
Nicolas Spehner
Modellieren mit Begrenzungsflächen
Datenstruktur
Polygonorientierte Datenstruktur
Knotenorientierte Datenstruktur
Kantenorientierte Datenstruktur
•(Full) Winged-Edge Datenstruktur
•Halbkantendarstellung
Präsentation von
Nicolas Spehner
Modellieren mit Begrenzungsflächen
(Full) Winged-Edge Datenstruktur
Präsentation von
Nicolas Spehner
Modellieren mit Begrenzungsflächen
Halbkantendarstellung
Präsentation von
Nicolas Spehner
Modellieren mit Begrenzungsflächen
Randdarstellung (B-Rep)
Vorteile:
•Vollständige Darstellung
•Verwendung von Freiformflächen (z.B. Bézier-Flächen)
•Großes Anwendungsspektrum
•Geometriedaten leicht berechenbar
Präsentation von
Nicolas Spehner
Modellieren mit Begrenzungsflächen
Randdarstellung (B-Rep)
Nachteile:
•Keine eindeutige Darstellung
•Effizienz fällt mit zunehmender Genauigkeit
•Umfangreiche und komplizierte, teilweise redundante
Datenstrukturen sind notwendig
Präsentation von
Nicolas Spehner
Darstellungsformen
Zellenzerlegung
engl. Cell Decomposition
Beschreibung von Objekten beliebiger
Dimension
Objekte bestehen aus verschiedenen
Bausteinen (Zellen)
Zusammenhängende Teilkörper wie z.B.
Würfel, Tetraeder, Zylinder u.a.
Präsentation von
Nicolas Spehner
Darstellungsformen
Zellenzerlegung
Präsentation von
Nicolas Spehner
Darstellungsformen
Zellenzerlegung
Vorteile:
•Sehr einfache Anwendbarkeit
•Keine Einschränkung in der Dimension
•Vollständige Darstellung
•Geometrische und topologische Eigenschaften können
bestimmt werden
Präsentation von
Nicolas Spehner
Darstellungsformen
Zellenzerlegung
Nachteile:
•Keine Eindeutige Darstellung
•Sehr eingeschränkte Darstellungsmöglichkeiten
Präsentation von
Nicolas Spehner
Darstellungsformen
Enumerationsverfahren
engl. Spatial Occupancy Enumeration
Beschreibung eines dreidimensionalen
Objekts durch eine Menge von Raumzellen
Voxel = volume pixel ("3D-Pixel")
Präsentation von
Nicolas Spehner
Darstellungsformen
Enumerationsverfahren
Oktagonbaum (engl. octree)
Präsentation von
Nicolas Spehner
Darstellungsformen
Enumerationsverfahren
Vorteile:
•Vollständige Darstellungsform
•Kompakte Beschreibung der räumlichen Objekte
•Geometrische und topologische Eigenschaften sind
implizit gegeben bzw. leicht berechenbar
•Einfache Bestimmung von Schnitt, Vereinigung und
Differenz zweier Objekte
Präsentation von
Nicolas Spehner
Darstellungsformen
Enumerationsverfahren
Nachteile:
•Keine eindeutige Darstellung
•Speicheraufwand für eine gute Approximation
•Objekttransformationen sind äußerst rechenaufwendig
Präsentation von
Nicolas Spehner
Vielen Dank für die
Aufmerksamkeit!
Präsentation von
Nicolas Spehner