Grafika komputerowa
Grafika komputerowa
Wykład
Modelowanie krzywych
i powierzchni nieregularnych
Interpolacja i aproksymacja
Linie i powierzchnie w przestrzeni 3D są określone zbiorem punktów o
współrzędnych (x, y, z).
Numeryczne metody modelowania geometrycznego (opisu kształtu) na
podstawie zdefiniowanych punktów klasyfikowane są na dwie kategorie:
- metody interpolacyjne;
- metody aproksymacyjne.
Interpolacja – metoda numeryczna polegająca na wyznaczaniu w danym
przedziale tzw.
funkcji interpolacyjnej f
(
x
), która
przyjmuje w nim z góry
przedziale tzw.
funkcji interpolacyjnej f
(
x
), która
przyjmuje w nim z góry
zadane wartości w ustalonych punktach
, nazywanych
węzłami
. Interpolacja
jest szczególnym przypadkiem metod numerycznych typu aproksymacja.
Aproksymacja – metoda numeryczna polegająca na przybliżaniu w danym
przedziale funkcji zwanej
funkcją aproksymowaną f
(
x
) inną funkcją zwaną
funkcją aproksymującą F
(
x
,
p
1,...,
pk
), tak aby dla przyjętego kryterium,
funkcja
F
(
x
,
p
1,...,
pk
)
możliwie dokładnie odtwarzała przebieg funkcji
aproksymowanej
f
(
x
).
p
1,...,
pk
– zdefiniowane punkty
Interpolacja i aproksymacja - idea
Przykłady:
Krzywe i powierzchnie utworzone metodami interpolacyjnymi zawierają
wszystkie punkty definiujące.
Linia lub powierzchnia utworzona jest metodą aproksymacyjną jeżeli
przechodzi blisko lecz niekoniecznie przez punkty definiujące.
interpolacja metodą Newtona
aproksymacja wielomianem Czybyszewa
Metody interpolacyjne
wykorzystywane do modelowania krzywych
- interpolacja liniowa;
*
- interpolacja wielomianowa;
*
- interpolacja paraboliczna;
*
- interpolacja Akima;
*
- interpolacja funkcjami v-sklejanymi;
- interpolacja macierzami sklejanymi;
- interpolacja funkcjami sklejanymi Bartelsa.
- interpolacja funkcjami sklejanymi Bartelsa.
wykorzystywane do modelowania powierzchni
- interpolacja Coonsa.
*
Metody aproksymacyjne
wykorzystywane do modelowania krzywych i
powierzchni
- aproksymacja Beziera;
*
- aproksymacja funkcjami B-sklejanymi;
*
- aproksymacja funkcjami β-sklejanymi;
*
- aproksymacja funkcjami β2-sklejanymi.
*
Nazwa tworzonych krzywych i powierzchni nosi nazwę
funkcji wykorzystywanej w danej metodzie, np.:
- powierzchnia Coonsa;
- krzywa lub powierzchnia Beziera;
- krzywa lub powierzchnia β-sklejana itp.
Krzywa
C(u)
może być wyrażona jako
liniowe złożenie:
C(u)
= ∑
c
i
F
i
(u)
gdzie:
-
F (u) –
funkcja bazowa
Równanie parametryczne krzywej
i=0
n
-
F
i
(u) –
funkcja bazowa
-
c
i
–
współczynnik liczbowy
Funkcja bazowa definiuje kształt i własności
modelowanej krzywej.
Współczynnik
c
i
może wyznaczać krzywą
C
i
(v)
, która także może być
wyrażona jako liniowe złożenie funkcji bazowych
G
k
(v)
:
C
i
(v)
= ∑
a
ik
G
k
(v)
Wprowadzając to wyrażenie do równania parametrycznego krzywej
otrzymamy równanie powierzchni, które jest iloczynem tensorowym
funkcji bazowych
F
i
(u)
i
G
k
(v)
:
Równanie parametryczne powierzchni
k=0
m
funkcji bazowych
F
i
(u)
i
G
k
(v)
:
S(u,v)
= ∑ ∑
a
ik
F
i
(u) G
k
(v)
gdzie:
-
F
i
(u), G
k
(v) –
funkcje bazowe
-
a
ik
–
współczynnik liczbowy
Funkcje bazowe definiują kształt i własności modelowanej
powierzchni.
i=0 k=0
n m
Łuki krzywej, płaty powierzchni
Krzywe i powierzchnie są często dzielone na mniejsze wycinki
lub segmenty, które mogą być niezależnie przetwarzane.
Krzywa
C(u)
może być dzielona na części wyznaczone przez
punkty
u
i
z dziedziny funkcji
F(u)
:
u
1
<
u
2
<
u
3
,....,
u
p
.
Wybrane punkty
u
i
nazywamy punktami przerwań lub
Wybrane punkty
u
i
nazywamy punktami przerwań lub
węzłami. Każdy przedział [
u
i
,
u
i+1
] jest nazywany łukiem.
Powierzchnia
S(u,v)
może być dzielona na części wyznaczone
przez linie definiowane przez punkty przerwań (węzły) z
dziedzin funkcji
F(u)
i
G(v)
:
u
1
<
u
2
<
u
3
,....,
u
p
oraz
v
1
<
v
2
<
v
3
,....,
v
q
.
Wybrane linie nazywamy liniami przerwań lub liniami
węzłowymi. Pojedynczy segment ograniczony kolejnymi
liniami przerwań (liniami węzłowymi) nazywamy płatem.
Interpolacja liniowa i wielomianowa
Problem interpolacji może być uogólniony w następujący
sposób:
„mając dane N+1 punktów P
i
, od i=0 do N, znaleźć krzywą
Q(t)
przechodzącą przez wszystkie punkty”
Dwa skrajne rozwiązania to:
1. Niezależne połączenie wszystkich par punktów
[P
i
, P
i+1
]
2. Znalezienie równania krzywej przechodzącej
przez wszystkie punkty P
i
Interpolacja liniowa i wielomianowa
Pierwszy przypadek jest przykładem interpolacji liniowej polegającej na połączeniu
kolejnych punktów P
i
liniami prostymi. Jeżeli założymy, że parametr
t
zmienia się w
zakresie [0, 1], to równanie opisujące liniową interpolację pomiędzy punktami P
i
i P
i+1
ma
postać:
Q(t)
=
(1-t)
P
i
+
t
P
i+1
Drugi przypadek jest przykładem interpolacji wielomianowej. Należy znaleźć
wielomian interpolacyjny opisujący przebieg krzywej
Q(t)
przechodzącej przez wszystkie
punkty węzłowe.
Do tego celu mogą być wykorzystane wielomiany Lagrange’a.
Do tego celu mogą być wykorzystane wielomiany Lagrange’a.
gdzie
L
iN
(t)
jest wielomianem Langrange’a:
Stopień wielomianu N jest bezpośrednio związany z liczbą punktów P
i
. Dla N+1 punktów
stopień wielomianu wynosi N.
)
).....(
)(
).....(
(
)
).....(
)(
).....(
(
)
(
1
1
0
1
1
0
N
i
i
i
i
i
i
N
i
i
iN
t
t
t
t
t
t
t
t
t
t
t
t
t
t
t
t
t
L
−
−
−
−
−
−
−
−
=
+
−
+
−
∑
=
=
N
i
iN
i
t
L
P
t
Q
0
)
(
)
(
−
−
=
∏
≠
=
N
i
j
j
j
i
j
iN
t
t
t
t
t
L
,
0
)
(
Przykład interpolacji Langrange’a
cd.
Interpolacja wielomianowa
Wadą interpolacji wielomianowej jest tendencja do
znacznych oscylacji krzywej dla wysokiego stopnia N
oraz zależność stopnia wielomianu od liczby punktów
kontrolnych.
Praktyczne metody interpolacyjne modelowania
krzywych polegają na modelowaniu wycinków krzywej
krzywych polegają na modelowaniu wycinków krzywej
opisanej przez niewielką liczbę punktów definiujących
(od 3 do 5) a następnie łączenie ich przy zapewnieniu
odpowiedniej ciągłości połączenia (np. interpolacja
paraboliczna, interpolacja Akima).
Interpolacja paraboliczna
Interpolacja paraboliczna (Overhauser 1968 r.) jest przykładem interpolacji lokalnej
wykorzystującej cztery punkty węzłowe P
0
, P
1
, P
2
i P
3
.
W wyniku tej interpolacji znajdowane jest równanie krzywej łaczącej punkty środkowe
P
1
i P
2
poprzez złożenie liniowe dwóch paraboli:
-
K
1
(r)
zdefiniowanej przez punkty początkowe P
0
, P
1
i P
2
(
kolor zielony
)
-
K
2
(s)
zdefiniowanej przez punkty końcowe P
1
, P
2
i P
3
(
kolor niebieski
)
K
2
(s)
C(t)
Krzywa
C(t)
jest opisana równaniem:
C(t)
= [1 – (
t/t
0
)]
K
1
(r)
+
(t/t
0
) K
2
(s)
gdzie:
t
0
– odległość punktów P
1
i P
2
s
t
r
K
1
(r)
P
1
P
3
P
2
P
0
Interpolacja Akima (1970)
W interpolacji Akima wyznaczane jest równanie krzywej trzeciego stopnia łączącej dwa kolejne punkty P
i
i P
i+1
przy
założeniu, że przebieg tej krzywej zależy jedynie od stycznych M
i
i M
i+1
w tych punktach, które są wyznaczane na
podstawie położenia danego punktu oraz 2 punktów poprzedzających i 2 punktów następujących po tym punkcie.
Dla wyznaczenia krzywej łączącej punkty P
i
i P
i+1
wykorzystywane są więc:
- punkty P
i
i P
i+1
;
- punkty P
i-2
i P
i-1
poprzedzające punkt P
i
;
- punkty P
i+2
i P
i+3
następujące po punkcie P
i+1
Przykład:
wyznaczenie stycznej do punktu P
3
P
m
1
m
3
m
4
Wartość nachylenia stycznej M
3
do punktu P
3
jest obliczana na podstawie wartości nachyleń
(wsp. kier.)
m
1
,
m
2
,
m
3
i
m
4
odcinków łączących
odpowiednio punkty P
1
i P
2
, P
2
i P
3
, P
3
i P
4
oraz P
4
i P
5
.
gdzie:
dla punktów P
i
=
(x
i
, y
i
)
,
i
= 1,2,3 i 4.
)
)(
(
)
)(
(
)
)(
(
)
)(
(
2
4
1
2
3
4
1
3
2
4
1
2
3
3
4
1
3
2
3
m
m
m
m
m
m
m
m
m
m
m
m
m
m
m
m
m
m
M
−
−
+
−
−
−
−
+
−
−
=
i
i
i
i
i
x
x
y
y
m
−
−
=
+
+
1
1
styczn
a M
3
P
3
P
5
P
2
P
1
P
4
m
2
Interpolacja Akima (1970)
Do wyznaczenie krzywej 3 stopnia łączącej punkt P
1
=[
x
1
,
y
1
] z punktem P
2
=[
x
2
,
y
2
]
wykorzystywane jest równanie:
(1)
z warunkami brzegowymi:
1. Jeżeli
x
=
x
1
to
y
=
y
1
i
3
1
3
2
1
2
1
1
0
)
(
)
(
)
(
x
x
x
x
x
x
y
−
Ω
+
−
Ω
+
−
Ω
+
Ω
=
1
M
dx
dy
=
2. Jeżeli
x
=
x
2
to
y
=
y
2
i
Z równania (1) i warunków brzegowych można wyznaczyć wartości współczynników Ω:
W ten sposób znajdowane są równania krzywych łączących wszystkie kolejne pary punktów.
Do wyznaczenia łuków łączących dwa punkty początkowe i dwa punkty końcowe definiuje się
dodatkowe 2 punkty na każdym z końców. Wyznaczone równanie krzywej redukuje się do
równania 2 stopnia.
2
M
dx
dy
=
3
1
2
1
2
2
1
2
2
1
3
2
1
2
1
2
1
2
1
2
2
1
1
1
0
)
(
)
(
2
)
(
)
(
)
(
3
)
(
2
x
x
y
y
x
x
m
m
x
x
y
y
x
x
m
m
M
y
−
−
−
−
+
=
Ω
−
−
+
−
−
−
=
Ω
=
Ω
=
Ω
Powierzchnie Coonsa
Dane są 4 krzywe definiujące brzeg płatu powierzchni. Zakładamy, że wycinek powierzchni S(u,v) jest
znormalizowany do kwadratu jednostkowego, parametry
u
i
v
należą do przedziału <0, 1>.
Krzywe brzegowe można przedstawić jako:
P(u,0)
,
P(u,1)
,
P(0,v)
i
P(1,v)
.
Płat powierzchni Coonsa buduje się interpolując punkty leżące na przeciwległych krzywych brzegowych.
Utworzona powierzchnia przedstawiona jest równaniem parametrycznym:
gdzie:
F
i
są odpowiednio dobieranymi funkcjami interpolującymi spełniającymi warunki brzegowe:
F
0
(0) =
1,
F
0
(1) =
0,
F
1
(0)
= 0 i
F
1
(1)
= 1
Najprostszymi funkcjami F są funkcje:
/złożenie liniowe powierzchni prostoliniowych
ang. ruled surfaces/
∑
∑
∑∑
=
=
=
=
−
+
=
1
0
1
0
1
0
1
0
)
,
(
)
(
)
(
)
,
(
)
(
)
,
(
)
(
)
,
(
i
j
i
j
j
i
j
i
j
i
P
v
F
u
F
j
u
P
v
F
v
i
P
u
F
v
u
S
S(u,v
)
P(u,1)
P(1,1)
P(0,0)
P(0,1)
P(1,0)
P(1,v)
P(u,0)
P(0,v)
Płat powierzchni Coonsa
P(u,1)
P(1,1)
P(0,0)
P(0,1)
P(1,0)
P(1,v)
P(u,0)
P(0,v)
u
v
u
v
Najprostszymi funkcjami F
i
są funkcje:
/złożenie liniowe powierzchni prostoliniowych
ang. ruled surfaces/
F
0
(u)
=1-
u
i
F
1
(u)
=
u
oraz
F
0
(v)
=1-
v
i
F
1
(v)
=
v
Inne przykładowe funkcje:
F
0
(u)
= cos
2
(½ ∏ u)
i
F
1
(u)
= sin
2
(½ ∏ u)
oraz
F
0
(v)
= cos
2
(½ ∏ v)
i
F
1
(v)
= sin
2
(½ ∏ v)
Powierzchnie Coonsa
Konstrukcja płatu powierzchni Coonsa
Powierzchnie Coonsa
Powierzchnie prostoliniowe (ang. ruled surfaces)
Powierzchnia prostoliniowa jest generowana na podstawie dwóch krzywych parametrycznych zdefiniowanych
za pomocą jednej zmiennej
u
. Poszczególne wartości zmiennej
u
definiują punkty na obu krzywych.
Powierzchnia prostoliniowa definiowana jest poprzez połączenie dwóch punktów o tej samej wartości
u
leżących na przeciwległych krzywych liniami prostymi z parametrem
v
.
Dwuliniowa interpolacja (ang. bilinear interpolation)
Powierzchnia generowana metodą dwuliniowej interpolacji powstaje w wyniku złożenia dwóch interpolacji
liniowych: dla jednego kierunku (parametr
u
) a następnie dla tak uzyskanych wartości przeprowadza się
interpolację liniową dla drugiego kierunku (parametr
v
). Powierzchnia generowana w wyniku interpolacji
dwuliniowej jest najprostszym przykładem powierzchni prostoliniowej, w której wszystkie 4 krzywe
brzegowe są liniami prostymi.
P
00
P
01
P
11
1
P
10
P
0,
v
P
1,
v
P
u,v
u
v
Łączenie płatów powierzchni Coonsa
Dla ciągłości połączenia dwóch płatów powierzchni Coonsa wystarczy, by miały
wspólny brzeg, czyli by odpowiednia krzywa brzegowa jednego płata była
równa krzywej brzegowej drugiego płata. Równanie definiujące wycinek
powierzchni Coonsa zapewnia równość brzegów. Uzyskujemy ciągłość
połączenia stopnia C
0
.
Dla uzyskania wyższego stopnia ciągłości połączenia, muszą być spełnione
dodatkowe warunki – równość wektorów stycznych w punktach brzegowych
łączonych płatów. Uzyskujemy wówczas ciągłość połączenia stopnia C
1
.
Analitycznie te dodatkowe warunki oznaczają, że pierwsze pochodne cząstkowe
funkcji definiujących płaty powierzchni w punktach łączenia są sobie równe:
Łączenie płatów powierzchni Coonsa
Płat powierzchni Coonsa zapewniający ciągłość połączenia z innymi
płatami stopnia
C
1
można zbudować wykorzystując wielomiany
trzeciego stopnia Hermite’a. Płat powierzchni jest opisany równaniem:
∑∑∑∑
=
=
=
=
+
=
=
=
1
0
1
0
,
1
1
0
1
0
)
,
(
)
(
)
(
)
,
(
i
j
j
v
u
l
k
l
k
k
l
lj
ki
dv
du
v
u
P
d
v
g
u
g
v
u
S
gdzie są funkcjami interpolacyjnymi Hermite’a 3 stopnia:
)
(u
g
ij
gdzie są funkcjami interpolacyjnymi Hermite’a 3 stopnia:
2
3
11
2
3
10
2
3
01
2
3
00
)
(
2
)
(
3
2
)
(
1
3
2
)
(
u
u
u
g
u
u
u
u
g
u
u
u
g
u
u
u
g
−
=
−
+
−
=
−
+
−
=
−
+
−
=
−
)
(u
g
ij
)
(
00
u
g
)
(
01
u
g
)
(
11
u
g
)
(
10
u
g
Krzywe Beziera
Krzywa Beziera jest definiowana przez N+1 punktów kontrolnych, tworzących łamaną
kontrolną (łamaną Beziera) o N+1 wierzchołkach.
Równanie parametryczne krzywej jest liniową kombinacją:
gdzie:
-
P
i
– punkty kontrolne
-
B
iN
– funkcja bazowa będąca wielomianem Bernsteina N-tego stopnia
∑
=
=
N
i
iN
i
t
B
P
t
C
0
)
(
)
(
iN
-
t
- parametr równania należący do przedziału <0, 1>
Przykład krzywej Beziera (P
1
, P
2
, P
3
, P
4
– punkty kontrolne)
węzły
łamana kontrolna
łuk (segment) krzywej
Krzywe Beziera
Wielomian Bernsteina N-tego stopnia jest opisany równaniem:
gdzie:
[
]
i
N
i
iN
t
t
t
B
−
−
=
)
1
(
C
)
(
N
i
i!
)!
i!
(N
N!
C
N
i
−
=
3
33
2
23
2
13
3
03
2
22
12
2
02
11
01
00
)
(
)
1
(
3
)
(
)
1
(
3
)
(
)
1
(
)
(
)
(
)
1
(
2
)
(
)
1
(
)
(
)
(
1
)
(
1
)
(
t
t
B
t
t
t
B
t
t
t
B
t
t
B
t
t
B
t
t
t
B
t
t
B
t
t
B
t
t
B
t
B
=
−
=
−
=
−
=
=
−
=
−
=
=
−
=
=
Krzywe Beziera
Przykład:
Wyznaczyć równanie krzywej Beziera opisanej przez 4 punkty kontrolne P
0
, P
1
, P
2
i P
3
.
Stopień wielomianów Bernsteina dla 4 punktów – N=3.
Krzywa jest określona równaniem:
3
3
2
2
1
2
0
3
33
3
23
2
13
1
03
0
3
0
)
1
(
3
)
1
(
3
)
1
(
)
(
)
(
)
(
)
(
)
(
)
(
P
t
P
t
t
P
t
t
P
t
t
B
P
t
B
P
t
B
P
t
B
P
t
B
P
t
C
i
iN
i
+
−
+
−
+
−
=
=
+
+
+
=
=
∑
=
Własności:
1. Węzły krzywej w punktach
t
=0 i
t
=1 (początkowy i końcowy punkt leżący na krzywej)
pokrywają się z pierwszym i ostatnim punktem kontrolnym:
2. Pierwsze pochodne równania krzywej w punktach węzłowych są równe:
świadczy to o tym, że krzywe Beziera są styczne do łamanej kontrolnej w tych punktach.
Umożliwia to łączenie ze sobą segmentów krzywych z zachowaniem ciągłości stopnia C
1
.
)
(
3
)
1
(
)
(
3
)
0
(
2
3
0
1
P
P
dt
dC
i
P
P
dt
dC
−
=
−
=
3
2
1
0
)
1
(
3
)
1
(
3
)
1
(
P
t
P
t
t
P
t
t
P
t
+
−
+
−
+
−
=
3
0
)
1
(
i
)
0
(
P
C
P
C
=
=
Własności krzywych Beziera
1.
Nie przechodzą przez wszystkie punkty kontrolne, przechodzą przez
początkowy i końcowy wierzchołek łamanej kontrolnej.
2.
Krzywe pozostają w wypukłej części łamanej kontrolnej - zawierają się
całkowicie w wielościanie wypukłym, którego wierzchołkami są
wierzchołki łamanej kontrolnej.
3.
Nie umożliwiają lokalnej kontroli kształtu – przesunięcie dowolnego
punktu kontrolnego powoduję zmianę położenia wszystkich punktów
tworzących krzywą (za wyjątkiem punktów węzłowych).
4.
Stopień wielomianu opisującego krzywą jest zależny od liczby punktów
4.
Stopień wielomianu opisującego krzywą jest zależny od liczby punktów
kontrolnych. Dla N punktów kontrolnych generowana jest krzywa
stopnia N-1.
5.
Krzywa Beziera jest styczna do łamanej kontrolnej w punktach
węzłowych. Styczne w tych punktach pokrywają się z odcinkami
odpowiednio P
0
P
1
i P
N-1
P
N
łamanej kontrolnej. Umożliwia to łączenie
krzywych z zachowaniem ciągłości połączenia C
1
.
Łączenie krzywych Beziera
W praktyce rzadko używa się krzywych Beziera wysokiego stopnia. Ponieważ każdy punkt krzywej
Beziera zależy od wszystkich punktów kontrolnych, więc w takiej sytuacji trudno kontrolować kształt
krzywej. Prościej jest złożyć całą krzywą z fragmentów, każdy niskiego stopnia.
Rozpatrzmy dwa segmenty krzywych P
0
, P
1
, P
2
, P
3
i R
0
, R
1
, R
2
, R
3
, połączone w punkcie P
3
=R
0
.
1. Jeżeli punkty P
2
, P
3
=R
0
, R
1
są współliniowe mówimy o ciągłości geometrycznej G
1
krzywej (rys. b).
2. Jeżeli punkty P
2
, P
3
=R
0
, R
1
są współliniowe i odcinki łamanej P
2
P
3
, R
0
R
1
są równej długości
to mówimy o ciągłości parametrycznej C
1
krzywej (rys. c).
R
3
a) bez zachowania ciągłości C
1
b) z zachowaniem ciągłości geometrycznej
b) z zachowaniem ciągłości parametrycznej
Konstrukcja krzywej Beziera N=1
Krzywa Beziera stopnia N=1 zdefiniowana jest przez punkty kontrolne P0 i P1.
Konstrukcja krzywej Beziera
B(t)
w przedziale
t
= [0,1] jest przykładem interpolacji
liniowej ze stałym krokiem.
Zmiana parametru
t
od 0 do 1 jest powiązana z generowaniem kolejnych punktów
krzywej
B(t)
od punktu P
0
do P
1
.
Bezier_1_big.gif
Konstrukcja krzywej Beziera N=2
Krzywa Beziera stopnia N=2 zdefiniowana jest przez 3 punkty kontrolne P
0
, P
1
i P
2
tworzące łamaną kontrolną.
Konstrukcja krzywej polega na wyznaczaniu dla każdej wartości parametru
t
= <0, 1>:
1. Wyznaczaniu punktów pośrednich Q
0
i Q
1
:
- punkt Q
0
wyznaczany jest pomiędzy punktami P
0
i P
1
zgodnie z równaniem Beziera
stopnia 1;
- punkt Q
1
wyznaczany jest pomiędzy punktami P
1
i P
2
zgodnie z równaniem Beziera
stopnia 1.
2. Wyznaczaniu kolejnych punktów krzywej
B(t)
pomiędzy punktami Q i Q zgodnie z
2. Wyznaczaniu kolejnych punktów krzywej
B(t)
pomiędzy punktami Q
0
i Q
1
zgodnie z
równaniem Beziera stopnia 2.
Bezier_2_big.gif
Konstrukcja krzywej Beziera N=3
Krzywa Beziera stopnia N=3 zdefiniowana jest przez 4 punkty kontrolne P
0
, P
1
, P
2
i P
3
tworzące łamaną
kontrolną.
Konstrukcja krzywej polega na wyznaczaniu dla każdej wartości parametru
t
= <0, 1>:
1. Punktów pośrednich Q
0
, Q
1
i Q
2
:
- punkt Q
0
wyznaczany jest pomiędzy punktami P
0
i P
1
zgodnie z równaniem Beziera stopnia 1;
- punkt Q
1
wyznaczany jest pomiędzy punktami P
1
i P
2
zgodnie z równaniem Beziera stopnia 1.
- punkt Q
2
wyznaczany jest pomiędzy punktami P
2
i P
3
zgodnie z równaniem Beziera stopnia 1
2. Wyznaczaniu punktów pośrednich R
0
i R
1
:
- punkt R
0
wyznaczany jest pomiędzy punktami Q
0
i Q
1
zgodnie z równaniem Beziera stopnia 2;
- punkt R
1
wyznaczany jest pomiędzy punktami Q
1
i Q
2
zgodnie z równaniem Beziera stopnia 2.
3. Wyznaczaniu kolejnych punktów krzywej
B(t)
pomiędzy punktami R
0
i R
1
zgodnie z równaniem
3. Wyznaczaniu kolejnych punktów krzywej
B(t)
pomiędzy punktami R
0
i R
1
zgodnie z równaniem
Beziera stopnia 3.
Bezier_3_big.gif
Konstrukcja krzywej Beziera N=4
Krzywa Beziera stopnia N=4 zdefiniowana jest przez 5 punktów kontrolny P
0
, P
1
, P
2
, P
3
i P
4
tworzących
łamaną kontrolną.
Konstrukcja krzywej polega na wyznaczaniu dla każdej wartości parametru
t
= <0, 1>:
1. Punktów pośrednich Q
0
, Q
1
, Q
2
i Q
3
:
- punkt Q
0
wyznaczany jest pomiędzy punktami P
0
i P
1
zgodnie z równaniem Beziera stopnia 1;
- punkt Q
1
wyznaczany jest pomiędzy punktami P
1
i P
2
zgodnie z równaniem Beziera stopnia 1;
- punkt Q
2
wyznaczany jest pomiędzy punktami P
2
i P
3
zgodnie z równaniem Beziera stopnia 1;
- punkt Q
3
wyznaczany jest pomiędzy punktami P
3
i P
4
zgodnie z równaniem Beziera stopnia 1;
2. Wyznaczaniu punktów pośrednich R
0
, R
1
i R
2
:
- punkt R
0
wyznaczany jest pomiędzy punktami Q
0
i Q
1
zgodnie z równaniem Beziera stopnia 2;
- punkt R
0
wyznaczany jest pomiędzy punktami Q
0
i Q
1
zgodnie z równaniem Beziera stopnia 2;
- punkt R
1
wyznaczany jest pomiędzy punktami Q
1
i Q
2
zgodnie z równaniem Beziera stopnia 2;
- punkt R
2
wyznaczany jest pomiędzy punktami Q
2
i Q
3
zgodnie z równaniem Beziera stopnia 2.
3. Wyznaczaniu punktów pośrednich S
0
i S
1
:
- punkt S
0
wyznaczany jest pomiędzy punktami R
0
i R
1
zgodnie z równaniem Beziera stopnia 3;
- punkt S
1
wyznaczany jest pomiędzy punktami R
1
i R
2
zgodnie z równaniem Beziera stopnia 3;
4. Wyznaczaniu kolejnych punktów krzywej
B(t)
pomiędzy punktami S
0
i S
1
zgodnie z równaniem
Beziera stopnia 4.
Bezier_4_big.gif
Powierzchnie Beziera
Powierzchnia Beziera jest definiowana przez siatkę punktów kontrolnych {P
0
, P
1
, ...., P
N
,}
oraz {P
0
, P
1
, ...., P
M
,} tworzących graf kontrolny Beziera o (N+1)x(M+1) wierzchołkach.
Równanie parametryczne powierzchni ma postać:
gdzie:
-
P
ij
– punkty kontrolne
-
B
iN
(u)
– funkcja bazowa z parametrem
u
będąca wielomianem Bernsteina N-tego stopnia
-
B
jm
(v)
– funkcja bazowa z parametrem
v
będąca wielomianem Bernsteina M-tego stopnia
-
u, v
– parametry równania należące do przedziału <0, 1>
∑∑
=
=
=
N
i
jM
M
j
iN
ij
v
B
u
B
P
v
u
S
0
0
)
(
)
(
)
,
(
Ogólna postać
i
-tego wielomianu Bernsteina stopnia K:
i
K
i
iK
w
w
i
K
i
K
w
B
−
−
−
=
)
1
(
)!
(
!
!
)
(
Powierzchnia Beziera definiowana
przez 16 punktów kontrolnych
Powierzchnie Beziera - własności
Powierzchnia Beziera jest iloczynem tensorowym krzywych Beziera. Stąd
większość własności krzywych Beziera przenosi się również na powierzchnie.
Ogólnie: właściwości powierzchni są analogiczne do właściwości krzywych
konstruowanych z wykorzystaniem tych samych funkcji bazowych
1.
Nie przechodzą przez wszystkie punkty kontrolne, przechodzą przez
początkowy i końcowy wierzchołek linii brzegowych (przez punkty
wierzchołkowe grafu punktów kontrolnych P
00
, P
0M
, P
N0
i P
NM
).
2.
Powierzchnie pozostają w wypukłej części grafu kontrolnego - zawierają się
2.
Powierzchnie pozostają w wypukłej części grafu kontrolnego - zawierają się
całkowicie w wielościanie wypukłym, którego wierzchołkami są wierzchołki
grafu.
3.
Nie umożliwiają lokalnej kontroli kształtu – przesunięcie dowolnego punktu
kontrolnego powoduję zmianę położenia wszystkich punktów tworzących
powierzchnię (za wyjątkiem punktów początkowych i końcowych linii
węzłowych).
4.
Stopień wielomianu opisującego powierzchnię jest zależny od liczby punktów
kontrolnych. Dla (N+1)x(M+1) punktów kontrolnych równanie powierzchni
jest stopnia NxM.
5.
Linie brzegowe powierzchni Beziera są krzywymi Beziera. Umożliwia to
łączenie płatów powierzchni z zachowaniem ciągłości połączenia C
1
.
Łączenie płatów powierzchni Beziera
Powierzchnia utworzona z dwóch płatów Beziera.
Gładkość (ang.
smooth
) powierzchni zapewnia ciągłość połączenia stopnia C
0
i C
1
.
Ciągłość C
0
uzyskujemy wyznaczając wspólne punkty kontrolne wzdłuż linii brzegowej.
Ciągłość C
1
uzyskujemy poprzez współliniowość punktów kontrolnych po obu stronach
linii brzegowej - współczynniki kierunkowe odpowiednich par odcinków L
i1
i L
i2
powinny
być równe. Dla zachowania ciągłości parametrycznej dodatkowo odcinki L
i1
i L
i2
powinny
być tej samej długości.
Linia brzegowa
L
02
L
01
L
11
L
12
L
21
L
22
1
Łączenie płatów powierzchni Beziera
Powierzchnia zbudowana poprzez łączenie bikubicznych płatów Beziera,
renderowana ze zwiększającym się poziomem tesselacji.
Białe punkty i białe linie pokazują grafy kontrolne płatów.
Czerwone punkty reprezentują punkty węzłowe linii brzegowych płatów.
Krzywe B-sklejane
Krzywa B-sklejana jest definiowana przez N+1 punktów kontrolnych P
i
, tworzących łamaną kontrolną o
N+1 wierzchołkach na której określone są węzły
t
i
. Równanie parametryczne krzywej jest liniową
kombinacją:
gdzie:
-
P
i
– punkty kontrolne
-
t
- parametr równania należący do przedziału <0, 1>
-
N
i,k
– funkcje bazowe B-sklejane stopnia
k
definiowane rekurencyjnie:
∑
=
=
N
i
k
i
i
t
N
P
t
C
0
,
)
(
)
(
Funkcja bazowa B-sklejana
N
i,k
(t)
stopnia
k
jest wielomianem stopnia
k-1
, który zapewnia ciągłość
stopnia C
k-2
na całej długości definiowanej krzywej. W praktyce najczęściej wykorzystywane są bikubiczne
krzywe B-sklejane ( stopień funkcji 4, stopień wielomianów 3).
Krzywe B-sklejane umożliwiają lokalną kontrolę kształtu, zmiana położenia punktu kontrolnego zmienia
przebieg krzywej tylko pomiędzy zdefiniowanymi węzłami.
Stopień wielomianu opisującego krzywą nie zależy od liczby punktów kontrolnych.
)
(
)
(
)
(
)
(
)
(
)
(
)
(
oraz
wypadku
przeciwnym
w
0
gdy
1
)
(
1
1
,
1
1
1
,
,
1
1
,
i
k
i
k
i
k
i
i
k
i
k
i
i
k
i
i
i
i
t
t
t
N
t
t
t
t
t
N
t
t
t
N
t
t
t
t
N
−
−
+
−
−
=
≤
≤
=
−
+
−
+
+
−
+
−
+
Krzywe B-sklejane
Krzywa B-sklejana jest określona w przedziale
t
=<0,1>, natomiast ciąg
m
+1 wartości
t
i
dzieli
ten przedział na podprzedziały, na których zdefiniowane są poszczególne krzywe
wielomianowe (funkcje bazowe).
Wartości
t
i
są nazywane węzłami krzywej (ang.
knot
) i spełniają one zależność
t
i
≤ t
i +1
.
Jest to niemalejący ciąg, a więc węzły mogą się powtarzać, mogą być wielokrotnie
definiowane. Najczęściej zakłada się także, że
t
0
= 0 i
t
m
= 1.
Jeśli węzły dzielą przedział [0,1] na równe części, wówczas krzywa jest określana jako
jednorodna (ang.
uniform
). Jeśli węzły dzielą przedział nierównomiernie to krzywa jest
określana jako niejednorodna (ang.
non-uniform
).
Rys. Krzywa B-sklejana stopnia k=3:
- <P
0
, P
1
, ..., P
7
> punkty kontrolne;
- <e
i,
, f
i
, g
i
> punkty węzłowe definiujące
i
-ty łuk krzywej;
- odcinki g
i
e
i
i e
i
f
i
styczne do krzywej w punktach łączenia
Krzywe B-sklejane
Wielokrotne zdefiniowanie tego samego punktu kontrolnego zmienia
kształt krzywej. Krzywa w większym stopniu przylega do wielokrotnie
definiowanego punktu kontrolnego.
Stopień funkcji bazowej wpływa na odległość krzywej od łamanej
kontrolnej. Dla stopnia k=2 funkcja bazowa jest funkcją liniową i pokrywa
się z łamaną kontrolną.
P
1
k=3, punkt P
1
zdefiniowany podwójnie
k=2
k=3
k=4
P
0
P
3
P
2
k=3, punkt P
1
zdefiniowany podwójnie
Krzywe B-sklejane - przykład
Rozważmy krzywą B-sklejaną:
- stopień krzywej k=6;
- liczba punktów kontrolnych 14: N=<0, 1, ... 13>
- liczba węzłów t
i
=21:
i
=<0. 1. ... 20>.
- krzywa jest jednorodna, węzły rozmieszczone są równomiernie w przedziale
t
=[0; 1]
i przyjmują wartości: <0.0, 0.05, 0.1, ....0.90, 0.95, 1..0>.
Krzywa B-sklejana jest generowana pomiędzy węzłami
t
i
=[
t
k
,
t
N-k
] = [
t
6
,
t
14
] = [0.3, 0.7] .
Krzywa jest styczna do pierwszego i ostatniego odcinka łamanej kontrolnej.
Pomimo braku łuków krzywej pomiędzy węzłami początkowymi i końcowymi, krzywa B-sklejana jest
definiowana na podstawie wszystkich punktów kontrolnych.
Z definicji funkcji bazowych B-sklejanych wynika, że jest k+1 niezerowych funkcji na łuku
Z definicji funkcji bazowych B-sklejanych wynika, że jest k+1 niezerowych funkcji na łuku
zdefiniowanym przez węzły [
t
i
,
t
i+1
]. Są to funkcje: B
0,k
(
t
), B
1,k
(
t
), ... , B
k,k
(
t
).
a) przebieg krzywej
b) funkcje bazowe B-sklejane
Krzywe B-sklejane - przykład
Szczególny przypadek krzywej B-sklejanej przechodzącej przez pierwszy i ostatni punkt kontrolny:
- liczba punktów kontrolnych 7: N=<0, 1, ... 6>
- liczba węzłów M=11, punkty węzłowe: t
i
gdzie:
i
=<0. 1. ... 10>.
- stopień krzywej k=3; k=M-N-1
- krzywa jest niejednorodna, węzły rozmieszczone są nierównomiernie w przedziale
t
=[0; 1]
i przyjmują wartości: t
0
=t
1
=t
2
=t
3
=0.0, t
4
=0.25, t
5
=0.5, t
6
=0,75, t
7
=t
8
=t
9
=t
10
=1.0.
Wielokrotne zdefiniowanie węzłów w tym samym punkcie kontrolnym (N
-
k) razy wymusza przejście
krzywej przez dany punkt kontrolny
Przykłady krzywych B-sklejanych
Jednorodne krzywe B-sklejane różnych stopni opisane tą samą łamaną kontrolną (P
0
, P
1
, P
2
, P
3
, P
4
). Węzły
u
i
oznaczone czarnymi punktami.
Po prawej stronie wykresy wielomianów funkcji bazowych. Na wykresach kolorami zaznaczono przedziały
poszczególnych krzywych.
Dla liniowej funkcji bazowej krzywa pokrywa się z łamaną kontrolną. Dla funkcji wyższych stopni
k
funkcji
bazowej krzywa B-sklejana jest przybliżana krzywymi wielomianowymi stopnia
k-1
połączonych z ciągłością
stopnia
C
k-2
.
Krzywe NURBS
Krzywe NURBS – ang.
Non-uniform Rational B-Splines
Wyjaśnienie wyrażeń w angielskiej nazwie:
B-spline
— krzywe NURBS to krzywe B-sklejane, a więc parametryczne krzywe, które są złożone z wycinków krzywych
wielomianowych.
Rational
— krzywe wymierne, ponieważ zdefiniowano je we współrzędnych jednorodnych Po przejściu na współrzędne
kartezjąńskie otrzymuje się funkcje wymierne. Współrzędne jednorodne - sposób reprezentacji punktów
n
-wymiarowych za pomocą
(n+1
) współrzędnych.
Non-uniform
— cecha krzywej B-sklejanej: węzły krzywej nie muszą być rozmieszczone równomiernie.
Na kształt krzywej NURBS wpływają następujące elementy:
- punkty kontrolne P
i
gdzie
i
=<0, N-k-1) ;
- węzły
t
u
gdzie
u
=<0, N) dzielące przedział
t
=[0,1] na N−1 podprzedziałów;
- wagi punktów kontrolnych
wi
gdzie
i
=<0, N-k-1 (liczby rzeczywiste) określające wpływ każdego z punktów
- wagi punktów kontrolnych
wi
gdzie
i
=<0, N-k-1 (liczby rzeczywiste) określające wpływ każdego z punktów
kontrolnych na krzywą;
- k
— stopień funkcji bazowej B-sklejanej.
Dowolny punkt na krzywej dany jest wzorem:
gdzie:
N
i,k
(t)
jest bazową funkcją B-sklejaną stopnia
k
.
Krzywa B-sklejana jest szczególnym przypadkiem krzywej NURBS dla równych sobie wag
w
i
różnych od zera.
Waga punktu wpływa na lokalny kształt krzywej. Za pomocą wagi punktu można kontrolować stopień przylegania krzywej
do łamanej kontrolnej. Krzywa "zbliża się" lub "oddala" od punktu, w zależności od jego wagi.
Odcinek krzywej jest liniowy, jeżeli punkt ma wagę równą zeru.
[
]
k
N
k
k
N
i
k
i
i
k
N
i
k
i
i
i
t
t
t
t
N
w
t
N
P
w
t
C
−
−
−
=
−
−
=
∈
=
∑
∑
,
dla
)
(
)
(
)
(
1
0
,
1
0
,
Krzywe NURBS – lokalna kontrola kształtu
1) Kontrola kształtu poprzez zmianę wartości węzłów
(na osiach liczbowych zaznaczono rozkład węzłów)
2) Kontrola kształtu poprzez zmianę wagi punktu (tutaj P
2
)
Powierzchnie B-sklejane
Powierzchnia B-sklejana jest definiowana przez siatkę punktów kontrolnych {P
0
, P
1
, ...., P
N
,} oraz
{P
0
, P
1
, ...., P
M
,} tworzących graf kontrolny o (N+1)x(M+1) wierzchołkach.
Równanie parametryczne powierzchni ma postać:
gdzie:
-
P
ij
– punkty kontrolne
-
N
i,k
(u)
– funkcja bazowa B-sklejana stopnia
k
z parametrem
u;
-
N
j,l
(v)
– funkcja bazowa B-sklejana stopnia
l
z parametrem
v;
-
u, v
– parametry równania należące do przedziału <0, 1>;
-
k
i
l
– stopnie funkcji bazowych B-sklejanych.
∑∑
=
=
=
N
i
l
j
M
j
k
i
ij
l
k
v
N
u
N
P
v
u
S
0
,
0
,
,
)
(
)
(
)
,
(
-
k
i
l
– stopnie funkcji bazowych B-sklejanych.
Przykład:
Powierzchnia B-sklejana definiowana przez siatkę 6x6 punktów kontrolnych.
Punkty węzłowe w kierunku parametru
u
{0,0,0}, {0.25,0.5,0.75}, {1,1,1) stopień funkcji bazowej – 2.
Punkty węzłowe w kierunku parametru
v
{0,0,0}, {0.,0.33,0.66}, {1,1,1) stopień funkcji bazowej – 3.
u
v
Lokalna kontrola kształtu
Zasada lokalnej modyfikacji kształtu:
Iloczyn tensorowy funkcji bazowych B-sklejanych
N
i,k
(
u
)
N
j,l
(
v
) definiujący płat powierzchni B-sklejanej
jest równy zero jeżeli punkt (
u, v
) leży na zewnątrz obszaru zdefiniowanego przez siatkę punktów
kontrolnych [
u
i
, u
i+k+1
] x [
vj
,
v
j+l+1
].
Wynika to bezpośrednio z definicji funkcji bazowej B-sklejanej:
Własności funkcji bazowej przenoszą się na iloczyn tensorowy tych samych funkcji.
≤
≤
≠
=
+
+
wypadku
przeciwnym
w
0
gdy
0
)
(
1
,
k
i
i
k
i
u
u
u
u
N
P
32
Przykład:
Jeżeli punkt kontrolny P
32
zostanie przesunięty, tylko płat powierzchni ograniczony najbliższymi
punktami węzłowymi zostanie zmodyfikowany. Pozostała część powierzchni pozostanie niezmieniona.
Własności krzywych i powierzchni B-sklejanych
Powierzchnia B-sklejana jest iloczynem tensorowym krzywych B-sklejanych.
Własności powierzchni są analogiczne do własności krzywych - konstruowane
są z wykorzystaniem tych samych funkcji bazowych
1.
Definiowane są na podstawie łamanych lub grafów kontrolnych oraz
węzłów dzielących łamane lub grafy na mniejsze przedziały.
2.
Krzywe pozostają w wypukłej części łamanej kontrolnej, powierzchnie
pozostają w wypukłej części grafu kontrolnego. Zawierają się
całkowicie w wielościanie wypukłym, którego wierzchołkami są
punkty kontrolne.
punkty kontrolne.
3.
Umożliwiają lokalną kontrolę kształtu tworzonej krzywej lub
powierzchni poprzez zmianę położenia punktów węzłowych,
wielokrotne definiowanie punktów kontrolnych, dobór stopnia funkcji
bazowej.
4.
Stopień
k
funkcji bazowej zapewnia ciągłość C
k-2
na całej długości
definiowanej krzywej.
5.
Gładkość powierzchni jest kontrolowana przez stopnie
k
i
l
funkcji
bazowych.
6.
Stopień wielomianu opisującego krzywą lub powierzchnię nie jest
zależny od liczby punktów kontrolnych.
Krzywe β-sklejane (Barsky 1984)
Niech wycinek
i
jednorodnej kubicznej krzywej B-sklejanej określonej przez N+1 punktów kontrolnych
będzie zdefiniowany równaniem:
gdzie:
-
P
i+r
– punkty kontrolne, i=<2, N-1>
-
t
- parametr równania należący do przedziału <0, 1>
-
b
r
(t) – funkcja bazowa.
Dla krzywych kubicznych B-sklejanych ciągłość połączenia w punktach brzegowych jest stopnia C @C @C :
∑
−
=
+
=
1
2
)
(
)
(
r
r
r
i
i
t
b
P
t
C
Dla krzywych kubicznych B-sklejanych ciągłość połączenia w punktach brzegowych jest stopnia C
0
@C
1
@C
2
:
Wykorzystując, te warunki ciągłości otrzymujemy wielomiany funkcji B-sklejanej:
2
2
2
1
2
1
1
)
(
)
(
).
3
)
(
)
(
).
2
)
(
)
(
).
1
dt
t
C
d
dt
t
C
d
dt
t
dC
dt
t
dC
t
C
t
C
i
i
i
i
i
i
i
i
i
i
i
i
=
=
=
−
−
−
6
3
3
1
)
(
6
3
6
4
)
(
6
3
3
3
1
)
(
6
)
(
3
2
2
3
2
1
3
2
0
3
1
t
t
t
t
b
t
t
t
b
t
t
t
t
b
t
t
b
−
+
−
=
+
−
=
−
+
+
=
=
−
−
Krzywe β-sklejane
Dla krzywych β-sklejanych zmodyfikowane zostały warunki wynikające z ciągłości
połączenia w punktach brzegowych:
2
2
1
2
2
1
2
2
1
1
1
1
)
(
)
(
)
(
).
3
)
(
)
(
).
2
)
(
)
(
).
1
dt
t
C
d
dt
t
dC
dt
t
C
d
dt
t
dC
dt
t
dC
t
C
t
C
i
i
i
i
i
i
i
i
i
i
i
i
i
i
=
+
=
=
−
−
−
−
β
β
β
Wycinek
i
krzywej β-sklejanej jest zdefiniowany jako:
gdzie:
-
P
i+r
– punkty kontrolne, i=<2, N-1>
-
t
- parametr równania należący do przedziału <0, 1>
-
b
r
(
β
1
, β
2
, t
) – bazowa funkcja β-sklejana.
-
β
1
, β
2
– parametry wpływające na kształt krzywej
∑
−
=
+
=
1
2
2
1
)
,
,
(
)
(
r
r
r
i
i
t
b
P
t
C
β
β
2
2
2
1
dt
dt
dt
Krzywe β-sklejane
Wykorzystując, nowe warunki ciągłości można wyznaczyć bazowe funkcje
β
-
sklejane:
µ
β
β
β
β
β
β
µ
β
β
β
β
β
µ
β
β
2
3
2
2
3
1
2
3
2
1
2
3
1
2
1
1
3
2
2
2
1
2
2
1
2
1
0
3
2
1
1
)
1
3
2
(
)
2
3
(
2
)
2
3
(
2
)
3
3
(
2
)
,
,
(
)
1
(
2
)
2
3
(
)
3
(
2
)
3
(
2
)
,
,
(
2
)
,
,
(
t
t
t
t
t
t
t
t
t
t
b
t
t
t
t
t
t
t
t
b
t
t
b
+
−
+
+
−
+
+
−
+
+
−
=
−
+
−
+
−
+
−
=
=
−
gdzie:
Parametr
β
1
wpływa na kierunek przylegania krzywej do łamanej kontrolnej
(ang.
bias
)
Parametr
β
2
) wpływa na stopień przylegania krzywej (napięcie krzywej) do
łamanej kontrolnej (ang.
tension)
Jeżeli
β
1
= 1 i
β
2
= 0 funkcje bazowe
β
–sklejane redukują się do jednorodnych
kubicznych funkcji bazowych B-sklejanych.
µ
β
β
β
3
2
3
1
2
1
2
)
1
(
2
)
,
,
(
t
t
t
b
−
=
−
2
4
4
2
2
1
2
1
3
1
+
+
+
+
=
β
β
β
β
µ
Dla
β
1
= 1 i
β
2
= 0 - funkcje bazowe
β
-sklejane redukują się do funkcji bazowych B-sklejanych
Dla
β
2
= 0
- β
1
= 1 krzywa jest równomiernie napięta
- β
1
= V, V>1 krzywa jest naciągana w kierunku początkowego punktu kontrolnego
- β
1
= 1/V, V>1 krzywa jest naciągana w kierunku przeciwnym, w kierunku końcowego
punktu kontrolnego
Wpływ parametrów
β
1
i
β
2
na kształt krzywej
Dla
β
1
= 1
-
β
2
= 0 krzywa normalnie przylega do łamanej kontrolnej, jest normalnie napięta
-
β
2
> 0 stopień przylegania krzywej do łamanej kontrolnej (napięcie krzywej) wzrasta wraz ze
wzrostem wartości parametru
β
1
= 1
β
2
= 0
β
1
= 0.5
β
2
= 0
β
1
= 2
β
2
= 0
β
1
= 1
β
2
= 0
β
1
= 1
β
2
= 5
β
1
= 1
β
2
= 90
Powierzchnie β-sklejane
Powierzchnia β-sklejana jest definiowana przez siatkę punktów kontrolnych
{P
0
, P
1
, ...., P
N
,} oraz {P
0
, P
1
, ...., P
M
,} tworzących przestrzenny graf kontrolny
o (N+1)x(M+1) wierzchołkach. Równanie parametryczne powierzchni ma postać:
gdzie:
∑ ∑
−
=
−
=
+
+
=
1
2
1
2
2
1
2
1
,
,
)
,
,
(
)
,
,
(
)
,
(
r
s
s
r
s
j
r
i
j
i
v
b
u
b
P
v
u
S
β
β
β
β
gdzie:
-
P
i+r,j+s
– punkty kontrolne gdzie: i=<2, N-1>, j=<2, M-1>;
-
u, v
– parametry równania należące do przedziału <0, 1>;
-
b
r
(
β
1
, β
2
, u
) – bazowa funkcja β-sklejana z parametrem
u;
-
b
s
(
β
1
, β
2
, v
) – bazowa funkcja β-sklejana z parametrem
v;
-
β
1
, β
2
– parametry wpływające na kształt powierzchni
Własności krzywych i powierzchni β-sklejanych
Powierzchnia β-sklejana jest iloczynem tensorowym krzywych β-sklejanych.
Własności powierzchni są analogiczne do własności krzywych - konstruowane
są z wykorzystaniem tych samych funkcji bazowych. Posiadają większość
własności krzywych i powierzchni B-sklejanych, a ponadto:
1.
Mogą być wykorzystywane w w procesie modelowania, w których
wymagana jest dokładna kontrola kształtu generowanych obiektów.
2.
Parametr
β
1
odpowiada za kierunek przylegania modelowanej krzywej
lub powierzchni do łamanej kontrolnej lub grafu kontrolnego.
3.
Parametr
β
2
odpowiada za stopień przylegania modelowanej krzywej
3.
Parametr
β
2
odpowiada za stopień przylegania modelowanej krzywej
lub powierzchni do łamanej kontrolnej lub grafu kontrolnego.
4.
Kontrola kształtu oraz transformacje mogą być dokonywane lokalnie.
5.
Parametry
β
1
i β
2
mogą być przedstawione w postaci funkcji, co
umożliwia ciągłą kontrolę kształtu.
6.
Stopień wielomianów bazowych funkcji β-sklejanych jest stały - 3 dla
krzywych i 6 dla powierzchni.
7.
Nie przechodzą przez punkty kontrolne, nawet przez punkt początkowy
i końcowy. Dla zapewnienia przejścia przez określony punkt kontrolny
należy zdefiniować dodatkowe punkty kontrolne.
Krzywe i powierzchnie β2-sklejane (Barsky 1985)
Wycinek
i
krzywej β2-sklejanej określonej przez N+1 punktów kontrolnych jest
zdefiniowany jako:
gdzie:
∑
−
=
+
=
1
2
2
)
,
(
)
(
r
r
r
i
i
t
b
P
t
C
β
gdzie:
-
P
i+r
– punkty kontrolne, i=<2, N-1>
-
t
- parametr równania należący do przedziału <0, 1>
-
b
r
(
β
2
, t
) – bazowa funkcja β2-sklejana.
-
β
2
– parametr wpływający na kształt krzywej
Funkcje β2-sklejane są prostsze od funkcji β-sklejanych i tym samym złożoność
obliczeniowa algorytmów wyznaczania wartości tych funkcji jest znacznie
mniejsza. Kształt generowanej krzywej jest kontrolowany przez jeden parametr
odpowiadający parametrowi β2 w funkcjachβ-sklejanej.
Krzywe i powierzchnie β2-sklejane (Barsky 1985)
Dla krzywych β2-sklejanych warunki wynikające z ciągłości połączenia w
punktach brzegowych są następujące:
2
2
1
2
2
1
2
1
1
)
(
)
(
)
(
).
3
)
(
)
(
).
2
)
(
)
(
).
1
dt
t
C
d
dt
t
dC
dt
t
C
d
dt
t
dC
dt
t
dC
t
C
t
C
i
i
i
i
i
i
i
i
i
i
i
i
i
i
=
+
=
=
−
−
−
−
β
Z warunków tych wyznaczyć można bazowe funkcje β-sklejane:
gdzie:
[
]
[
]
[
]
[
]
[
]
)
1
(
2
)
,
(
)
3
(
2
)
4
(
3
8
)
,
(
)
3
(
2
)
2
(
3
6
2
)
,
(
2
)
,
(
3
2
2
2
2
2
2
2
1
2
2
2
0
3
2
1
t
t
b
t
t
t
b
t
t
t
t
b
t
t
b
−
Ω
=
+
+
+
−
+
+
Ω
=
+
−
+
+
+
Ω
=
Ω
=
−
−
β
β
β
β
β
β
β
β
β
12
1
2
+
=
Ω
β
Powierzchnie β2-sklejane
Powierzchnia β2-sklejana jest definiowana przez siatkę punktów
kontrolnych {P
0
, P
1
, ...., P
N
,} oraz {P
0
, P
1
, ...., P
M
,} tworzących
przestrzenny graf kontrolny o (N+1)x(M+1) wierzchołkach.
Równanie parametryczne powierzchni ma postać:
∑ ∑
−
=
−
=
+
+
=
1
2
1
2
2
2
,
,
)
,
(
)
,
(
)
,
(
r
s
s
r
s
j
r
i
j
i
v
b
u
b
P
v
u
S
β
β
gdzie:
-
P
i+r,j+s
– punkty kontrolne gdzie: i=<2, N-1>, j=<2, M-1>;
-
u, v
– parametry równania należące do przedziału <0, 1>;
-
b
r
(
β
2
, u
) – bazowa funkcja β2-sklejana z parametrem
u;
-
b
s
(
β
2
, v
) – bazowa funkcja β2-sklejana z parametrem
v;
-
β
2
– parametr wpływające na kształt powierzchni
Grafika komputerowa
Grafika komputerowa
Wykład
Modelowanie brył
Metody opisu brył (ang.
solid representation)
1. Prymitywy przestrzenne
2. Lokalizacja przestrzenna
3. Drzewa ósemkowe (ang.
octrees
)
4. Zakreślanie przestrzeni (ang.
sweeping
)
5. Konstrukcyjna geometria brył – CSG
5. Konstrukcyjna geometria brył – CSG
(ang.
Constructive Solid Geometry
)
6. Siatki wielokątów
7. Opis brzegowy – BR (Brep)
(ang.
Boundary representation
)