Computergrafik – Inhalt Achtung! Kapitel ist relevant für CG-2! §0 Historie, Überblick, Beispiele §1 Begriffe und Grundlagen §2 Objekttransformationen §3 Objektrepräsentation und -Modellierung §4 Sichttransformationen §5 Kurven und Flächen §6 Rendering und Visibilität §7 Mapping-Techniken
Literatur G. Farin: Curves and Surfaces for CAGD, Academic Press, 1992 J. Hoschek, D. Lasser: Grundlagen der geometrischen Datenverarbeitung, Teubner, 1992 H. Prautzsch, W. Boehm, M. Paluszny: Bézier and B-Spline Techniques, Springer, 2002
Einordnung
5.1.1 Motivation
5.1.1 Motivation
5.1.2 Interpolationsproblem Gegeben: n+1 Paare reeller Zahlen (ti, fi) für i = 0,…,n mit paarweise disjunkten Stützstellen ti,ti ≠ tj für i ≠ j Gesucht: Ein Polynom p vom Grad ≤ n, (1) mit reellen Koeffizienten cj heißt Interpolationspolynom zu (ti, fi), wenn (2)
5.1.2 Interpolationsproblem Fragestellungen Existenz und Eindeutigkeit einer Lösung Algorithmische Lösungsverfahren (Effizienz) Qualität der Lösung(en): Entspricht die Lösung den Erwartungen/Anforderungen des Anwenders? Satz 1: Die Interpolationsaufgabe hat eine eindeutig bestimmte Lösung.
5.1.2 Interpolationsproblem Beweis: Einsetzen von (1) in (2) liefert (3) oder kurz Ac = f. A heißt Vandermonde-Matrix mit Da ti ≠ tj für i ≠ j, ist A regulär und die Behauptung folgt. □
5.1.3 Lagrange-Interpolation Die Lösung eines Gleichungssystems hat im Allgemeinen Komplexität O(n³). Gesucht ist eine optimale polynomiale Basis {Li(t)}i=0,…,n, sodass (4) Dadurch wird die Matrix des Systems (3) zur Einheitsmatrix, d.h. ci = fi, i = 0,…,n, und das Interpolationspolynom hat die Darstellung: (5)
5.1.3 Lagrange-Interpolation Satz 2: Die Lagrange-Polynome (6) erfüllen die Eigenschaft (4): Li(tj) = δij Beweis: Und für □
5.1.3 Lagrange-Interpolation Lagrange-Polynome
5.1.3 Lagrange-Interpolation Beispiele n = 1, d.h. lineare Interpolation Interpolationsstellen: (x0,y0),(x1,y1) (Stützstellen in x) Von einer reellen Funktion f seien die folgenden Wertepaare bekannt: i xi yi 1 0.5 2 0.2
5.1.3 Lagrange-Interpolation Fortsetzung
5.1.4 Newton-Interpolation Nachteil der Lagrange-Darstellung: Neuberechnung aller Basisfunktionen bei Hinzunahme neuer Stützstellen Nicht dynamisch Newton-Darstellung: Hinzunahme neuer Stützstellen in beliebiger Reihenfolge möglich. Neuberechnung ist nicht notwendig. Als Basis dient (7) mit der Eigenschaft Ni(tj) = 0 für i > j und Ni(tj) ≠ 0 sonst
5.1.4 Newton-Interpolation Fortsetzung Die Koeffizienten ai für (8) werden rekursiv aus den k-ten dividierten Differenzen f[tj,…,tj+k] ermittelt: (9)
5.1.4 Newton-Interpolation Daraus ergibt sich folgendes Schema: k = 1 2 3
5.1.4 Newton-Interpolation Die Koeffizienten ai können auch analog zur (3) über ein lineares Gleichungssystem bestimmt werden. Da die Matrix hier eine untere Dreiecksmatrix ist, entspricht Vorwärtseinsetzen dem Schema der dividierten Differenzen. Beispiel: (ti,fi) ∈ {(0,1); (2,3); (4,5)} ti fi 1 = a0 1 = a1 2 3 0 = a2 1 4 5
5.1.4 Newton-Interpolation Achtung: Das Interpolationspolynom zu n+1 Interpolations- stellen ist nicht unbedingt n-ten Grades, es ist höchstens n-ten Grades. Bemerkungen: Die Reihenfolge der Stützstellen bei der Newton- Interpolation ist unerheblich. Interpoliert man eine auf dem Intervall [a,b] stetige Funktion f in n Punkten, so konvergiert die entstehende Folge von Interpolationspolynomen auf [a,b] für n→∞ nicht notwendig (glm.) gegen f. Durch mehr Punkte erreicht man nicht unbedingt höhere Qualität!
5.1.4 Newton-Interpolation Runge-Funktion: Interpolant vom Grad 5 Interpolant vom Grad 7
5.1.4 Newton-Interpolation Runge-Funktion: Interpolant vom Grad 11 Interpolant vom Grad 17
5.1.5 Nachteile der Polynominterpolation Nachteile im Hinblick auf CAD/CAM-Technologie Jeder Interpolationspunkt hat globalen Einfluss auf die Kurve. Basisfunktionen mit lokalem Träger Auch die Parametrisierung (Wahl der Stützstellen) hat einen entscheidenden Einfluss auf die Qualität der Kurve. Interpolationspolynome mit einem Grad n ≥ 5 weisen oft sehr welliges Verhalten auf. Zusatzbedingungen wie „minimale Biegeenergie“