Parametrische Kurven und Flรคchen
Darstellung
- Explizite Darstellung einer Kurve im
- Implizite Darstellung einer Kurve im als Lรถsungsmenge einer Funktion
- Parametrische Darstellung einer Kurve durch parametrisierte Funktionen fรผr die (kartesischen) Koordinaten der Kurvenpunkte
- in der Praxis zumeist verwendet, da Biegungs-, Stetigkeits- und Formungseigenschaften effizient bereitgestellt werden
Parametrische Kurvendarstellung
Parametrisierte Kurve: Sein ein reelwertiges Intervall. Eine parametrisierte Kurve wird dargestellt als differenzierbare Abbildung der Form
mit den komponentenweise definierten Funktionen
Kurve: Das Bild heiรt Kurve
Regulรคre Kurve: Eine Kurve heiรt regulรคr, falls sie stetig differenzierbar ist, d.h.
fรผr alle . Jede regulรคre Kurve hat damit in jedem Kurvenpunkt einen Tangentenvektor
Kurvenlรคnge: Sei ein Interval und die Kurve darauf regulรคr. Die Lรคnge von bezรผglich ist gegeben durch:
Beispiele von Kurven
Geraden: Eine gerade durch den Punkt mit Richtung wird parametrisiert dargestellt durch
Es gilt fรผr alle , d.h. die Kurve ist regulรคr

Kreise: Die implizite Darstellung einer Kreislinie mit Mittelpunkt und Radius ist gegeben durch . Sie wird parametrisiert durch
Fรผr die erste Ableitung gilt:

Schraubenlinie: Eine Schraubenlinie im Dreidimensionalen lรคsst sich parametrisch darstellen als:
wobei

Polynomiale Kurven
Eine polynomiale Kurve ist eine parametrische Kurvendarstellung , bei der die einzelnen komponentenweise definierten Funktionen Polynome -ten Grades in sind, d.h.
lรคsst sich damit definieren als
mit den als Kontroll- oder Stรผtzpunkte (bzw. Vektoren), รผber die die Gestalt und der Verlauf der Kurve spezifiziert wird
- in der Praxis meistens quadratische oder kubische Polynome ( oder )
- Tangentialvektor | Gerade an einer Stelle mit gleicher Richtung wie Tangentialvektor wird auch Kurventangente genannt
- eine stรผckweise zusammengesetzte, polynomiale Kurve wird durch eine Reihe von polynomialen Kurven (Kurvensegmente) definiert, d.h.
Kontinuitรคt
Geometrische Kontinuitรคt:
- und sind an ihrer Nahtstelle -geometrisch kontinuierlich (auch -stetig), falls
- โsie stimmen in ihrer Position รผbereinโ
- und sind an ihrer Nahtstelle -geometrisch kontinuierlich, falls
- d. h. ihre Tangentialvektoren besitzen dieselbe Richtung, aber evtl. unterschiedliche Lรคngen
- Allgemein: und sind an ihrer Nahtstelle -geometrisch kontinuierlich, falls sie richtungsmรคssig (Tangentialvektor) in ihrer -ten Ableitung รผbereinstimmen
- exakte Gleichheit fรผr -parametrisch kontinuierlich
Parametrische Kontinuitรคt:
- und sind an ihrer Nahtstelle -parametrisch kontinuierlich, falls
- Allgemein: und sind an ihrer Nahtstelle -parametrisch kontinuierlich, falls
- d. h. die i-ten Ableitungen stimmen an der Nahtstelle รผberein

