Spline

Spline használata egy grafikus programban

Spline-on szakaszosan parametrikus polinomokkal leírt görbét értünk. Az n-edfokú spline-ban legfeljebb n-edfokú polinomszakaszok csatlakoznak egymáshoz úgy, hogy nemcsak a folytonosságot, hanem az n-1-szeri differenciálhatóságot is biztosítják.

A szakaszonként lineáris spline-t lineáris, a másodfokút kvadratikus, és a harmadfokút kubikus spline-nak is nevezik. A gyakorlati alkalmazásokban leginkább a kubikus spline-okat használják. Néha előfordulnak kvadratikus, és ötödfokú spline-ok is.

A számítógéppel segített tervezésben (CAD) és a számítógépes grafikában azért használják őket előszeretettel, mert egyszerű és interaktív szerkesztést tesznek lehetővé, pontosságuk, stabilitásuk és könnyű illeszthetőségük révén igen komplex formákat lehet velük jól közelíteni. A spline angol szó (kiejtése: szplájn), és nevét arról a rugalmasan hajlítható vonalzóról kapta, melyet hajóépítők és rajzolók használtak korábban.

Általában

A spline-okat 1946-ban először Isaac Jacob Schoenberg említette meg.

Spline-okat többnyire interpolációra, approximációra és ábrázolásra használnak. Az így nyert görbék és felületek olyan simák, amennyire csak lehetnek, nincsenek rajtuk nagyobb kilengések, és rugalmasabban módosíthatók, mint a polinomok. Egyes típusaik szakaszonként változtathatók úgy, hogy közben a görbe nagyobb része megmarad.

A spline név a hajóépítésből ered; ott az építéshez használt hajlékony vonalzót nevezték spline-nak.

Peremfeltételek

A spline görbe nem egyértelmű peremfeltételek nélkül. Ezek a feltételek periodikus esetben természetesek, hiszen a görbének simán kell záródnia. Egy másik természetes feltétel, hogy egy elég sokadik derivált nulla.

Nem záródó görbék illesztéséhez két módszer terjedt el: a körérintős és a tükrözési eljárás. Az így megadott érintők szolgáltatják az induló deriváltat.

Jelölje az első három pontot P1, P2, P3. A körérintős eljárásban kört illesztenek az első három P1, P2, P3 pontra azok síkjában. Veszik a kiindulási pontból a körhöz húzott érintőt; ez megadja az induló érintő irányát. Ennek hossza megegyezik a P1P2 szakasz hosszával. Ha a három pont egy egyenesre esik, akkor az érintő megegyezik az első pontból a második pontba mutató vektorral.

A tükörérintős eljárásban a P1P2 vektor egyenesére tükrözött P1P3 vektor iránya adja meg az érintő irányát, aminek hossza megint csak P1P2.

Hasonlóan adják meg az utolsó érintőt is.

A két módszer különböző eredményt ad. Ritkább pontsorozatok esetén ez jól látszik; elég sűrű pontsorozatok esetén a különbség szemmel nem látható.

Az egyes koordinátákat külön-külön számítják, és csak a végén teszik össze ismét őket.

Elsőfokú spline

Legyen x1, x2, … rendezett pontsorozat. Ekkor az interpoláláshoz használt bázisfüggvények alakja:

u i ( x ) = x x i x i x i 1 x i 1 + x i + 1 x x i + 1 x i x i {\displaystyle \mathrm {u_{i}} (x)={\frac {x-x_{i}}{x_{i}-x_{i-1}}}x_{i-1}+{\frac {x_{i+1}-x}{x_{i+1}-x_{i}}}x_{i}}

Ha i = 0, vagy i = n, akkor a nem értelmezett tag nulla:

u 0 ( x ) = x 1 x x 1 x 0 x 0 {\displaystyle \mathrm {u_{0}} (x)={\frac {x_{1}-x}{x_{1}-x_{0}}}x_{0}}

és

