Raumgeometrie. Konstruieren und Visualisieren [Theoriebuch]

A Begriffe der Geometrie Die Bezierkurve in Fig. A.16 hat die Kontrollpunkte B 1 (1|0|0), B 2 (1|1|0), B 3 (0|1|0), B 4 (0|0|1). Setzt man sie in die allge­ meine Formel ein und vereinfacht die Terme, so ergibt sich die Parameterdarstellung P = (2u 3 − 3u 2 + 1|−3u 2 + 3u|u 3 ). Tangentenvektoren von Kurven ergeben sich durch Differenzieren der Parameterdarstellung. Für die kubischen Bezierkurven erhalten wir für den Tangentenvektor r im Punkt P: r = −3 · (1 − u) 2 · B 1 + 3 · (1 − 4u + 3u 2 ) · B 2 + 3 · (2u − 3u 2 ) · B 3 + 3 · u 2 · B 4 Durch Umformen ergibt sich eine besser lesbare Form: r = 3 · (1 − u) 2 · [B 2 − B 1 ] + 6 · u · (1 − u) · [B 3 − B 2 ] + 3 · u 2 · [B 4 − B 3 ] Für u = 0 ist P = B 1 und r = 3 · B 1 B 2  ; für u = 1 ist P = B 4 und r = 3 · B 3 B 4  . Die kubische Bezierkurve geht also durch die Kontrollpunkte B 1 bzw. B 4 und berührt dort die Strecken B 1 B 2 bzw. B 4 B 3 . Mit einiger Mühe kannst du auch nachrechnen, dass D 1 D 2 die Tangente in P ist. Analoge Aussagen gelten für alle Bezierkurven. B-Splinekurven Bezierkurven sind flexibel, einfach zu verstehen und zu berechnen. Sie haben aber Nachteile: Ändert man einen Kontrollpunkt, so ändert sich die ganze Kurve. Benötigt man beim freien Modellieren viele Kontrollpunkte, so folgt die Kurve ihrem Kontrollpolygon ganz schlecht. Für komplexe Modellierungen sind B-Splinekurven besser geeignet; sie sind aus Bezierkurven (niedrigen Grades) zusammengesetzt. Eine B-Splinekurve wird durch ein Kontrollpolygon und den Grad der verwendeten Bezierkurven festgelegt. Die B-Splinekurve in Fig. A.20 hat sechs Kontrollpunkte und besteht aus drei kubischen Bezierkurven (schwarz, blau, schwarz). Wenn der Parameter u von 0 nach 1 läuft, so durchläuft der Punkt P die Kurve. Den Endpunkten der Bezierkurven entsprechen Knoten im Parameterintervall (hier 0, 1/3, 2/3, 1). Die Koordinatenfunktionen x = x(u), y = y(u) des Punktes P(x|y) sind stück- weise definiert (jeweils von Knoten zu Knoten). Das Berechnungsverfahren für B-Splinekurven ist der Algorithmus von de Boor; er ist so kompliziert, dass er hier nicht erörtert werden kann. Auch die B-Splinekurven berühren ihr Kontrollpolygon im Anfangs- und Endpunkt. 0 1 u P Fig. A.20  Fig A.20 Während bei Bezierkurven der Grad automatisch festgelegt ist (Anzahl der Kontrollpunkte minus 1), kann er bei B-Splinekurven gewählt werden. In der Regel werden die Grade 2 und 3 gewählt. Bei n Kontrollpunkten kann der Grad höchstens n − 1 sein. Bei diesem maximalen Grad ist die B-Splinekurve eine Bezierkurve. Wird der Grad k < n − 1 gewählt, so besteht die B-Splinekurve aus n − k Bezierkurven. In Fig. A.21 sind B-Splinekurven mit demselben Kontrollpolygon und den Graden 1, 2 und 3 zu sehen. Beim Grad 1 stimmt die B-Splinekurve mit ihrem Kontrollpolygon überein. Beim Grad 2 besteht die B-Splinekurve aus quadratischen Bezierkurven (Parabelbögen), die die inneren Strecken des Kontrollpolygons in den Halbierungs- punkten berühren. Beim Grad 3 besteht die B-Splinekurve aus kubischen Bezierkurven. Je höher der Grad, desto „runder“ ist die Kurve, desto schlechter folgt sie aber dem Kontrollpolygon. Den „runderen“ Kurvenverlauf bei höheren Graden kannst du dir so vorstellen: Fährt man auf einer B-Splinekurve vom Grad 2 mit dem Auto, so muss man an den Nahtstellen der Parabelbögen das Lenkrad ruckartig bewegen. Bei einer B-Splinekurve vom Grad 3 (oder höher) ist das nicht der Fall. Man sagt auch, dass B-Splinekurven ab dem Grad 3 an den Nahtstellen krümmungsstetig sind.  Fig A.21 143 Nur zu Prüfzwecken – Eigentum des Verlags öbv

RkJQdWJsaXNoZXIy ODE3MDE=