Bรฉzier-Kurven
- Grad : Stรผtzpunkte
- ist -tes Bernstein-Polynom mit Grad
- Gewichtung:
- Bรฉzier-Kurve:
Bernstein-Polynome
Seien und natรผrliche Zahlen und . Das -te Bernstein-Polynom vom Grad ist definiert als
Eigenschaften
Bernstein-Polynome:
- Positivitรคt: fรผr gilt
- Zerlegung der Eins:
- Konvexkombination der : Positivitรคt und Zerlegung der Eins Jeder Kurvenpunkt ist Element der konvexen Hรผlle seiner Stรผtzpunkte
- Extrema: besitzt genau ein absolutes Maximum an der Stelle
- Symmetrie:
- Ableitung:
- Rekursion: mit fรผr oder sowie
Berstein-Polynome: Eigenschaft und bis durchgehen, Konvexkombination (KLAUSURRELEVANT)
Bรฉzier-Kurven:
- Die Punkte und werden durch die Kurve interpoliert und tatsรคchlich erreicht
- Die Punkte bis werden approximiert, d.h. die Kurve verlรคuft in der Nรคhe
- Die Bรฉzier-Kurve befindet sich immer vollstรคndig in der konvexen Hรผlle der Menge der Punkte
- Der Linienzug wird als charakteristisches Polygon der Bรฉzier-Kurve bezeichnet
- Die Tangente im Anfangspunkt ist gegeben durch den Vektor
- Die Tangente im Endpunkt ist gegeben durch den Vektor
- Eine Bรฉzier-Kurve durch Punkte ist eine polynomiale Kurve vom Grad
- Jeder einzelne Punkt hat einen โglobalenโ Einfluss, d.h. Einfluss auf den gesamten Kurvenverlauf
- mehr Stรผtzstellen heiรt nicht mehr Kontrolle, stattdessen werden komplexe Kurven aus Teilkurven mit niedrigem Grad zusammengesetzt

Zusammengesetzte Bรฉzier-Kurven
- Verbindung der Kurvensegmente รผber einen gemeinsamen End- bzw. Anfangspunkt
- -kontinuierlich, wenn
- gleiche Richtung vor und hinter gemeinsamem Verbindungspunkt
- -kontinuierlich, wenn
- zusรคtzlich gleiche Lรคnge vor und hinter gemeinsamem Verbindungspunkt
Rekursive Konstruktion eines Bรฉzier-Kurvenpunktes (De-Casteljau-Algorithmus)
Fรผr die Bรฉzier-Kurve zu den Punkten gilt:
Dabei wird also die Stรผtzpunkte-Menge also in zwei Mengen mit Grรถรe geteilt. Dies kann rekursiv wiederholt werden
Algorithmus
Wir definieren . Fรผr und berechnen wir den Punkt durch
Der gesuchte Punkt ist gegeben durch
- Rekursives Verfahren, das die jeweilige Kurve in zwei Unterkurven unterteilt und durch Interpolation die Kurvenpunkte berechnet
- Zeitaufwand:
- Numerisch stabil, da stets nur Konvexkombination berechnetet Daten erzeugt werden
- Effizienter, numerisch stabiler Algorithmus zur Berechnung von Kurvenpunkte
- Verwendung: z.B. Definition von Schriftzeichen (Glyphs) fรผr Zeichensรคtze (Fonts)


