Geometrie: High Order Surfaces
25. April 2004 / von Frank / Seite 6 von 13
B-Splines
Bevor wir uns den Flächen zuwenden, werden wir noch klären, was B-Splines und NURBS sind. Unverkürzt: Basis-Splines und Non-Uniform Rational B-Splines. Warum das ganze? Letztendlich soll das Hauptaugenmerk später nicht nur der Flächenform gewidmet sein, sondern natürlich auch wie man selbige vernünftig verbindet. Aus dieser Problemstellung heraus werden letztendlich auch Arten von Freiformkurven und Flächen geboren.
Bei B-Splines werden wir kurz auf die quadratischen C1 B-Splines und die kubischen C2 B-Splines eingehen. Zu ersteren: Wie der Name schon verrät, wird es um C1 Übergänge gehen. Dem ist auch so: Statt dem damaligen vollständigen Kontrollnetz (Polygon) aus Bézierpunkten sind nun nur noch die beiden Endpunkte und sogenannte "äußere" Bézierpunkte gegeben (und einen Knotenvektor für die Parametrisierung - hier nicht relevant). Die zwischenliegenden fehlenden Kontrollpunkte werden anhand einer sogenannten C1 Bedingung berechnet. Dafür zuerst eine Skizze:
Gelb: gegebene Punkte
Grün: anhand der C1 Bedingung berechnete
zusätzliche Bézierpunkte
Da die Rede von quadratischen C1 B-Splines ist - also B-Splines zweiten Grades, werden diese im einzelnen auch nur aus Bézierkurven zweiten Grades zusammengesetzt. Die für die Übergänge fehlende Kontrollpunkte, werden mit einem bestimmten Streckenverhältnis auf der Geraden zwischen zwei Punkten des B-Spline Polygons berechnet. (Für das Verhältnis notwendig ist der Knotenvektor.)
Vergleich quadratischer B-Spline (grün) mit normaler Bézierkurve(blau)
Gelb: Kontrollpunkte der Bézierkurve 13. Grades
Grün: zusätzliche berechnete Kontrollpunkte der B-Spline Kurve 2. Grades
Wollen wir später die Kurve durch zupfen eines Punktes (gelbe Punkte - denn nur diese sind die bereits vorgegeben Punkte) manipulieren, werden sich maximal nur drei Bézierkurvensegmente ändern anstatt des gesamten Verlaufes, wie es bei eine normalen Bézierkurve der Fall ist. Bei kubischen C2 B-Splines ändern sich dagegen vier Segmente. Man wird sich fragen, warum man überhaupt einen C2 Übergang benötigt, wenn doch schon bei C1 alles entsprechend glatt aussieht. Um dies exakt zu erläutern bedarf es etwas mehr Mathematik, was natürlich jetzt aber nicht der Sinn sein soll. Kurz gesagt haben in unserem Fall zwei Kurvenenden nicht nur die selbe Tangente, sondern auch die selbe Krümmung. Krümmung? Was kann man sich darunter vorstellen?
Typisches Beispiel: zwei Kreise mit unterschiedlichen Radien
im Schnittpunkt zwar die selbe Tangente - aber nicht die selbe Krümmung
Noch weiter vereinfacht kann man sich einfach vorstellen mit einem Fahrzeug obige Kreise abzufahren. Ist man als Fahrer am Schnittpunkt angekommen, sollte schlagartig das Lenkrad anders einschlagen werden, um nicht von der Fahrbahn abzukommen. Also auch ein Kriterium bei der Straßenplanung: stetige Krümmungszunahme bei Kurven wie einer Autobahnabfahrt spielen eine große Rolle. Die dort verwendeten Funktionen heißen Klothoiden.
Beispiel: Klothoide