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:
Bezierflächen spielen in den Bereichen Computergraphik und ComputerAidedDesign eine wesentliche Rolle beim Modellieren von Freiformflächen.[1][2]
Tensorprodukt-Bezierflächen
Definition
Es sei
eine Bezierkurve
im
, deren Kontrollpunkte von einem weiteren Parameter
abhängen, und zwar sollen sie selbst auf Bezierkurven liegen:
. Damit beschreibt
![{\displaystyle {\bf {b}}^{m,n}(u,v)=\sum _{i=0}^{m}\sum _{j=0}^{n}{\bf {b}}_{ij}B_{i}^{m}(u)B_{j}^{n}(v),\quad u,v\in [0,1]}](./92fbb36804fe4aba30c9782f096cac146d4b1ef4.svg)
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
![{\displaystyle {\bf {b}}^{m,n}(u,v)=\sum _{j=0}^{n}\left[\sum _{i=0}^{m}{\bf {b}}_{ij}B_{i}^{m}(u)\right]B_{i}^{n}(v)}](./f8644fc768da256a3008a9276bcbb12c5e7a0ea1.svg)
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
![{\displaystyle {\frac {\partial }{\partial u}}{\bf {b}}^{m,n}(u,v)=\sum _{j=0}^{n}\left[{\frac {\partial }{\partial u}}\sum _{i=0}^{m}{\bf {b}}_{ij}B_{i}^{m}(u)\right]B_{i}^{n}(v).}](./3d1691f5911de2d400590ae9fe406d8072b54ac7.svg)
Mit dem Resultat für die Ableitung einer Bezierkurve ergibt sich:
![{\displaystyle {\frac {\partial }{\partial u}}{\bf {b}}^{m,n}(u,v)=m\sum _{j=0}^{n}\left[\sum _{i=0}^{m-1}\Delta ^{1,0}{\bf {b}}_{ij}B_{i}^{m-1}(u)\right]B_{i}^{n}(v),}](./58404ecb7da521a5c68627dc5c94093077d2db54.svg)
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