u n ( x ) = x x n x n x n 1 x n 1 {\displaystyle \mathrm {u_{n}} (x)={\frac {x-x_{n}}{x_{n}-x_{n-1}}}x_{n-1}}

Így kapjuk az elsőfokú dongafüggvényt:

s 1 ( x ) = 1 n f i u i {\displaystyle \mathrm {s_{1}} (x)=\sum _{1}^{n}f_{i}u_{i}}

ahol fi az xi-ben előírt érték.

Másodfokú spline

A másodfokú spline-nál a peremfeltételek nem szimmetrikusak: meg lehet adni induló deriváltat, de ezzel a végpontban kapott derivált már egyértelmű. A másodfokú taghoz másodrendű osztott differenciát használnak:

s 2 ( x ) = f i + f i ( x x i ) + f [ x i , x i , x i + 1 ] ( x x i ) 2 {\displaystyle \mathrm {s_{2}} (x)=f_{i}+f'_{i}(x-x_{i})+\mathrm {f} [x_{i},x_{i},x_{i+1}](x-x_{i})^{2}}

ahol f [ x i , x i , x i + 1 ] {\displaystyle \mathrm {f} [x_{i},x_{i},x_{i+1}]} az i-edik kétszeres pontban és az i+1-edik pontban vett másodrendű osztott differencia.

Ez a másodrendű osztott differencia így számítható:

f [ x i , x i , x i + 1 ] = f i f [ x i + 1 , x i ] x i 1 x i {\displaystyle \mathrm {f} [x_{i},x_{i},x_{i+1}]={\frac {f'_{i}-\mathrm {f} [x_{i+1},x_{i}]}{x_{i-1}-x_{i}}}}

ahol

f [ x i + 1 , x i ] = f i + 1 f i x i + 1 x i {\displaystyle \mathrm {f} [x_{i+1},x_{i}]={\frac {f_{i+1}-f_{i}}{x_{i+1}-x_{i}}}}

Harmadfokú spline

Harmadfokú spline esetén a peremfeltételek szimmetrikusak, a kezdő- és a végpontban is megadható derivált. A gyakorlati alkalmazásokban ezek a legnépszerűbbek, mert elég nagy szabadságot adnak a görbe alakjának megválasztásához.

A következőkben feltesszük, hogy az adott pontsorozat egyenlő közű, ekvidisztáns, vagyis a szomszédos pontok távolságát ugyanakkorának vesszük. Ha az adott pontok távolsága nagy mértékben változik, akkor a kapott görbét át kell paraméterezni.

Bázisfüggvények

A harmadfokú spline függvényeket mind interpolációra, mind approximációra, mind ábrázolásra használják. Az ezekhez használt függvénybázisok:

Hermite-polinomok:

  • α0(v) = 1 - 3v2 + 2v3
  • α1(v) = 3v2 - 2v3
  • β0(v) = v - 2v2 + v3
  • β1(v) = v3 - v2

B-spline:

Definiáljuk a következő függvényt:

N 4 := {\displaystyle N_{4}:=}
1 6 v 3 {\displaystyle {\frac {1}{6}}v^{3}} ha 0 v 1 {\displaystyle 0\leq v\leq 1}
1 6 ( 4 3 v ( v 2 ) 2 ) {\displaystyle {\frac {1}{6}}(4-3v(v-2)^{2})} ha 1 v 2 {\displaystyle 1\leq v\leq 2}
1 6 ( 3 v ( v 2 8 v + 20 ) 44 ) {\displaystyle {\frac {1}{6}}(3v(v^{2}-8v+20)-44)} ha 2 v 3 {\displaystyle 2\leq v\leq 3}
1 6 ( 4 v ) 3 {\displaystyle {\frac {1}{6}}(4-v)^{3}} ha 3 v 4 {\displaystyle 3\leq v\leq 4}
és 0 egyébként.

Legyen Nr = Nv+4-r. Ekkor az Nr függvények alkotják a bázist.

Bernstein-polinomok:

Az i-edik n-edfokú Bernstein-polinom:

B n , i = ( n i ) v i ( 1 v ) n i {\displaystyle B_{n,i}={n \choose i}\,v^{i}\,(1-v)^{n-i}}

Görbék interpolációja

Jelölje rendre x0, x1, x2, … az egyes pontokban előírt értéket, és e0, e1, e2, … az adott pontokban előírt deriváltat. Az egyes szegmensek összeillesztésekor a simasági feltételekből lineáris egyenletrendszer adódik.

Az Hermite-polinomok használatával:

Zárt görbe esetén:

az egyenletrendszer minden egyenlete

ei-1 + 4ei + ei+ 1 = bi

alakú, ahol i 0-tól n-ig megy, és e0 = en, e1 = en+1, és e2 = en+2.

A bi-k így számíthatók:

bi = 3( xi+1 - xi-1 )

Nyílt görbe esetén van két szabad paraméter, az induló és az érkező derivált. Felhasználásukkal a szélső egyenletek:

4e1 + e2 = b1 en-2 + 4en-1 = bn-1

a közbülső egyenletek pedig a zárt görbe esetéhez hasonlók.

Az egyenletek jobb oldala csak a szélső esetben különbözik a zárt esettől, ugyanis itt még az ott választott deriváltakat is le kell vonni belőle:

b1 = 3( x2 - x0 ) - e0

és

bn-1 = 3( xn - xn-2 ) - en

Az interpolációval nyert függvény a [0,1] szakaszon:

η(v) = x0α0(v) + x1α1(v) + e0β0(v) + e1β1(v)

A függvény többi szakasza hasonlóan határozható meg.

A B-spline segítségével:

A belső egyenletek alakja:

1 6 c i + 1 + 2 3 c i + 2 + 1 6 c i + 3 = x i {\displaystyle {\frac {1}{6}}c_{i+1}+{\frac {2}{3}}c_{i+2}+{\frac {1}{6}}c_{i+3}=x_{i}}

ahol i = 0, …, n.

Ha a görbe nyílt, akkora két szabad paramétert a szélső pontokban felhasználva a szélső egyenletek alakja:

1 2 c 1 + 1 2 c 3 = e 0 {\displaystyle -{\frac {1}{2}}c_{1}+{\frac {1}{2}}c_{3}=e_{0}}

és

1 2 c n + 1 + 1 2 c n + 3 = e n {\displaystyle -{\frac {1}{2}}c_{n+1}+{\frac {1}{2}}c_{n+3}=e_{n}}

Az interpolációval kapott függvény:

φ ( v ) = r = 1 n + 3 c r N r ( v ) {\displaystyle \varphi (v)=\sum _{r=1}^{n+3}c_{r}\mathrm {N} _{r}(v)}

Görbék approximációja

A harmadfokú B-spline-bázissal approximálnak is. Az interpolációtól eltérve azonban mások a szélső függvények, mert az approximációhoz az kell, hogy a bázisfüggvények összege azonosan egy legyen. A következőkben az Ni,l jelölésben l jelenti a fokszámot. Ha legfeljebb öt alappont van, akkor a bázis csak a szélső függvényeket tartalmazza. A szélső pontok multiplicitása l + 1.

A szélső függvények:

  • n = 3, I = [0,1]:

Ekkor a B-spline függvények éppen a harmadfokú Bernstein-polinomok:

N 0 , 3 ( v ) = ( 1 v ) 3 {\displaystyle \mathrm {N} _{0,3}(v)=(1-v)^{3}}

N 1 , 3 ( v ) = 3 ( 1 v ) 2 v {\displaystyle \mathrm {N} _{1,3}(v)=3(1-v)^{2}v}

N 2 , 3 ( v ) = 3 ( 1 v ) v 2 {\displaystyle \mathrm {N} _{2,3}(v)=3(1-v)v^{2}}

N 3 , 3 ( v ) = v 3 {\displaystyle \mathrm {N} _{3,3}(v)=v^{3}}

  • n = 4, I = [0,2]:

N 0 , 3 ( v ) = ( 1 v ) 3 {\displaystyle \mathrm {N} _{0,3}(v)=(1-v)^{3}} ha 0 v 1 {\displaystyle 0\leq v\leq 1} , és 0 különben

N 1 , 3 = {\displaystyle \mathrm {N} _{1,3}=}

7 4 v 3 9 2 v 2 + 3 v {\displaystyle {\frac {7}{4}}v^{3}-{\frac {9}{2}}v^{2}+3v} ha 0 v 1 {\displaystyle 0\leq v\leq 1}

1 4 ( 2 v ) 3 {\displaystyle {\frac {1}{4}}(2-v)^{3}} ha 1 v 2 {\displaystyle 1\leq v\leq 2}

N 2 , 3 = {\displaystyle \mathrm {N} _{2,3}=}

v 2 2 ( 3 2 v ) {\displaystyle {\frac {v^{2}}{2}}(3-2v)} ha 0 v 1 {\displaystyle 0\leq v\leq 1}

1 2 ( v 2 ) 2 ( 2 v 1 ) {\displaystyle {\frac {1}{2}}(v-2)^{2}(2v-1)} ha 1 v 2 {\displaystyle 1\leq v\leq 2}

N 3 , 3 ( v ) = ( 2 v ) N 0 , 3 ( v ) {\displaystyle \mathrm {N} _{3,3}(v)=(2-v)\mathrm {N} _{0,3}(v)}

  • n = 5, I = [0,3]:

Az N0,3, és az N1,3 függvények, mint előbb, azonosan nullaként kiterjesztve a [2,3] szakaszra. N3,3 = N2,3(3-u), és N4,3 = N1,3(3-u).

Már csak az N2,3 függvényt kell megadni:

N 2 , 3 = {\displaystyle N_{2,3}=}

1 12 ( 18 11 v ) {\displaystyle {\frac {1}{12}}(18-11v)} ha 0 v 1 {\displaystyle 0\leq v\leq 1}

1 4 v ( 2 v ) 2 + 1 6 ( 3 u ) ( 2 v 2 + 6 v 3 ) {\displaystyle {\frac {1}{4}}v(2-v)^{2}+{\frac {1}{6}}(3-u)(-2v^{2}+6v-3)} ha 1 v 2 {\displaystyle 1\leq v\leq 2}

1 6 ( 3 v ) 3 {\displaystyle {\frac {1}{6}}(3-v)^{3}} ha 2 v 3 {\displaystyle 2\leq v\leq 3}

  • n > 5, I = [0,n-2]:

Az N0,3, az N1,3 és az N2,3 függvények, mint előbb, azonosan nullaként kiterjesztve a szakasz további részére. Ezekből az Nn-2,3, az Nn-1,3 és az Nn,3 függvények az (n-v) tényezővel szorozva kaphatók.

A belső függvények a harmadfokú B-spline-bázis megfelelő függvényei, ahol is N3,3 = N4. A többi ebből eltolással kapható.

A csatoláshoz úgy kell meghatározni a λ és a μ együtthatókat, hogy:

q1 = q0 + λ(pn - pn-1), λ > 0

és

q2 = λ2pn-2 - (3λ2 + 3λ + μ)pn-1 + (2λ2 + 3λ + 1 + μ)pn ha n > 3

és

q2 = λ2p1 - (2λ2 + 2λ + μ/2)p2 + (λ2 + 2λ + 1 + μ/2)p3 ha n = 3

ahol a pi és a qi pontok különböző szegmensekhez tartoznak.

Az egyes szegmenseken belül az approximációval kapott függvény:

u 3 = i = 0 n N i , 3 p i {\displaystyle u_{3}=\sum _{i=0}^{n}\mathrm {N} _{i,3}\cdot p_{i}}

Bézier-ívek:

A Bézier-ívek a Bernstein-polinomokkal állíthatók elő, a B-spline-okhoz hasonlóan. A csatolási együtthatók, és a függvényszegmensek ugyanúgy számíthatók.

Felületek interpolációja

Az interpolált felület így számítható:

r ( u , v ) = ( ϱ 0 ( u ) , ϱ 1 ( u ) ) [ r ( 0 , v ) r ( 1 , v ) ] + ( r ( u , 0 ) , r ( u , 0 ) ) [ ϱ 0 ( v ) ϱ 1 ( v ) ] ( ϱ 0 ( u ) , ϱ 1 ( u ) ) [ p 0 , 0 p 0 , 1 p 1 , 0 p 1 , 1 ] [ ϱ 0 ( v ) ϱ 1 ( u ) ] {\displaystyle r(u,v)=(\varrho _{0}(u),\varrho _{1}(u)){\begin{bmatrix}r(0,v)\\r(1,v)\\\end{bmatrix}}+(r(u,0),r(u,0)){\begin{bmatrix}\varrho _{0}(v)\\\varrho _{1}(v)\\\end{bmatrix}}-(\varrho _{0}(u),\varrho _{1}(u)){\begin{bmatrix}p_{0,0}&p_{0,1}\\p_{1,0}&p_{1,1}\\\end{bmatrix}}{\begin{bmatrix}\varrho _{0}(v)\\\varrho _{1}(u)\\\end{bmatrix}}}

ahol a folytonosan differenciálható ϱ 0 ( t ) , ϱ 1 ( t ) {\displaystyle \varrho _{0}(t),\varrho _{1}(t)} függvényekre

ϱ 0 ( t ) + ϱ 1 ( t ) = 1 , {\displaystyle \varrho _{0}(t)+\varrho _{1}(t)=1,}

és

ϱ 0 ( 0 ) = 1 {\displaystyle \varrho _{0}(0)=1}

ϱ 0 ( 1 ) = 0 {\displaystyle \varrho _{0}(1)=0}

ϱ 1 ( 0 ) = 0 {\displaystyle \varrho _{1}(0)=0}

ϱ 1 ( 1 ) = 1 {\displaystyle \varrho _{1}(1)=1}

Hermite-interpoláció:

Az Hermite-felület így számítható:

r ( u , v ) = ( α 0 ( u ) , α 1 ( u ) , β 0 ( u ) , β 1 ( u ) ) M [ α 0 ( v ) α 1 ( v ) β 0 ( v ) β 1 ( v ) ] {\displaystyle r(u,v)=(\alpha _{0}(u),\alpha _{1}(u),\beta _{0}(u),\beta _{1}(u))M{\begin{bmatrix}\alpha _{0}(v)\\\alpha _{1}(v)\\\beta _{0}(v)\\\beta _{1}(v)\end{bmatrix}}}

ahol

M = [ p 0 , 0 p 0 , 1 r v ( 0 , 0 ) r v ( 0 , 1 ) ) p 1 , 0 p 1 , 1 r v ( 1 , 0 ) r v ( 1 , 1 ) ) r u ( 0 , 0 ) r u ( 0 , 1 ) r u v ( 0 , 0 ) r u v ( 0 , 1 ) r u ( 1 , 0 ) r u ( 1 , 1 ) r u v ( 1 , 0 ) r u v ( 1 , 1 ) ] {\displaystyle M={\begin{bmatrix}p_{0,0}&p_{0,1}&r_{v}(0,0)&r_{v}(0,1))\\p_{1,0}&p_{1,1}&r_{v}(1,0)&r_{v}(1,1))\\r_{u}(0,0)&r_{u}(0,1)&r_{uv}(0,0)&r_{uv}(0,1)\\r_{u}(1,0)&r_{u}(1,1)&r_{uv}(1,0)&r_{uv}(1,1)\end{bmatrix}}}

