Graphische Datenverarbeitung - Universität Frankfurt€¦ · Constructive Solid Geometry Primitive...

65
1 Prof. Dr.-Ing. Detlef Krömker *UDSKLVFKH'DWHQYHUDUEHLWXQJ Geometrie-Repräsentationen SS 2002 2 Graphische Datenverarbeitung 13. Geometrie-Repräsentationenl © Prof. Dr.-Ing. Detlef Krömker Beschreibt ein Bild (2D) oder eine Szene (3D) durch Ensemble von geometrischen Objekten (Punkte, Linien, Flächen, Körper) Erscheinungsattribute (Farbe, Struktur, Textur, Parametern von Beleuchtungsmodellen, ... ) Betrachtungsbedingungen 5FNEOLFN *HRPHWULHXQG0HUNPDOVHEHQH

Transcript of Graphische Datenverarbeitung - Universität Frankfurt€¦ · Constructive Solid Geometry Primitive...

  • 1

    Prof. Dr.-Ing. Detlef Krömker

    *RHWKH�8QLYHUVLWlW��)UDQNIXUW

    *UDSKLVFKH�'DWHQYHUDUEHLWXQJ

    ���������������������

    Geometrie-Repräsentationen

    SS 20022Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    Beschreibt ein Bild (2D) oder eine Szene (3D) durch� Ensemble von geometrischen Objekten

    (Punkte, Linien, Flächen, Körper)� Erscheinungsattribute

    (Farbe, Struktur, Textur, Parametern von Beleuchtungsmodellen, ... )

    � Betrachtungsbedingungen

    �������������������������

  • 2

    Wichtige UnterscheidungDefinitionsbereich: 2D oder 3D

    ��: ggf Ausschnitt aus Definitionsbereich darstellen: streng: Window (Teilmenge des Definitionsbereichs) Viewport (Teil des Bildschirms)Window-Viewport Transformation

    ��: Szene wird durch virtuelle Kamera (Viewing Transformationen, perspektivische Transformation) auf 2D abgebildet

    �������������������������

    y z

    x

    x

    y

    -z

    SS 20024Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    ���������������������������������

    ������������������Vector Files „Zeichnungen“, CAD HPGL HP Graphics Language (Plottersprache) Hewlett-Packard

    DXF Drawing eXchange Format Autodesk

    (original 2D später auf 3D erweitert)

    Metafiles (Raster & Vektorgraphik) CGM Computer Graphic Metafile ISO/IEC

    Page Description Language (Seitenbeschreibungssprachen) PS (EPS) (Encapsulated) PostScript

    PDF Portable Document Format Adobe

  • 3

    SS 20025Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    ���������������������������������

    ������������������CAD Formate IGES Initial Graphics Exchange Specification STEP Standard for the Exchange of Product Data

    Szenen- und Objektbeschreibungssprachen VRML ����������������������� ISO/IEC RIB Renderman Interface Bytestream � Animation FLT MultiGen Flight OBJ Wavefront Object Alias

    (Wavefront) MAX 3D Studio Max Kinetix

    SS 20026Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    ������� !�"�����������

    Geometrisches Modellieren verschiedene Modellarten und

    -Erzeugungsmethoden Geometrieakquisition:

    Scanner − Übernahme (CAD) Prozedurales Modellieren

    Fraktale, Grammatiken, ... “Symbolisches” Modellieren

    kinematische, dynamische, ... Modelleigenschaften Surface (Volume) Modeling

    Material: Farbe, Reflektion, Textur, ..ggf. O-spezifische Lichtquellen

  • 4

    SS 20027Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    #�������

    1. Geometrisches Modellieren in 3D -Körpermodelle

    2. Polygonale Repräsentationen3. Subdivision Techniken 4. Level of Detail + andere Speedup-Techniken5. Prozedurale Techniken6. Grundsätzliches zu Parametrischen Flächen7. Bézier Kurven und Flächen8. Andere parametrische Beschreibungen9. Übernahme von CAD-Daten und 3D-Scanning

    SS 20028Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Gesamtziel Beschreibung von physikalisch realen Objekten in einem

    Modell, welches mathematisch betrachtet eine Punktmenge bzw. Mengen aus Unterräumen des R3

    � Graphische Modellierung versus geometrische Modellierung

    � Entwicklung Graphisches Modell (2D) Drahtgitter-Modell (3D) Polyhedron-Modell (Polygone) Freiformflächen-Modell

  • 5

    SS 20029Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    SS 200210Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

  • 6

    SS 200211Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Formale Anforderungen an Modell Vollständigkeit

    Integrität Komplexität und geometrische Übereinstimmung

    � Modellklassifizierung nach der Dimension Punktmodell

    Drahtgittermodell (Wire frame) Flächenmodell (Surface)

    Volumenmodell (Solid)

    Gemischtes Modell (Hybrid)

    SS 200212Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Volumenmodell 3D-Erzeugende

    � Flächenmodell 2D-Erzeugende Rand des Volumens

    Oberfläche Manchmal nicht

    ausreichend

    � Linienmodell(Wire Frame)

    1D-Erzeugende Rand einer Fläche Rand des Randes eines

    Volumens

    Nicht ausreichend

  • 7

    SS 200213Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Punktmodell 0D-Erzeugende

    Element einer Linie Element des Randes einer Fläche

    Nicht ausreichend

    Abtasten: Punkte im R3

    Konvexe Hülle

    Versagt bei konkaven Objekten

    SS 200214Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Modellklassifizierung nach mathematischer Beschreibung

    Implizite Darstellung Explizite Darstellung

    Parametrische Darstellung

    � Modellklassifizierung nach Bezug zum „realen oder mentalen“ Modell

    Analytisch exakt Interpolation

    Approximation

    0),,( =]\[I

    ),( \[J] =

    210 UU[[&&&& µλ ++=

  • 8

    SS 200215Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Repräsentations Schemas� Primitve Instancing� Decomposition Models� Constructive Models� Boundary Models� Sweeping

    SS 200216Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    Primitive Instancing Sammlung von vordefinierten Primitiven

    Instantiierung durch beschreibende Parameter Einfachste Art zur Beschreibung von geometrischen

    Objekten

    Nachteil: begrenzte Menge von Primitiven

    Beispiele: (tbrick, 1, h1, h2, w1, w2)

  • 9

    SS 200217Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    $����������%�������&�'�������

    Können auch parametrisch definiert werden, z.B. als: Sweep-Körper um die z-Achse (siehe später) Einfache Kontroll-Parameter:

    Bereiche von z und der Sweep-Winkel Viele elementare Körper: Kegel, Zylinder (Scheibe), Kugel

    (Ellipsoid), Paraboloid, Hyperboloid, Torus,

    [ ] 01

    1,,,

    0222222222

    =

    =+++++++++

    ����

    ��

    ���

    ��

    ���

    �������������������

    SS 200218Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Decomposition ModelsAuch spatial-partioning representation genanntBasiselemente: primitive instancing

    ohne Parametrisierungmit Parametrisierung

    Eine Operation: Glue („Verkleben“)Variationen

    exhaustive enumerationspace subdivisioncell decomposition

  • 10

    SS 200219Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Exhaustive Enumeration� Spatial-occupancy enumeration� Primitive: Block (3D), Rechteck (2D)� Glue-Operation: 3D-array, 2D-array

    -> „Farb- und Sichtbarkeitsdefinition“� 2D: Repräsentations-

    schema im digitalenBildprozess (digitalimage processing)

    7RUXV�UHSUHVHQWHG�E\�VSDWLDO�

    RFFXSDQF\�HQXPHUDWLRQ�

    SS 200220Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Space Subdivision SchemaRaumunterteilungHierarchische Strukturierung

    Octree, Quadtreebinary space (Binärraum)

    Knoten zeigt eine Unterteilung an.

    Blatt (on/off) zeigt an,ob Raumelement zumObjekt gehört

  • 11

    SS 200221Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Quadtree Representation� 2D� Unterteilung eines

    Rechtecks in viergleichgroße Rechtecke,die kongruent zumAusgangsrechteck sind

    SS 200222Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    ���������������������������������

  • 12

    SS 200223Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    � Octree Representation� 3D� Unterteilung des

    „Betrachtungsraumes“in acht Oktanten

    �����������������

    SS 200224Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Binärraum-Unterteilung� Unterteilung in Halbräume bzw. Halbebenen� Unendliche Ausdehnung des

    Betrachtungsraumes

    ��������

    ��������

  • 13

    SS 200225Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Zellendekomposition� Vergleich exhaustive

    enumeration� Basiselemente: Zellen� Anwendungsgebiet:

    z.B. FEM� Nachbarschaftsbe-

    ziehungen in„Knoten“ realisiert

    SS 200226Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Constructive Models� Mächtigere Operationen als „Glue“� Mengentheroetisch ebzw. Boolean Set

    Operationen ∪ Vereinigung (union)

    ∩ Durchschnitt (intersection)\ Differenz (hier A\B)

    � VariationenHalbraum-ModellConstructive Solid Geometry A

    B

  • 14

    SS 200227Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Halbraum-Modell� „Primitive“ sind Halbräume

    – Unterteilung des R3 inzwei Räume

    SS 200228Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Constructive Solid Geometry Primitive sind begrenzte Elemente – aus Halbräumen

    entstanden Für Benutzer einfacher handhabbar Primitive: z.B. Würfel, Zylinder, Kugel Transformationsoperationen – Rotation, Tranlation,

    Skalierung Mengentheoretische Operationen Schema Hierarchische Strukturierung Blatt: Primitiv + Transformierung Knoten: Operation

  • 15

    SS 200229Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    SS 200230Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Boundary Models� Flächenmodell� „verbessertes graphisches Modell“� Ursprung: polyhedrales

    Modell� Boundary Datenstruktur

    Drei Basisobjekttypen:Face (Fläche),Edge (Kante), Vertex (Ecke)

  • 16

    SS 200231Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Modelle� Polygon-based� Vertex-based� Edge-based

    SS 200232Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Notwendige Bedingung: Erfüllen topologischer Kriterien

    � Aufteilung in zwei getrennte Repräsentationen� Abstrakt – konkret� Algebra – Analysis� Topologie - Geometrie

  • 17

    SS 200233Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Solid models� Entsprechung zu Volumenmodell� Invarianztheorem: Euler Charakteristik

    v – e + f = 2(für polyhedrons)

    � Erweiterte Euler-Poincaré-Formel für Flächen mit Löchern v – e + f = 2 (s – h) –1

    s: Schale (shell) -> Körperh: Höhle (hole) -> Körperl: Loch (loop) -> Flächen

    SS 200234Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Konsistenzsicherung

  • 18

    SS 200235Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Two-Manifold (Zwei Mannigfaltigkeit)� Definition: Eine Zwei-Mannigfaltigkeit M ist ein

    topologische Raum, in dem jeder Punkt eine Umgebung (Nachbarschaft) besitzt, die topologisch äquivalent zu einer offenen Scheibe des R2 ist.

    SS 200236Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Ein 3D-Modell kann durch ein 2D-Modell beschriebenwerden

  • 19

    SS 200237Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Non-Manifold� Definition für Two-Manifold versagt

    SS 200238Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Sweeping (1)� Modell: i. a. Volumen- intern Flächen-� Primitive: Profil (Cross Section), Pfad

    (Trajektorie)� Definition: Ein Swept-Objekt beschreibt die

    Punktmenge im R3, die durch Bewegen eines 2D-Profils entlang eines Pfdes überstrichen wird.

  • 20

    SS 200239Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Sweeping (2)� Ausprägungen

    Extrusion (Pfad=Strecke)Translational (Profile ändert Normalenrichtung nicht)Rorational, revolving (Pfad ise ein Kreis,

    Erweiterung: Kreissegment)Allgemein, general (Profil ändert Normalenrichtung)

    � Anwendungen 3D-Objekte aus 2D-Objekten erzeugen 2 1/2D-CAD-Konstruktion

    SS 200240Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

  • 21

    SS 200241Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Allgemein: Methode zur Beschreibung einer Punktmenge des Rn durch eine Punktmenge des Rn-1

    ==> 2D-Sweptobjekt (Profil=Kurve)3D-Sweptobjekt (Profil=Fläche)4D-Sweptobjekt (Profil=Körper)

    SS 200242Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Hybride Modelle Verschiedene Repräsentationen in einem

    übergeordneten Modell Bzgl. Methoden Bzgl. Realisierung

    Theoretischer Vorteil Mächtigere Funktionalitätsmenge Optimale Dualität zwischen Repräsentation und

    Modellierungsmethode

    Praktische Probleme Konvertierung zwischen den Modellen Konsistenzerhaltung: Modifizierung in einer Repräsentation

    müssen in anderen Repräsentationen nachgezogen werden

  • 22

    SS 200243Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    SS 200244Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Interaktives Modellieren (1)� Benutzerfreundlich (High Level Operationen)� Ändern von einzelnen Parametern oder

    Werten� Architektur

    User InterfaceMathematische BibliothekDatenverwaltung (kurz- und langfristig)

  • 23

    SS 200245Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������������

    � Interaktives Modellieren (2)� Weitere Verbesserungen des

    Modellierungsvorgangs durchgraphische Interaktionen

    � Selektion� Neue Interaktionstechniken, z. B., Free-Form-

    Deformation (FFD)� 3D-Eingabegeräte

    a) graphisch-interaktiv (User Interface), b) Abtasten (Datenerfassung)

    (��������������)�������'��*���������

    Parametrisieren und Instanzieren von Objekten: Würfel, Kugel, ... , Quadriken

    Duplizieren, Spiegeln, Facetten unterteilen Direct Point Manipulation: „Verschieben“

    Basis: Polygonales (oder Freiform-) Modell Virtual Sculping: “Modellieren mit Ton”

    Direct Edge / Face Manipulation: Translieren – Rotieren – Skalieren (– Scheren)

    Sweeping Extrusion (Extrudieren, Lofting) einer Fläche entlang eines

    Pfades (z.B. Polyline) Default oft: in Richtung der Normalen Rotation (lathe, revolve, surface oft revolution)

  • 24

    +�&�������������������,-.

    � Beveling: Anphasen “harter” Kanten oder Punkte� Rounding: “Abrunden”� Fillets (wie Bevels, oft durch “sweeping” eines 2D-

    Outlines entlang einer Innenkante)

    SS 200248Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    +�&�������������������,�.

    � Purging (Simplification): Eliminierung “zu kleiner” Polygone, “zu vieler” Eckpunkte

    � Aligning: “Verbinden zweier Flächen”� Fitting: Eliminieren kleiner Zwischenräume� Blending: Erzeugung einer Zwischenfläche beim

    verbinden zweier Flächen

  • 25

    SS 200249Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    ���������

    Wirken auf einen Körper / ausgewählte Teile� Lattices / Clusters

    Externer Rahmen, unterteilte “Bounding Box” Transformationen dieses Rahmens werden auf das Objekt übertragen

    “Modellvorstellung”: Die Objektpunkte sind mit imaginären Federn an die Lattice-Box / den Clustergebunden

    � Gut für die Animation benutzbar!

    SS 200250Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �������������/������0����������'��*��

    Subdivide & bevel scale top down

    Move vertices up scale down vertices extrude faces

  • 26

    SS 200251Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    /������0������� ���'��*��

    Extrude more & scale extrude down scale inner vertices

    Extrude & scale smooth for test

    SS 200252Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    /������0������� ���'��*��

  • 27

    SS 200253Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    /������0������� ���'��*��

    SS 200254Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    +���������)����

    � In fast allen Systemen enthalten; verschiedene Bezeichnungen:� MAX Mesh Smooth� Maya Smoothing� Softimage Rounding

    � Idee ist einfach: Durch fortgesetzte Unterteilung eines polygonalen Modells � B-spline patch (����������)

  • 28

    SS 200255Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    +���������)����

    Man modeliert und animiert in Low-Res Vor dem Rendern � Subdibvisions

    SS 200256Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    '�����

    �������: Grobstruktur bleibt sichtbar erhalten! Besonders sichtbar in animierten Sequenzen

    � Wenn Subdivison dynamisch beim Rendering durchgeführt wird: ��������

  • 29

    SS 200257Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    1���������

    �����+����2)����

    Je weiter ein Objekt von de virtuellen Kamera entfernt ist (vielleicht wird es nur noch auf 5x10 Pixel abgebildet), um so geringer darf auch sein geometrischer Detailreichtum sein.

    Man kann verschiedene Abstraktionsgrade nutzen!

    SS 200258Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    1!��

  • 30

    SS 200259Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    1���������

    Umschalten während des Renderns; Entfernung Objekt – Kamera d:

    0 < d

  • 31

    SS 200261Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    /�&����1!�������+������������

    ����������������������

    Häufigste Methode: �����������

    Subset placement oder optimal placement (z.B. neuen Punkt suchen)

    SS 200262Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    /�&����1!�������+������������

    Bad collapse:

    Kostenfunktion ist aktuelles Forschungsthema

  • 32

    SS 200263Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    #�����&3����1!��

    � Sprunghaftes Umschalten �������� wirkt störend:

    � Alpha Channel: Transparenz verändern� Wenn Subdivision oder Simplification

    genutzt wurde, kann man auch ����� !���"��� nutzen (in Anim & MM)

    � ����: Entfernungshysterese nutzen!

    SS 200264Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    ������������'�������)�����+�����42 ���

    Weniger Punkte � Weniger Transformationen Weniger Normalen Weniger Klippen Weniger Beleuchtungsrechnungen

    Triangle Strip Fig 7.27 7.29

  • 33

    SS 200265Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    ��������5�������'�������6

    ���������� immer planar, immer konvex, keine Selbstdurchdringungen� Normale eindeutig bestimmt

    Nonplanare Vierecke (Polygone) sind oft Ursache für Renderfehler oder unerwartete Effekte

    �����������Manche Modelliermethoden (MetaNurbs oder Metaform) erfordern Vierecke (siehe auch Beispiel)

    � ��

    ����

    �������� ��������!���"��������#��$��������%�������������������

    ���

    ��

    �������&����#���

    �'����()

    SS 200266Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    '����0��

    ����������'��*��

    Pro Unterschiedliche Netzdichte möglich:hohe Polygonzahl nur dort, wo viele geometrische Details vorliegen

    Pro einfach zu verstehen und zu kontrollierenCon Glatte Kurven + Flächen können praktisch nur

    mit sehr viel Aufwand erstellt werden; insbeson-dere polygonale Konturlinien bleiben sichtbar

    Con Kurven sind nicht akkurat (CAD; Karosseriebau)Con Hoher Speicheraufwand Con kein „natürlicher“ Parameter fürs

    Textur-Mapping und die Animation

  • 34

    SS 200267Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    '��&����� )����'��������������

    � Bekanntes Beispiel: Fraktales Terrain Modelingfür Berge, Riffe, ...

    � Kann auch zum Animieren genutzt werden� Geringe Modelierungskosten

    � Andere Techniken:Fourier Synthese (Landschaften)Partikelsysteme (Feuerwerk, Wasserfälle, ...)

    SS 200268Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    ��������)����������

    � Wichtiger Name: Benoit Mandelbrot� Spezielle SubdivisionTechnik: � Jeder Schritt mit einer eigenen sich ständig

    verkleinernden Pertubation� Algorithmus von [Fournier 82]

  • 35

    SS 200269Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    1�+���������)�����+��������

    R: Zufallsvariable zwischen –1 und +1����"���� bestimmt den Grad der Veränderung

    SS 200270Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    '��&����� ����������2)����,'��������������.

    � Bekanntes Beispiel: Fraktales Terrain Modelingfür Berge, Riffe, ...

    � Kann auch zum Animieren genutzt werden� Geringe Modelierungskosten

    � Andere Techniken:Fourier Synthese (Landschaften)Partikelsysteme (Feuerwerk, Wasserfälle, ...)

  • 36

    SS 200271Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    ��������)����������

    � Wichtiger Name: Benoit Mandelbrot� Spezielle SubdivisionTechnik: � Jeder Schritt mit einer eigenen sich ständig

    verkleinernden Pertubation� Algorithmus von [Fournier 82]

    SS 200272Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    1�+���������)�����+��������

    R: Zufallsvariable zwischen –1 und +1����"���� bestimmt den Grad der Veränderung

  • 37

    SS 200273Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    '��������'��*���������

    � Für glatte Flächen benötigt man sehr viele Polygone

    � Datenmengen� ggf. schwer zu

    animieren: Berechnungsaufwand

    � Konturen bleiben trotzdem „#��$��%

    Abb. S.30

    SS 200274Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    #�������'���������� ���%������

    *+!�� ,��%������ )����(in GDV)B-Splines&'(�)

    �����������*���$��)������+��$,����(�,�)������

    -��,���.��

    �����������������,/!!

  • 38

    SS 200275Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    /����3����������

    Anwendungsursprung: Ab ca. 1958 Anwendungen im Automobil-

    Karosseriebau: ��(���()���-�allgemein �.�Auch wenn vieles in der Differentialgeometrie vorab

    entwickelt war.Zwei große Namen:�����*+!�� (Renault): parametrische

    Repräsentation auf der Basis der Bernstein-Polynome: System UNISURF

    ���������� (Citroen) (nur als interne Berichte veröffentlicht)

    SS 200276Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �������������'����� ,-.

    Grundlegende Idee: uraltes Verfahren aus der

    GießereitechnikAn der )�������ist das

    bewegliche ��,$��� noch unveränderlich; modellhaft könnte dieses sich während der Bewegung verändern

    � Biparametrisches Patch

  • 39

    SS 200277Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �������������'����� ,�.

    a) Gegeben: drei Randkurven AB, BC, CD (hier als kubische Bezier-Kurven mit ihren Kontrollpolygonen)

    b) Die Kurve BC wird entlang BA und CD verschoben. Die Form kann sich dabei ändern!

    c) Während des Verschiebens verändern sich die Punkte p1und p2 und erzeugen neue Linien EFGH und IJKL

    d) Es entstehen die 16 Kontrollpunkte (A, B, ..., P) und damit 9 Vierecke, die ein bikubisches parametrischesBezier-Patch definieren.

    SS 200278Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����%�&�����&�

    '���������� 7�������%��

    Eine parametrische Kurve im 3D ist durch drei univariate Funktionen definiert:

    Entsprechendes gilt für eine parametrische Fläche

    Ein solches Flächenelement nennt man ����.

    10

    ))(),(),(()

    ≤≤=

    �,�$

    �0�1�2��/

    1010

    )),(),,(),,((),

    ≤≤≤≤=

    .����,�$

    .�0.�1.�2.��/

  • 40

    SS 200279Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    83������� (���������%������

    ��7��������%���

    3��6

    Formen der Darstellung von Kurven oder Flächen:� 01�!��� ��1�!��� ���������

    Kurze Diskussion am Beispiel der Kurven:

    SS 200280Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    /9���&�����������

    � y = f(x)

    � Bsp.:

    � Probleme: Für ein x darf es nur einen y Wert geben

    (Probleme z.B. ist ein Kreis nicht geschlossen darstellbar)

    Beschreibung nicht invariant gegenüber Rotationen Keine Kurven mit (echt) vertikalen Tangenten möglich

    (impliziert unendliche Steigung)

    ��� −= 3

  • 41

    SS 200281Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    :����&�����������

    � f(x,y) = 0

    � Bsp.:

    � Probleme:� Gleichung kann mehr Lösungen als gewollt

    haben, was zur Notwendigkeit von Randbedingungen führt

    � Richtung der Tangente ist schwer zu ermitteln

    02 223 =−+− ����

    SS 200282Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    '�������������������

    � Q(t) = ( x(t), y(t) )� Bsp.:

    � Vorteile: Keine Mehrdeutigkeiten Geometrische Steigungen (potentiell unendlich)

    werden durch Tangentenvektoren (niemals unendlich) ersetzt

    Invarianz gegenüber Rotationen

    � Wir verwenden daher im folgenden nur die 1�������������

    ���

    ),()( 32 ����� −=

  • 42

    SS 200283Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    '����������7��������7����������

    Parametrische Kurven sind i.d.R. (ganzrationale) Polynome gebrochen rationale Polynome

    n-ten Grades (n: höchster auftretender Exponent), z.B.

    In der CG werden ganz überwiegend kubische (also k=3) Repräsentationen genutzt:

    N

    N�������� ++++= ...)( 2210/

    SS 200284Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    )*��������������7���

    ,����%��.

    � Exakte Darstellung Jeder Punkt ist durch eine Formel definiert Problem: Formel ist meist nicht bekannt oder zu

    komplex

    � Interpolatorische Darstellung Kurve ist durch Stützstellenbedingungen beschrieben Kurve ist an den Stützstellen determiniert

    � Approximative Darstellung Kurve ist durch Stützstellenbedingungen beschrieben Kurve ist an den Stützstellen nicht determiniert

  • 43

    SS 200285Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    :���������

    � Interpolation mit Monomen Gesucht sind die Koeffizienten eines Polynoms P(t)

    derart, daß P(ti) = Pi für alle Stützpunkte Pi gilt

    Für n+1 paarweise verschiedene Stützpunkte gibt es genau ein Polynom vom Grad n, das die obige Bedingung erfüllt

    Nachteil: Berechnung der Koeffizienten ist aufwendig

    Nachteil: Änderung eines Stützpunktes bedingt Neuberechnung aller Koeffizienten

    SS 200286Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    ���������:���������

    � Interpolation mit Newton-Polynomen

    Rekursive Berechnung der Koeffizienten kj mittels der dividierten Differenzen

    Vorteil: Neu hinzugefügter Punkt bedeutet nur eine weitere Stufe in dem Differenzschema

    )()()()( 110 −−⋅⋅−⋅−= LL �������� �

    ∑=

    ⋅=Q

    M

    MM�����

    0

    )()(

  • 44

    SS 200287Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    :���������

    � Eine Reihe weiterer Interpolationsschemata sind üblich (z.B. Lagrange Polynome, TschebyscheffPolynome oder rationale Funktionen als Basisfunktionen)

    � Unabhängig von der Methode hat Interpolation immer das Problem der 2�!�

    ����, insbesondere bei hohem Polynomgrad n

    � Interpolation liefert schlechte Qualität in praktischen Anwendungen (Kurven sind nicht „glatt“ genug)

    SS 200288Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    !�&����������������

    :���������

    � Beispiel:

    Interpolationspolynom

    “Erwarteter” Verlauf

  • 45

    SS 200289Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����9������

    Ziel: Vermeidung von Oszillationsproblemen

    Abschwächung der geometrischen Bedingungen: Nicht alle Stützpunkte liegen notwendigerweise auf der Kurve, also nicht alle Punkte werden interpoliert

    Einführung anderer Bedingungen als Stützpunkte (z.B. Betrag und Richtung von Tangentenvektoren)

    Problem: Aussehen der Kurve ist allgemein aus den Randbedingungen schwieriger vorhersagbar, aber spezielle Polynome haben interessante Eigenschaften

    SS 200290Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����9���������'��*���������������

    �#$�3��$������

    ����������4��#$��,�$

    ��

    L

    L

    :

    :)(

    )((u)k

    0i

    L

    L

    1

    1/ ∑=

    =

  • 46

    SS 200291Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����9���������'��*��

    Grad n = 1:Polygonzug, unstetige Steigungen an den Eckpunkten

    Grad n = 2:In 3D können nur planare Kurven erhalten werden (d.h. Kurve liegt immer in einer Ebene)

    3�����4���56�����7�8Die vier Koeffizienten können z.B. durch Startpunkt, Endpunkt, Tangente am Startpunkt, Tangente am Endpunkt gegeben werden

    Grad n > 3:Rechenaufwendig, nur in speziellen Anwendungen benutzt

    ∑=

    =k

    0i

    )((u) ��LL

    1/1i Kontrollpunktebi(u) Basisfunktionen

    Polynome vom Grad n

    SS 200292Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����9�����������9������3��

    Der dritte Faktor heißt 3�����%�����3, die pi sind geometrische Nebenbedingungen (z.B. Kontrollpunkte oder definieren Tangentenvektoren, etc.)

    Das Produkt aus U und M ergibt die *

    �����(��������(diese gewichten die den Geometrievektor (die geometrischen Nebenbedingungen pi)

    ⋅⋅==

    4

    3

    2

    1

    23 1] u u [u z(u)] y(u)[x(u)(u)

    �/

    �����%����� *�������0 3�����%����k=3 � 4x4 (Kontrollpunkte)

    *���(�������������*

    ������ ��������

  • 47

    SS 200293Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����%�&�����&����������

    ����������� ��%��

    Ein Punkt Q = (x,y,z) der Fläche im kartesischen Raum ist durch (u,v) im Parameterraum bestimmt.

    Mann nennt solche Flächen auch "����()���.Komplizierte Flächen werden durch eine Menge von solchen

    Flächenelemente (Patches) zusammengesetzt.

    �#$�3��$�������,�$

    .����.�

    ML

    ML

    L M

    LM

    16:

    )()(),(

    ,

    3

    0

    3

    0∑∑= =

    =/

    [ ] [ ]

    =

    ==

    =

    3330

    0300

    23123 11

    ),(

    ��

    ��

    +.++..++�+��

    .�

    ���

    3

    �9

    �9$3�/7

    7

    zenBasismatri

    :�$-

    SS 200294Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    ���3������

    ���0�2!�"��;���2)����

    a) Wireframe Darstellung für Linien konstanten u und v.Ein Patch (von 32) ist schattiert.

    b) Darstellung der Patch-Kantenc) Wireframe der Kontrollpunkte.

  • 48

    SS 200295Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    (������/��������,-.,7��9

  • 49

    SS 200297Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    (������/��������,�.7������%�

    = Glattheit (�,��$"����+�5��$����$� Besonders wichtig beim Anfügen von Kurven oder

    Flächenstücken

    Wir unterscheiden: ��������� ,��������)�

    3���������,��������)�Q

    Q

    Q

    Q

    Q

    �$$6�

    �$$6�

    $3��$����$75"�����,�$���

    )()(

    : 21 =

    00

    21

    1;n ,0 mit

    )()(

    :

    �$$6�

    �$$6�

    $3��$����$7"����,�$���5�Q

    Q

    Q

    Q

    Q

    =≥>

    = α

    SS 200298Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �=&�� 7���

    Eine Bézier Kurve ist gegeben durch

    enoeffizientBinominalkdiesind)!(!

    !

    )1()(

    )((u)

    ,

    n

    0i,

    ����

    ,�$

    ����

    ��

    L

    Q

    LQL

    L

    Q

    QL

    QL

    −=

    −=

    =

    =∑ L1/

    Die Bi,n nennt man Bernstein-Polynome

  • 50

    SS 200299Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    7�������=&�� 7���

    >�

    33,3

    23,2

    23,1

    33,0

    3

    0i3,

    )(

    )1(3)(

    )1(3)(

    )1()(

    )((u)

    ���

    ����

    ����

    ���

    ,�$��L

    =

    −=

    −=

    −=

    = ∑=

    L1/

    Bezier Basisfunktionen

    •Beobachtungen: p0 hat dominierenden Einfluss für u < 0,1•Mit wachsendem u haben nimmt der Einfluss der andere Kontrollpunkte zu

    •Mann nennt die Basis Funktionen auch �����������5$����

    SS 2002100Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    ���������

    7�������=&�� 7���

    Eine erste interessante Eigenschaft:Steigung der Kurve in �1 ist gegeben durch den Vektor �1-�2Entsprechendes gilt für �3, �4

  • 51

    SS 2002101Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    /���������������������

    �0����"��

    Seien p0, p1, ..., pn die Kontrollpunkte einer Bezier-Kurve. Wir definieren:,

    5�81/5�8

    11

    111

    Q

    �=

    =−=

    =

    +−= −+−

    ���5"���$�,,$3��.����

    ��46��#$���8�������

    ���

    ��

    ,�$

    �����

    LL

    U

    L

    U

    L

    U

    L

    )(

    ,...,0

    ,...,1

    )()()1()(

    0

    11

    1

    001

    )(30 �9=1

    2112

    01 121

    111

    101

    031

    021

    011

    SS 2002102Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    ��7�������������&��

    ����0����"��

    001

    301

    2112

    01 121

    111

    101

    031

    021

    011

    ligonKontrollpo Das :0L

    1

    0,7

    0,7

    0,7

    0,7

    0,70,7

    Iteration erste Die :1L

    1

    Iteration zweite Die :2L

    1

    0,7t tKurvenpunk Der

    Iteration dritte Die :30=

    1

    Für alle 0

  • 52

    SS 2002103Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    /�3���������?�����������9?���������&��7���

    −−

    −−

    ⋅===

    4

    3

    2

    1

    23

    0001

    0033

    0363

    1331

    1] u u [u z(u)] y(u)[x(u)(u)

    1

    1

    1

    1

    �9�/&%

    Multipliziert man die Basismatrix �B mit dem Parametervektor 9 so errechnen sich die Basisfunktionen ������������5$���� :

    %9�=),,,( 3,33,23,13,0 ����

    SS 2002104Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����&�����=&��27���

    Diese Ableitungen sind also die Tangentenvektoren an den Endpunkten der Kurve:

    1. Bezier: Interpoliert durch die Endpunkte

    2. Zwei Weitere Kontrollpunkte bestimmen die Tangenten

    )(3)1()()1(

    )(3)0()()0(

    233

    1

    3

    1111

    1111����

    −= →−=

    −= →−=

    •=

    •=

    9���

    �9

    9���

    �9

    Q

    QQ

    Q

  • 53

    SS 2002105Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    ���������=&�� 7���

    Zwei Bézier-Kurven Q und R mit den Kontrollpunkten qi und ri

    C0 Kontinuität: q3 = r0G1 Kontinuität

    (Geometrische Kontinuität): Tangentenrichtungen gleich

    C1 Kontinuität(Parametrische Kontinuität)

    ���(

    ���9 )0()3( =

    SS 2002106Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    /�3�����&���=&����%��

    ��5$������������

    .���

    .���.�

    ,�$

    .�

    QMQL

    QM

    N

    L

    N

    M

    QLLM

    oder

    ionenBasisfunktBéziersind)(),(

    )()(),(

    nkteKontrollpu16derMatrix:

    nzvektorenZeilenpoteundReihen:,

    xBasismatriBézier:

    ),(

    ,,

    ,0 0

    ,∑∑= =

    =

    =

    1/

    �9

    ���9�/

    &

    %

    7

    %&%

    Beachte: Die Randkurven eines BézierPatches sind Bézier Kurven

  • 54

    SS 2002107Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    8��������

    ����%��

    3,...,0

    ),0(),1(

    tKontinuitäC

    03

    0

    ==⇔=

    ��:

    ..

    LL

    �/

    C1 Kontinuität wesentlich schwieriger!

    SS 2002108Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    0- 7������%����&��2��%��

    Bedingung ist sehr einschränkend.

    Freiheitsgrade reduzieren sich stark.

    Probleme beim Deformieren solcher Flächen; es entstehen leicht Stufen.

    (ggf. lockern der Kontinuitäts-bedingungen möglich)

    +∈=

    −=−

    IR;3,...,0

    )( 0123#�

    ��#::LLLL

  • 55

    SS 2002109Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    8�������������

    /����������

    �=&�� 7�������%�� Der Polynomgrad eines Kurvensegmentes ist um Eins

    kleiner als die Anzahl der Punkte des Kontrollpolygons Der erste und letzte Punkt des Kontrollpolygons werden

    interpoliert Der Tangentenvektor am Anfang und Ende der Kurve

    haben die gleiche Richtung wie die erste resp. letzte Kante des Kontrollpolygons

    Die Kurve verläuft innerhalb der konvexen Hülle des Kontrollpolygons

    Die Kurve ist invariant gegenüber affinen Transformationen

    SS 2002110Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    8�����������

    �=&�� 7�������%��

    Zwei entscheidende Nachteile beschränken die Flexibilität: Feste Kopplung zwischen Polygongrad und der Anzahl

    der Kontrollpunkte Änderungen der Kontrollpunkte wirken innerhalb des

    Bezier-Spans (des Patches) global Historisch bedeutende Repräsentation Bézier Kurven noch oft genutzt, insbesondere in 2D

    Anwendungen: Kontrolle der Endpunkte und der Tangenten

    Bézier Flächen durch Verlust der Freiheitsgrade beim Modellieren beschränkt einsetzbar

    Häufig als Render-Primitiv genutzt.

  • 56

    SS 2002111Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    8������������2+����

    Die einschränkende Inflexibilität der Bézier-Kurven werden überwunden Feste Kopplung zwischen Polygongrad und der Anzahl

    der Kontrollpunkte Änderungen der Kontrollpunkte wirken innerhalb des

    Bezier-Spans (des Patches) global C2 Kontinuität per Definition Es gibt vielfältige „handles“ die die Form der

    Basisfunktionen und damit die Form der entstehenden Kurve beeinflussen: sehr wichtig ��������(����*:'1���

    .��# Kegelschnitte lassen sich allgemein nicht durch B-Splines repräsentieren

    SS 2002112Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    ?;��+?�;�������������2+����

    � Idee: Benutzung von rationalen Formen� Dazu: Definition von Kurven Kontrollpunkte in 4D

    homogenen Koordinaten �polynomiale Funktionen in 4D RaumRückprojektion in den 3D

    � Konsequenz: Kurve wird durch gebrochen-rationale Funktionen definiert (Division durch die homogene Koordinate)

  • 57

    SS 2002113Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �������?;��+

    +

    =

    +

    =

    +

    =

    =

    =

    1

    1,

    1

    1,

    1

    1,

    )(

    )()(

    )()(

    �#�

    �#��

    �#�

    "

    $&"

    $&"�$6

    $&�$6

    L

    L

    L

    Ein weiterer Kontrollhandlean jedem Kontrollpunkt hi

    SS 2002114Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    5�������?;��+

    � Invarianz gegenüber Rotation, Skalierung, Translation ����1��1���%������"���(������� (d.h. nur die Kontroll-punkte müssen transformiert werden und nicht jeder Punkt der Kurve)

    � NURBS können Kegelschnitte exakt beschreiben

  • 58

    SS 2002115Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    ���������3���7���

    � Es gibt eine große Spannbreite weiterer Kurven-definitionen mit jeweils spezifischen Eigenschaften β-Splines Catmull-Rom Splines ...

    � Es gibt keine „beste“ Kurvenrepräsentation, diese muß anwendungsabhängig gewählt werden (heute werden sehr oft NURBS verwendet)

    SS 2002116Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    7������&3����

    ����������%������

    Eine der großen Vorteile der Matrixdarstellung ist, daß man einfach ableiten kann, wie sich verschiedene Repräsentationen ineinander überführen lassen:

    3���: Der Satz �j der Kontrollpunkte in der Repräsentation �j. Gesucht ist die gleiche Kurve in der Repräsentation �i, also die Kontrollpunkte �i.

    MMLL

    MMLL

    MMLL

    ����

    ����

    �9��9�

    1−=

    =

    =

  • 59

    SS 2002117Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �����������%��

    � Erweiterung von Kurven auf Flächen: Kurven beschreiben Schnitte von Flächen

    � Freiformflächen (Erweiterung der allgemeinen Darstellung):

    5�-%8�4�"5�8���35%8�4�"5�8���3��" '5%8"

    SS 2002118Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    ����������������������

    �����������

    ������������ ������

    �����5������8�: direkte Manipulation der Eckpunkte

    *+!��# Die Kurve geht durch die Kontrollpunkte; zusätlich Tangenten

  • 60

    SS 2002119Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �������������

    *:'1��: ggf. weit entfernt liegende Kontrollpunkte – auch außerhalb des Patches

    $9�*�#�Zusätzliche Gewichte an den Kontrollpunkten, zur Einstellung der Steigungen

    SS 2002120Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    /����������� !������

    ;0���� : Sweeping eines Profiles (Kurve) entlang einer Strecke oder eines Pfades (Kurve)

    ���

  • 61

    SS 2002121Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    �������

    '���� ��?;��� !������

    '������� 59:�(�������:�(�8Gleiche Möglichkeiten wie Lofting

    ��(���� : Extrude mit versciedenen Profilen

    SS 2002122Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    /�3����'����!������

    *�������= 3 oder 4 Kurven definieren den Rand eines Patches

    *��� = Sweeping eines Profiles entlang zweier Schienen

  • 62

    SS 2002123Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    +�&���7����������

    ���?;���

    ,��%���(����2��()���:durch Projektion oder das direkte Zeichnen auf der Oberfläche

    "���� : erlauben das Ausschneiden von Teilen aus der Oberfläche

    SS 2002124Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    ����������������

    ?;��+0��������

  • 63

    SS 2002125Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    +����0����������?;��+

    SS 2002126Graphische Datenverarbeitung13. Geometrie-Repräsentationenl© Prof. Dr.-Ing. Detlef Krömker

    +����0������� ���?;��+

  • 64

    #�������0��2���

    � sehr oft benutzt:DXF (Drawing Interchange Format), AutodeskHauptproblem: fehlende Topologieinformation

    � andere CAD-Formate: IGES VDAFS (VDA-Flächenschnittstelle) STEP

    � Haben sehr schnell an Bedeutung gewonnen, Zukunft unsicher VRML 1.0 (Virtual Reality Modeling Language)VRML 2.0 (August 1996, ISO/IEC SC24, CD)

  • 65

    ��2+��

    ��

    � Prinzip: Tiefenmessung: Punkt, Gitter, Kreise, ... cross sections, slices, outlines: “Höhenlinien”

    geschlossene 2D-Kurven; gleiche Anzahl Punkte

    Extrusion erzeugt 3D-Objekt: Triangle-Mesh

    � Probleme: i.d.R. Abtastfehler bei inhomogener Oberfläche

    des Originals “verdeckte” Geometrieteile sehr viele Polygone --> Nachbearbeitung

    � Beispiel: Cyberware Scanner

    5�3���)����'������������

    � Verfahren zur Objektrekonstruktionbekannt und entwickelt zur Bauaufnahmeauch Luftbild/Satellitenbildauswertung

    � Verfahren sehr vielfältig: Theodolitgestützte Verfahren Industriemeßverfahren (Einzelpunkte) Photographische Verfahren, z.B.

    Shape from Shading Shape from Texture Stereoskopische Verfahren