2.4. 2.4. interpoláló szplájnok

A harmadrendű Hermite-ívek ismételt alkalmazásával megoldhatjuk a következő feladatot.

Adottak a pontok, a hozzájuk rendelt, egymástól különböző paraméterértékek, valamint a érintővektorok ().

Keresünk olyan elsőrendben folytonosan kapcsolódó harmadrendű ívekből álló görbét, amelyre

teljesül.

Tekintsük az előző feladat néhány módosítását! A módosítás abban áll, hogy enyhítjük a kiindulási feltételeket, ami által növeljük a megoldások számát.

Adottak a pontok, és a hozzájuk rendelt érintőirányok ().

Keresünk olyan, a paraméter szerint elsőrendben folytonosan kapcsolódó ívekből álló görbét, amely az adott pontokon átmegy, és ott az érintő iránya a megadott irány.

Az általánosság megszorítása nélkül feltehetjük, hogy .

Ha ezt a feladatot az előzőre vissza akarjuk vezetni, akkor meg kell adni az paraméterértékeket, és az érintővektor előállításához a skalárokat.

Az paraméterértékek megadásának lehetőségeit a 2.6. szakaszban tárgyaljuk.

Az érintővektor hosszának a megadása is igen nagy szabadságot biztosít a tervezőnek. A egyenlőségben -nek bármilyen értéket adhatunk. Elég elterjedt megoldás, hogy az érintő hossza arányos a pontból kiinduló valamelyik húrral, például

Adottak a pontok és a hozzájuk rendelt, egymástól különböző paraméterek.

Keresünk olyan elsőrendben folytonosan kapcsolódó harmadrendű ívekből álló görbét, amely az paraméterértékeknél a pontokon megy át.

Annak érdekében, hogy az előző feladatok valamelyikére visszavezessük a problémát, meg kell adnunk vagy az érintőirányokat, vagy a érintővektorokat. Az érintővektorok megadhatók például az úgynevezett Bessel-érintőkkel. Ezen a , , és adatokkal meghatározott úgynevezett Bessel-féle parabolának az helyen vett érintőjét értjük.

Ez a következőképpen határozható meg. Tekintsük azt a

másodfokú polinomot, amelyre

teljesül! A jelölést bevezetve

Az érintők meghatározásához a

kifejezésnek az helyen vett helyettesítési értékére van szükség.

Így a kezdő- és végpont kivételével meghatározhatjuk az érintővektorokat. A fennmaradó pontokban pedig a

segítségével lehet, amiből a

vektorokat kapjuk.

Ha csak érintőirányokat akarunk meghatározni, akkor annak egyik legegyszerűbb módja az

és pedig például a fent ismertetett Bessel-parabolával határozható meg.

2.4.1. 2.4.1. Catmull-Rom-szplájn

A Catmull-Rom-szplájn is harmadfokú ívekből állítja elő az interpoláló görbét, és csak az interpolálandó pontokat kell megadni.

2.4. ábra - Az érintővektorok meghatározása a Catmull-Rom-spline esetén; az ábra a Az érintővektorok meghatározása a Catmull-Rom-spline esetén; az ábra a \tau=0.5 esetet szemlélteti. esetet szemlélteti.

Az érintővektorok meghatározása a Catmull-Rom-spline esetén; az ábra a \tau=0.5 esetet szemlélteti.

Adottak a pontok.

Keresünk olyan elsőrendben folytonosan kapcsolódó harmadrendű ívekből álló görbét, amely az adott pontokon átmegy és a pontban az érintővektora , .

A és pontokban a fenti módon nem határozható meg az érintő iránya. A kezdőpontban általában a , a végpontban pedig a vektort használjuk (lásd a 2.4. ábrát). A görbe -edik ívére () az

feltételeknek kell teljesülni (tehát minden egyes ívnél a intervallum az értelmezési tartomány). Ezen feltételek alapján az ívet Hermite-ívként le tudjuk írni. Az

polinomban szereplő együtthatók a (2.2) alapján

alakban írhatók fel. Ebből megkapjuk az ív

mátrixalakját. A alakparaméterként használható, a pontokban az egyes ívek görbületét befolyásolja. Kis értékhez nagy görbület, nagy értékhez kis görbület tartozik, lásd a 2.5. ábrát. Leggyakrabban a értéket szokták használni, az eredeti változatban is ez szerepelt, csak később általánosították.

2.5. ábra - Az alakparaméter hatása a Catmull-Rom-szplájnra; Az alakparaméter hatása a Catmull-Rom-szplájnra; \tau=0.2 (kék), \tau=0.5 (fekete), \tau=1 (piros); az érintővektorok a \tau=0.5 értékhez tartoznak (kék), Az alakparaméter hatása a Catmull-Rom-szplájnra; \tau=0.2 (kék), \tau=0.5 (fekete), \tau=1 (piros); az érintővektorok a \tau=0.5 értékhez tartoznak (fekete), Az alakparaméter hatása a Catmull-Rom-szplájnra; \tau=0.2 (kék), \tau=0.5 (fekete), \tau=1 (piros); az érintővektorok a \tau=0.5 értékhez tartoznak (piros); az érintővektorok a Az alakparaméter hatása a Catmull-Rom-szplájnra; \tau=0.2 (kék), \tau=0.5 (fekete), \tau=1 (piros); az érintővektorok a \tau=0.5 értékhez tartoznak értékhez tartoznak

Az alakparaméter hatása a Catmull-Rom-szplájnra; \tau=0.2 (kék), \tau=0.5 (fekete), \tau=1 (piros); az érintővektorok a \tau=0.5 értékhez tartoznak


2.4.2. 2.4.2. Overhauser-szplájn

Adottak a pontok és a hozzájuk rendelt, egymástól különböző paraméterértékek.

Keresünk olyan elsőrendben folytonosan kapcsolódó harmadrendű ívekből álló görbét, amely az paraméterértékeknél a pontokon megy át.

Az Overhauser-szplájn a Bessel-érintőknél használt parabolára épül. Az Overhauser-szplájn íve

vagyis az harmadrendű ív a és , másodrendű parabolák konvex kombinációja. A kombinációban szereplő függvényeket súlyfüggvényeknek (blending functions) nevezzük. A 2.6. ábra az Overhauser-szplájn ívének előállítását szemlélteti. A , illetve pontok között ilyen harmadfokú ívek nem állíthatók elő, ezeknél a , illetve Bessel-parabolák megfelelő ívét használhatjuk. DEMO: Overhauser.exe

2.6. ábra - Az Overhauser-szplájn Az Overhauser-szplájn \mathbf{a}_{i}\left(u\right) ívének előállítása ívének előállítása

Az Overhauser-szplájn \mathbf{a}_{i}\left(u\right) ívének előállítása