ahol a vegyes második deriváltaknak a csatolásban van jelentőségük.

A csatoláshoz megoldandó egyenletrendszer alakja:

r u ( i 1 , j ) + 4 r u ( i , j ) + r u ( i + 2 , j ) = 3 ( p i + 1 , j p i 1 , j ) {\displaystyle r_{u}(i-1,j)+4r_{u}(i,j)+r_{u}(i+2,j)=3(p_{i+1,j}-p_{i-1,j})}

r v ( i , j 1 ) + 4 r u ( i , j ) + r u ( i , j + 1 ) = 3 ( p i , j + 1 p i , j 1 ) {\displaystyle r_{v}(i,j-1)+4r_{u}(i,j)+r_{u}(i,j+1)=3(p_{i,j+1}-p_{i,j-1})}

r u v ( i 1 , j ) + 4 r u v ( i , j ) + r u v ( i + 1 , j ) = 3 ( r v ( i + 1 , j ) r v ( i 1 , j ) ) {\displaystyle r_{uv}(i-1,j)+4r_{uv}(i,j)+r_{uv}(i+1,j)=3(r_{v}(i+1,j)-r_{v}(i-1,j))}

r u v ( i , j 1 ) + 4 r u v ( i , j ) + r u v ( i , j + 1 ) = 3 ( r u ( i , j + 1 ) r u ( i , j 2 ) ) {\displaystyle r_{uv}(i,j-1)+4r_{uv}(i,j)+r_{uv}(i,j+1)=3(r_{u}(i,j+1)-r_{u}(i,j-2))}

minden i, j-re.

Ez egy túlhatározott egyenletrendszer, ami mégis megoldható.

Felületek approximációja

A görbékhez hasonlóan felületeket is lehet approximálni.

Az általános eljárás szerint olyan két változós Si,j(u,v) függvényeket kell venni, hogy:

i = 0 m j = 0 n S i , j ( u , v ) = 1 {\displaystyle \sum _{i=0}^{m}\sum _{j=0}^{n}\mathrm {S} _{i,j}(u,v)=1}

ekkor az approximációval kapott felület egyenlete:

r ( u , v ) = i = 0 m j = 0 n S i , j ( u , v ) p i , j {\displaystyle r(u,v)=\sum _{i=0}^{m}\sum _{j=0}^{n}\mathrm {S} _{i,j}(u,v)p_{i,j}}

ahol pi,j az approximációhoz megadott két indexes pontsorozat tagja.

Bézier-felületek:

A Bézier-felületek esetén

S i , j ( u , v ) = B i , m ( u ) B j , n ( v ) {\displaystyle \mathrm {S} _{i,j}(u,v)=\mathrm {B} _{i,m}(u)\mathrm {B} _{j,n}(v)}

A csatolási összefüggések:

[ 0 1 0 0 ] B T B T [ 1 v v 2 v 3 ] = h 1 ( v ) [ 0 1 2 3 ] B Q B T [ 1 v v 2 v 3 ] + h 2 ( v ) [ 1 1 1 1 ] B Q B T [ 0 1 2 v 3 v 2 ] {\displaystyle {\begin{bmatrix}0&1&0&0\end{bmatrix}}BTB^{T}{\begin{bmatrix}1\\v\\v^{2}\\v^{3}\end{bmatrix}}=h_{1}(v){\begin{bmatrix}0&1&2&3\end{bmatrix}}BQB^{T}{\begin{bmatrix}1\\v\\v^{2}\\v^{3}\end{bmatrix}}+h_{2}(v){\begin{bmatrix}1&1&1&1\end{bmatrix}}BQB^{T}{\begin{bmatrix}0\\1\\2v\\3v^{2}\end{bmatrix}}}

