Upload
tiwaz-kellenberger
View
119
Download
2
Embed Size (px)
Citation preview
Bézier und NURBSKurven & Flächen
Vortrag von Stefan Endler06.01.2005
Computergraphik Seminar WS 2004/05Prof. Elmar Schömer
Inhalt
•Historie•Kurven•Flächen
Vortrag über Kurven und Flächen 3
Historie
• Römerzeitalter:
Benutzung eines Templates um Schiffsrippen herzustellen
• 13. – 16. Jh.:
Weiterentwicklung durch die Venezianer• 1752:
Erstes auftreten eines „splines“.
Vortrag über Kurven und Flächen 4
Historie
• Mathematik:– 1959:
Paul de Faget de Casteljau wird bei Citröen angestellt und beginnt seine Forschung.
– 1960:P. Bézier beginnt seine Forschung bei Peugeot
– 1960:C. de Boor angestellt bei General Motors entdeckt B-spline KurvenGeneralisierung zu NURBS (NonUniform Rational B-splineS)
Vortrag über Kurven und Flächen 5
Historie
• 1971:
Erste Konferenz in Paris mit u.a. P.Bézier • 1974:
Erste Schritte in CAGD (Computer Aided Geometric Design) von R.Barnhill und R.Riesenfeld an der Universität von Utah
• 1979:
Erstes Buch von I.Faux und M.Pratt. „Computational Geometry for Design and Manufacture“
Vortrag über Kurven und Flächen 6
Kurven
• Nicht Rationale Bézier Kurven• Rationale Bézier Kurven• Eigenschaften von Kurven• NURBS
Vortrag über Kurven und Flächen 7
Nicht Rationale Bézier Kurven
• Bernstein Polynome• Definition• De Casteljau Algorithmus• Degree Elevation
Vortrag über Kurven und Flächen 8
Bernstein Polynom
• Allgemeine Darstellung von Bernstein Polynomen:
• Rekursiv:
iinni tt
i
ntB
1)(
)()()1()( 11
1 ttBtBttB ni
ni
ni
Vortrag über Kurven und Flächen 9
Bézier Kurve
Definition einer Bézier Kurve:
• bi sind hierbei die Punkte
• n gibt den Grad der Kurve an
]1,0[t
n
i
nii tBbtx
0
)()(
Vortrag über Kurven und Flächen 10
Bézier Kurve
Der de Casteljau Algorithmus:• Gegeben sind die Kontrollpunkte• Gesucht sind die Punkte der Kurve an der
Stelle t.• Formel:
• In jedem Schritt wird aus 2 Punkten, ein neuer definiert in Relation t : (1-t)
0ii bb
rni
nr
,...,0
,...,111
1)1()(
ri
ri
ri tbbttb
Vortrag über Kurven und Flächen 11
Bézier Kurve
Beispiel: Kurve mit Grad 4
00b
01b
02b
03b
10b
11b
12b
20b
21b
30b
Subdivision:
Vortrag über Kurven und Flächen 12
Bézier Kurve
Degree Elevation• Technik zum Erhöhen des Grades einer Kurve• Formel:
wobei
b-1 = bn+1 = 0
BezierKurve.exe
iii bn
ib
n
ic )
11(
1 1
1,...,0 ni
Vortrag über Kurven und Flächen 13
Rationale Bézier Kurve
• Definition• De Casteljau• Weight Points• Anwendungsbeispiel
Vortrag über Kurven und Flächen 14
Rationale Bézier Kurve
Definition einer rationalen Bézier Kurve:
• wi ist das Gewicht für den bi-ten Punkt
• Sind alle wi = 1, so erhält man die bekannte nicht rationale Bézier Kurve
n
i
nii
n
i
niii
tBw
tBbwtx
0
0
)(
)()(
Vortrag über Kurven und Flächen 15
Rationale Bézier Kurve
Der de Casteljau Algorithmus:• Es gibt 2 Varianten des Algorithmus:
– Alle Punkte werden umgewandelt zu homogenen Koordinaten
– Formel:
wobei
i
iii w
bwb̂
)(*)(*)1()( 11
1 twttwttw ri
ri
ri
)()( 0 tbtb n
rni
nr
,...,0
,...,111
1
11
11
11
)1(
)1()(
ri
ri
ri
ri
ri
rir
i twwt
btwbwttb
Vortrag über Kurven und Flächen 16
Rationale Bézier Kurve
• Weight Points ist eine Möglichkeit der Geometrischen Umsetzung von Gewichten
• Definition von Weigth Points:
• Umrechnung zu Gewichten:
RationalBezierCurve.exe
1
11
ii
iiiii ww
bwbwq
)(1
1
ii
iiii bq
qbww
Vortrag über Kurven und Flächen 17
Rationale Bézier KurveAnwendungsbeispiel• Conics werden durch 3 Punkte und
einem Gewicht repräsentiert
• w0 = w2 = 1
• Es ergeben sich 3 Fälle von Kurven:w1 < 1 Ellipse
w1 > 1 Hyperbel
w1 = 1 Parabel
)()()(
)()()()(
22
211
20
222
2111
200
tBtBwtB
tBbtBbwtBbtc
Vortrag über Kurven und Flächen 18
Eigenschaften
• Endpoint interpolation:x(0) = b0
x(1) = bn
• Symmetrie:
bo,…,bn und bn,…,b0 beschreiben die gleiche Kurve
• Konvexe Hülle
Die Kurve liegt auf jeden Fall im Kontrollpolygon, welches die Punkte bi bilden.
• …
Vortrag über Kurven und Flächen 19
NURBS
• Definition• B-Spline Basic Function
Vortrag über Kurven und Flächen 20
NURBS
Definition einer NURBS Kurve
• m gibt den Grad der Kurve an
• di sind die „de Boor“ Punkte (i = 0,…,n)
• wi sind die Gewichte
• Knot Sequence:
n
i
mii
n
i
miii
tNw
tNdwtd
0
0
)(
)()(
},...,{ 10 mntt
Vortrag über Kurven und Flächen 21
B-Spline Basic Function
• Wichtige Funktion für die Darstellung von NURBS
• Rekursive Formel:
wobei
1)()( 1
11
11
iNtt
tttN
tt
tttN m
imi
mimi
imi
imi
1m
ni ,...,0
0
1)(0 tN i sonst
ttt ii 1
Vortrag über Kurven und Flächen 22
B-Spline Basic Function
Vortrag über Kurven und Flächen 23
Flächen
• Viereckige Bézier Flächen• Dreieckige Bézier Flächen
Vortrag über Kurven und Flächen 24
Viereckige Bézier Flächen
Hyperbolic Paraboloid• Einfachste Form von Bézier Flächen
dargestellt durch 4 Punkte
• Verallgemeinerung:
oder umgeschrieben
)(
)()()(),(
11
10
1,1
1,0
0,1
0,011
10
vB
vBb
b
b
buBuBvux ]1,0[, vu
)(
...
)(
...
......
...
)(...)(),(0
,0,
,00,0
0
vB
vB
bb
bb
uBuBvuxnn
n
nmm
nmm
m
m
i
n
j
nj
miji vBuBbvux
0 0, )()(),(
Vortrag über Kurven und Flächen 25
Viereckige Bézier Flächen
Vortrag über Kurven und Flächen 26
Dreieckige Bézier Flächen
• Definition:
• Bivariate Bernstein Polynomials:
ni
nii wvuBbwvux ),,(),,(
kjini wvu
kji
nwvuB
!!!
!),,(
Vortrag über Kurven und Flächen 27
Dreieckige Bézier Flächen
Vielen Dank für ihre Aufmerksamkeit