Bezierfläche
In der Geometrie sind Bezierflächen Flächen im , die als räumliche Verallgemeinerungen von Bezierkurven definiert werden. Dabei geht man im Wesentlichen zwei Wege einer Verallgemeinerung. Dies führt auf:
- Tensorprodukt-Bezierflächen. Es werden Produkte von Bernstein-Polynomen verwendet.
- Dreiecks-Bezierflächen. Es werden Bernstein-Polynome für Baryzentrische Koordinaten eingeführt.
Bezierflächen spielen in den Bereichen Computergraphik und ComputerAidedDesign eine wesentliche Rolle beim Modellieren von Freiformflächen[1][2] .
Tensorprodukt-Bezierfläche
Definition
Es sei eine Bezierkurve im , deren Kontrollpunkte von einem weiteren Parameter abhängen, und zwar sollen sie selbst auf Bezierkurven liegen: . Damit beschreibt
eine Fläche, die zu den Kontrollpunkten oder Kontrollnetz gehörige (m,n)-Tensorprodukt-Bezierfläche[3]. Die Fläche enthält die Punkte und die Parameter-Kurven ( oder sind konstant), insbesondere die Randkurven, sind Bezierkurven.
Man beachte, dass eine -Tensorprodukt-Bezierfläche zwar Geraden enthält, aber i.a. nicht eben ist. Z.B. erhält man für
- die Fläche mit der Parameterdarstellung
-
Dies ist ein Teil des hyperbolischen Paraboloids mit der Gleichung .
Der Casteljau-Algorithmus
Die Grundidee des Casteljau-Algorithmus für Kurven ist die lineare Interpolation von Punktepaaren. überträgt man diese Idee auf Tensorprodukt-Bezierflächen, so muss man eine bilineare Interpolation für vier Punkte definieren. Sie ist, wie bei Kurven, am einfachsten Fall ablesbar: Eine (1,1)-Tensorprodukt-Bezierfläche auf den vier Punkten hat die folgende Darstellung:
Oder in Matrixform:
Man geht zunächst von einem -Kontrollnetz aus und bestimmt (wie bei Kurven) für und einem Parameterpaar Zwischenvektoren, die durch bilineare Interpolation entstehen:
wobei ist. Dann sei der Punkt, der dem Parameterpaar zugeordnet wird.
Falls ist, ist ab der zweite Index konstant und es wird nur noch linear interpoliert (wie bei Bezierkurven).
- Der Punkt ist dann der Flächenpunkt.
Analog verfährt man, falls ist.
Graderhöhung
Es ist oft von Vorteil, wenn für eine -Tensorprodukt-Bezierfläche ist. Falls dies nicht der Fall ist, lässt sich dies mit Hilfe geeigneter Graderhöhungen erreichen.
Die Graderhöhung von auf der Tensorprodukt-Bezierfläche
führt auf die Graderhöhungen für die Bezierkurven in der eckigen Klammer:
mit
Ableitungen einer Bezier-Fläche
Die partielle Ableitung der Tensorprodukt-Bezierfläche
nach ist
Mit dem Resultat für die Ableitung einer Bezierkurve ergibt sich:
wobei . Analog erhält man die partielle Ableitung nach und alle höheren Ableitungen.
Da die Vektoren Tangentenvektoren der im Punkt beginnenden Randkurven sind, ist
ein Normalenvektor der Fläche in diesem Punkt, falls beide linear unabhängig sind. D.h. die Tangentialebene in den Eckpunkten einer Tensorprodukt-Bezierfläche wird i.a. jeweils von dem Eckpunkt und seinen Nachbarpunkten im Kontrollnetz aufgespannt.
Dreiecks-Bezierflächen
Motivation und Definition
Eine formale Verallgemeinerung der Bernstein-Polynome auf Funktionen mit zwei Variablen, würde von der Beziehung ausgehen. Damit die auftretenden Terme alle positiv sind, muss in dem Dreieck liegen. Zwei der drei Dreiecksseiten spielen als Intervalle auf den Koordinatenachsen eine besondere Rolle. Um diese Bevorzugung zu vermeiden, führt man homogene Koordinaten mit der Bedingung ein. nennt man Baryzentrische Koordinaten. Die verallgemeinerten Bernsteinpolynome ergeben sich aus der Entwicklung von zu:
mit und .
Mit den Abkürzungen und ist
Ist nun
ein dreieckiges Netz von Punkten des , den Kontrollpunkten, so ist[4]
die zugehörige Dreiecks-Bezierfläche.
Die Abbildung zeigt die Anordnung der Punkte für den Fall .
De-Casteljau-Algorithmus
Um den Casteljau-Algorithmus für Dreiecks-Bezierflächen übersichtlich formulieren zu können, führt man noch die folgenden Abkürzungen ein[5]:
- und .
Es sei nun ein dreieckiges Netz von Punkten im und ein Parametervektor in baryzentrischen Koordinaten. Dann sei für und
mit Dann ist
- ein Punkt der Dreiecks-Bezierfläche[6].
Der Nachweis, dass der Casteljau-Algorithmus wirklich einen Punkt der Dreiecks-Bezierfläche liefert, verwendet (analog zum Kurvenfall) die Rekursionsformeln für Bernsteinpolynome:
Für weitere Details sei auf die Literatur verwiesen.
Einzelnachweise
- Farin: Curves and Surfaces for CAGD
- Hoschek&Lasser: Grundlagen der geometrischen Datenverarbeitung
- Farin S. 254
- Farin S. 310
- Farin S. 307
- Farin S. 306
Literatur
- Gerald Farin: Curves and Surfaces for CAGD. A practical guide. 5. Aufl. Academic Press, San Diego 2002, ISBN 1-55860-737-4
- J. Hoschek, D. Lasser: Grundlagen der geometrischen Datenverarbeitung, Vieweg+Teubner Verlag, 1989, ISBN 978-3-519-02962-5
- David Salomon: Curves and Surfaces for Computer Graphics. Springer Science+Business Media, Inc., 2006, ISBN 0-387-24196-5
- Boaswan Dzung Wong: Bézierkurven: gezeichnet und gerechnet. Orell Füssli Verlag, Zürich 2003, ISBN 3-280-04021-3
- Wolfgang Boehm, Gerald Farin, Jürgen Kahmann: A survey of curve and surface methods in CAGD, Comput. Aided Geom. Des. 1, S. 1–60, 1984