ahol T és Q tartalmazza a két felülethez megadott két paraméteres pontsorozat pontjainak koordinátáit:

T = [ t 0 , 0 t 0 , 1 t 0 , 2 t 0 , 3 t 1 , 0 t 1 , 1 t 1 , 2 t 1 , 3 t 2 , 0 t 2 , 1 t 2 , 2 t 2 , 3 t 3 , 0 t 3 , 1 t 2 , 3 t 3 , 3 ] {\displaystyle T={\begin{bmatrix}t_{0,0}&t_{0,1}&t_{0,2}&t_{0,3}\\t_{1,0}&t_{1,1}&t_{1,2}&t_{1,3}\\t_{2,0}&t_{2,1}&t_{2,2}&t_{2,3}\\t_{3,0}&t_{3,1}&t_{2,3}&t_{3,3}\end{bmatrix}}}

Q = [ q 0 , 0 q 0 , 1 q 0 , 2 q 0 , 3 q 1 , 0 q 1 , 1 q 1 , 2 q 1 , 3 q 2 , 0 q 2 , 1 q 2 , 2 q 2 , 3 q 3 , 0 q 3 , 1 q 2 , 3 q 3 , 3 ] {\displaystyle Q={\begin{bmatrix}q_{0,0}&q_{0,1}&q_{0,2}&q_{0,3}\\q_{1,0}&q_{1,1}&q_{1,2}&q_{1,3}\\q_{2,0}&q_{2,1}&q_{2,2}&q_{2,3}\\q_{3,0}&q_{3,1}&q_{2,3}&q_{3,3}\end{bmatrix}}}