Kubische Hermitisches Splines
- stรผckweise definierte, kubische polynomial definierte Kurve , die durch eine Menge von Kontrollpunkten definiert ist
- Die Kurve interpoliert die Stรผtzpunkte, sie werden also allesamt einmal erreicht (
- Kurvensegmente sind abschnittsweise zwischen den Stรผtzpunkten definiert konstanter Grad, unabhรคngig von
- Tangente an Stรผtzpunkt entspricht Richtungsvektor zwischen benachbarten Stรผtzpunkten
- im Allgemeinen -kontinuierlich, aber nicht -kontinuierlich
- keine Konvexe-Hรผlle-Eigenschaft
sind Tangentenvektoren, anstatt Punkten

B-Spline
- Splines reprรคsentieren kontinuierliche Kurven mit beliebig vielen Kontrollpunkten, die jeweils nur lokalen Einfluss auf den Kurvenverlauf haben
- Splines setzen sich aus stรผckweise zusammengesetzten, polynomial definierten Kurvensegmenten zusammen, die jedoch nicht einzeln spezifiziert werden, sondern sich aus den Kontrollpunkten und Parametervektoren ergeben
- frei wรคhlbarer Polynomgrad
- Zusรคtzlich zu den Kontrollpunkten wird ein Knotenvektor spezifiziert, der die Gewichte der Kontrollpunkte ausdrรผckt
- Uniforme Splines besitzen im gesamten Kurvenverlauf gleiche Stetigkeitseigenschaften. Bei einem Grad sind die Nahtstellen der Kurvensegmente -kontinuierlich (z.B. fรผr kubische B-Splines gilt -Kontinuitรคt)
Definition
- Kontrollpunkte: mit
- konstanter Polynomgrad
- Knotenvektor , eine wachsende Folge mit Werten
- fรผr jedes ergibt sich als gewichtete Summe der Punkte
Die B-Spline-Kurve ist definiert wie folgt
mit
mit den B-Spline-Basisfunktionen (nicht Berstein-Polynome!)
B-Spline-Basisfunktionen
- Rekursive Definition auf Basis von Polynomen niedrigeren Grades
- Einflussbereiche der Punkte werden รผber die Knotenwerte in definiert


Einflussbereich: Wird durch den Polynomgrad bestimmt
- der Einflussbereich von ergibt sich aus der Vereinigung der Einflussbereiche von und
- Der Einflussbereich ist damit
- Lokaler Kontrollpunkteinfluss: Einflussbereich eines Kontrollpunktes ergibt sich aus dem Wirkungsbereich der Gewichtungsfunktion
- Da die Gewichtungsfunktionen im Allgemeinen nur in einem Teilabschnitt sind, hat nur lokalen Einfluss
- Lokaler Kontrollpunkteinfluss ist die Voraussetzung fรผr die flexible Gestaltung komplexer Kurven


Kontrollpunktgewichtung
- Kurvenpunkte ergeben sich als Summe gewichteter Kontrollpunkte mit lokalem Einfluss:
- Aufbau des Knotenvektors entscheidet maรgeblich รผber Kontrollpunkteeinfluss
- Knotenmultiplizitรคt: -faches Gleichsetzen eines Knotenwertes (Knotenmultiplizitรคt ) bewirkt, dass gezielt die Stetigkeit zwischen zwei Kurvensegmenten reduziert wird

Typen von B-Splines
- Geschlossene B-Splines: Anfangskontrollpunkte werden am Ende der Kontrollpunktfolge wiederholt | z.B.
- Uniforme B-Splines: Knotenwerte sind รคquidistant | konstant fรผr innere Knoten des Knotenvektors
- Nichtuniforme B-Splines: Knotenwerte sind nicht รคquidistant
- Nichtrationale B-Splines: und sind Polynome in
- Rationale B-Splines: und sind Polynombrรผche in mit als Polynome gleichen Grades wie und
- Erweiterung der B-Splines mit Gewichtung der Kontrollpunkte
- NURBS: Nicht-uniforme (NU), rationale (R) B-Splines (BS)
Definitionen Bezier vs. Spline (auch rekursiv) kรถnnen
Parametrische Flรคchen
- Darstellung รคhnlich zu Splines, aber รผber Punktegitter
- Flรคche entsteht durch Kombination zweier Kurven
Patches
Kurvenfamilie
- Der Rand eines Patches bezรผglich - bzw. -Dimensions des Parameterraums wird durch eine Randkurve geformt
- Fรผr ein feste (bzw. ein festes ) ergibt sich aus der Flรคchenfunktion stets eine eindimensional parametrisierte Kurvenfunktion
- Die Geometrie eines Patches ist durch das regulรคre 2D-Gitter seiner Kontrollpunkte festgelegt
- jeder Gitterpunkt entspricht einem Kontrollpunkt im
- Die Kontrollpunkte eines Patches werden im Allgemeinen in einem 2D-Array gespeichert
- Die Kontrollpunkte werden zur Berechnung eines Patchflรคchenpunktes gewichtet summiert; die Gewichtung wird durch Mischfunktionen definiert
Definition
- Sei eine zweifach parametrisierte polynomiale Funktion mit
- Ein Patch ist definiert durch
- Die Normale im Punkt ist gegeben durch
- Die geometrische Form von im wird durch die Kontrollpunkte und Knotenvektoren von gesteuert
- Das Rendering eines Patches erfolg z.B. durch Triangulation der Oberflรคche mit einer festen oder adaptiven (z.B. sichtabhรคngigen) Auflรถsung
Bilineare Patches
- Sonderfall mit 4 Kontrollpunkten
- verwendet lineare Interpolation entlang der beiden Achsen
- entspricht Bรฉzier-Patch mit Grad 1
Bezier-Flรคchen
Eine Bรฉzier-Flรคche (Bรฉzier Surface, Bรฉzier Patch) ist eine parametrische Flรคche auf Basis von Bernstein-Polynomen -ten Grades mit einem -Kontrollpunktgitter mit den Kontrollpunkten
mit
- Im Allgemeinen habe die Bernsteinpolynome in und denselben Grad (hรคufigster Fall ist )
Eigenschaften
- Konvexe-Hรผlle-Eigenschaft: Das Bรฉzier-Flรคchenstรผck liegt in der konvexen Hรผlle des definierenden Kontrollnetzes
- Globaler Einfluss der Kontrollpunkte: e: Alle Kontrollpunkte beeinflussen global die Bรฉzier-Flรคche
- Interpolation der Eckpunkte: Die vier Eckpunkte des Kontrollnetzes und die Eckpunkte der Flรคche stimmen รผberein
- Bรฉzier-Randkurven: Die Randpunkte des Kontrollnetzes sind die Bรฉzier-Punkte der Randkurven der Flรคche
- Planaritรคt: Genau dann eben, wenn das Kontrollnetz in einer Ebene liegt
Ableitungen und Normalen
Gradienten durch partielle Ableitungen:
Die Normale ein einem Flรคchenpunkt kann durch das Kreuzprodukt der Gradientenvektoren berechnet werden:
Kontinuitรคtsbedingungen
- und -Kontinuitรคt: Durch 4 gemeinsame Kontrollpunkte entlang der gemeinsamen Flรคchenkante
- -Kontinuitรคt: 2 Kontrollpunktmengen zur Seite der gemeinsamen Flรคchenkante

Triangulierung von Bรฉzier-Flรคchen
- Fรผr das Rendering werden Bรฉzier-Flรคchen durch Dreiecksnetze approximiert
- Triangulierung sollte adaptive erfolgen, um optimale Netzauflรถsung bezรผglich Canvas zu gewรคhrleisten
- Tesselation sollte von der GPU (vollstรคndig) รผbernommen werden, um Rendering-Effizienz zu maximieren
- An gemeinsamen Patch-Rรคndern muss รผber entsprechende Auflรถsung das Mesh โvernรคhtโ werden (z.B. bei nicht-uniformer Tesselation)

B-Spline-Flรคchen
- Entkopplung von Grad und Anzahl der Punkte
- Eine B-Spline-Flรคche ist eine zwei-dimensional un und parametrisierte Flรคche
- wird durch ein Kontrollpunkt-Gitter spezifiziert, dass viele Punkte enthรคlt
- Die Punkte werden durch die polynomialen Funktionen bzw. gewichtet, deren Polynomgrad in Dimension bzw. in Dimension sei
- meist
- die minimale Anzahl der Punkte in der - bzw. -Dimension wird durch den Polynomgrad bzw. definiert (analog zu reinen B-Splines)
- Die Knotenvektoren, die in der Definition der -Funktionen verankert sind, sind bezรผglich bzw. definiert als bzw.
Die B-Spline-Flรคchen-Funktion ist definiert wie folgt:

Eigenschaften
- Lokaler Einfluss
- Nichtnegativitรคt:
- Partition der Eins:
Rekursive Definition der Basis-Funktion :
NURBS-Flรคchen
Nicht-uniforme rationale B-Spline-Flรคchen
- Verallgemeinerung durch rationalen Polynomfunktionen
- Generalisierung der polynombasierten, parametrischen Flรคchen
- Zusรคtzlich pro Punkt: Gewicht
- mit den Kontrollpunkten im homogenen Koordinatenrau,
Definition: