Bézierkurve

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 24. November 2007 um 17:31 Uhr durch DJJannik (Diskussion | Beiträge) (→‎Ableitung korrigiert). Sie kann sich erheblich von der aktuellen Version unterscheiden.
Zur Navigation springen Zur Suche springen
Kubische Bézierkurve

In der numerischen Mathematik ist die Bézierkurve [be'zje...] eine parametrisch modellierte Kurve, die ein wichtiges Werkzeug im Computer Aided Design (Computerunterstützte Konstruktion) darstellt. Sie wurde Anfang der 1960er Jahre unabhängig voneinander von Pierre Bézier bei Renault und Paul de Casteljau bei Citroën entwickelt. Paul de Casteljau gelang zwar die Entdeckung früher, Citroën hielt seine Forschungen jedoch bis zum Ende der 1960er Jahre als Betriebsgeheimnis zurück.

Definition

Konstruktion einer kubischen Bézierkurve

Eine Bézierkurve -ten Grades zu gegebenen n+1 Kontroll- oder Bézierpunkten , die das so genannte Kontrollpolygon bilden, ist für definiert als

,

wobei das i-te Bernsteinpolynom n-ten Grades ist. Diese bilden eine Basis des Vektorraums der Polynome und erfüllen die Rekursionsformel: mit für oder , sowie . Dies erlaubt eine numerisch stabile rekursive Berechnung der Werte einer Bézierkurve mit Hilfe des de Casteljau-Algorithmus:

Eigenschaften

Datei:Bezier grad123.png
Bezier Kurven (rot) der Grade 1, 2 und 3 und zugehörige Kontrollpolygone (grau). Von links nach rechts wurde jeweils ein Kontrollpunkt (blau) hinzugefügt. Man erkennt wie die Kurve bei Einfügen/Verändern eines Kontrollpunkts "oszilliert", d.h. sich komplett verändert.
  • Die Kurve liegt innerhalb der konvexen Hülle des Kontrollpolygons. Dies folgt daraus, dass die Bernsteinpolynome vom Grad n eine Zerlegung der Eins sind:
  • Die Kurve geht genau durch die Endpunkte und :
  • Die Tangenten in den Endpunkten sind:
  • Eine Gerade schneidet eine Bézierkurve höchstens so oft, wie sie ihr Kontrollpolygon schneidet (die Kurve hat eine beschränkte Schwankung).
  • Eine affine Transformation (Verschiebung, Skalierung, Rotation, Scherung) kann auf die Bézierkurve durch Transformation des Kontrollpolygons angewendet werden ("affine Invarianz").
  • Liegen alle Kontrollpunkte auf einer Geraden, so wird die Bézierkurve zu einer Strecke (Vorteil gegenüber der Polynominterpolation).
  • Der Einfluss eines Kontrollpunktes auf die Kurve ist global. D.h.: Verschiebt man einen Punkt, verändert sich die gesamte Kurve. Daher verwendet man in der Praxis meist Splines, zusammengesetzte Kurven festen Grades, die stetig ineinander übergehen.

Als verallgemeinerte Form der Bézierkurve kann die Bézierfläche gesehen werden. Eine Bézierfläche -ter Ordnung ist eine Fläche der Form

, mit den Kontrollpunkten und den Bernsteinpolynomen und .

Eine Bézierfläche kann also durch zwei zueinander orthogonale Bézierkurven beschrieben werden.

Anwendung

In der Computergrafik werden Bézierkurven zur Definition von Kurven und Flächen im Rahmen von CAD, bei Vektorgrafiken (z. B. SVG) und zur Beschreibung von Schriften (z. B. Postscript Type1 und CFF-Opentype) verwendet.

Beispiele

Konstruktion einer linearen Bézierkurven
Konstruktion einer linearen Bézierkurven

Lineare Bézierkurven (n=1)

Zwei Kontrollpunkte und bestimmen eine lineare Bézierkurve, die einer Geraden zwischen diesen beiden Punkten entspricht. Die Kurve wird angegeben durch

.

Quadratische Bézierkurven (n=2)

Konstruktion einer quadratischen Bézierkurven
Konstruktion einer quadratischen Bézierkurven

Eine quadratische Bézierkurve ist der Pfad, der durch die Funktion C(t) für die Punkte , und verfolgt wird:

.

Kubische Bézierkurven (n=3)

Konstruktion einer kubischen Bézierkurven
Konstruktion einer kubischen Bézierkurven

Kubische Bézierkurven sind in der Praxis von großer Bedeutung, da sowohl B-Spline-Kurven als auch NURBS stückweise in kubische Bézierkurven umgewandelt werden, um dann effizient mit dem de Casteljau-Algorithmus gezeichnet zu werden.

Vier Punkte (, , und ) bestimmen eine kubische Bézierkurve. Die Kurve beginnt bei und geht in Richtung und dann aus Richtung zu . Im Allgemeinen geht die Kurve nicht durch und – diese Punkte dienen nur der Richtung, wobei die Richtung bestimmt, in welche die Kurve in geht. legt die Richtung fest, aus welcher die Kurve zu geht. Der Abstand zwischen und und der Abstand von und bestimmen, „wie weit“ sich die Kurve in Richtung der Kontrollpunkte und bewegt, bevor sie in Richtung läuft.

.

Zu jedem Parameter t einer Bézierkurve kann der Tangentenvektor durch komponentenweise Ableitung der Ausgangsgleichung bestimmt werden. Dabei ist die Länge des Vektors ein Maß für die Geschwindigkeit des „Fortschreitens“ auf der Kurve.

Weblinks

Drei Stützpunkte

Vier Stützpunkte

Beliebig viele Stützpunkte

Literatur

  • Gerald Farin: Curves and Surfaces for CAGD. A practical guide. 5. Aufl. Academic Press, San Diego 2002, ISBN 1-55860-737-4
  • David Salomon: Curves and Surfaces for Computer Graphics. Springer Science+Business Media, Inc., 2006, ISBN 0-387-24196-5