és B:

B = [ 1 0 0 0 3 3 0 0 3 6 3 0 1 3 3 1 ] {\displaystyle B={\begin{bmatrix}1&0&0&0\\-3&3&0&0\\3&-6&3&0\\-1&3&-3&1\end{bmatrix}}}

A folytonos differenciálhatóság miatt a peremvonalon:

r ~ u ( 1 , v ) = h 1 ( v ) r u ( 1 , v ) + h 2 ( v ) r v ( 1 , v ) {\displaystyle {\tilde {r}}_{u}(1,v)=h_{1}(v)r_{u}(1,v)+h_{2}(v)r_{v}(1,v)}

ahol ru és rv a két csatlakozó felületdarab egyenlete.

B-spline felületek:

A B-spline felületek esetén az Si,j függvények a megfelelő B-spline függvények szorzatai:

S i , j ( u , v ) = N i , m ( u ) N j , n ( v ) {\displaystyle \mathrm {S} _{i,j}(u,v)=\mathrm {N} _{i,m}(u)\mathrm {N} _{j,n}(v)}

A továbbiakban a számolás a Bézier-felületekhez hasonlóan folytatódik.

Ötödfokú spline

Ötödfokú spline-ok használatakor a harmadfokú spline-okhoz hasonló módszerek használhatók ugyanezeknek a spline-családoknak az ötödfokú elemeivel, és más, ötödfokú csatolási együtthatókkal. Ekkor a széleken a második deriváltak is megadhatók. Ez nagyobb szabadságot, de több bonyodalmat jelent.

Források

  • Hegedűs: Numerikus analízis II. Első- és másodfokú spline
  • Verhóczki László: Spline módszerek görbékre és felületekre Harmadfokú spline

Külső hivatkozások

Commons:Category:Splines
A Wikimédia Commons tartalmaz Spline témájú médiaállományokat.
  • Interaktív bevezetés a spline-ok tulajdonságaiba
  • Learning by Simulations Harmadfokú spline-ok interaktív szimulációja.
  • Másod- és harmadfokú spline görbéket használnak betűtípusok definiálására
  • [1] Archiválva 2010. május 9-i dátummal a Wayback Machine-ben Egy másodfokú spline konkrét leírása
  • [2] További feladatok spline illesztésére
  • [3] Ötödfokú spline a vasútnál
  • [4] Ötödfokú spline-ok a térképészetben
  • Informatika Informatikai portál • összefoglaló, színes tartalomajánló lap
Ez a geometriai témájú lap egyelőre csonk (erősen hiányos). Segíts te is, hogy igazi szócikk lehessen belőle!
Ez az informatikai tárgyú lap egyelőre csonk (erősen hiányos). Segíts te is, hogy igazi szócikk lehessen belőle!