Podręcznik
2. Krzywe wielomianowe 3 i 2 stopnia
2.1. Reprezentacja Hermite’a
Krzywa wielomianowa trzeciego stopnia jest najczęściej stosowanym segmentem krzywej, z którego buduje się dowolnie złożone krzywe, zarówno w aplikacjach rysunkowych (rastrowych i wektorowych), jak i we wszelkiego rodzaju modelerach - służących do modelowania kształtów w systemach CAD/CAM i w systemach animacji komputerowej. Można powiedzieć bez żadnej przesady, że jest to najbardziej popularny "kawałek" krzywej, który stanowi podstawę matematycznej reprezentacji tego wszystkiego, co widzimy w animacji komputerowej i tego, czym posługujemy się na co dzień jako wytworami wzornictwa przemysłowego. Krzywa taka jest na tyle wysokiego stopnia, że może być krzywą przestrzenną i może mieć jeden lub dwa punkty przegięcia, a nawet ostrze. Zarazem jest na tyle niskiego stopnia, że umożliwia bardzo proste i szybkie obliczenia i jest wygodna jako element do konstruowania złożonych krzywych.
Pojedynczy łuk krzywej wielomianowej trzeciego stopnia można zdefiniować ogólnym wzorem
w którym cztery wielkości Ai są wektorami 2D lub 3D nie mającymi żadnej interpretacji geometrycznej.
Można go też zdefiniować za pomocą czterech innych wektorów: dwóch punktów krańcowych i wektorów pochodnych w tych punktach. Jest to tzw. reprezentacja Hermite'a, mająca znaczenie geometryczne: wektory pochodnych pokazują, w jakim kierunku poruszamy się po krzywej i z jaką prędkością. Im bardziej wydłużymy wektory pochodnych, tym bardziej krzywa się "wybrzuszy" - bo długość toru musi wzrosnąć, skoro ma być na nim większa prędkość.
\({\mathbf{P}}\left(u\right)=\left(2u^3-3u^2+1\right)\cdot{\mathbf{P}}\left(0\right)+\left(-2u^3+3u^2\right)\cdot{\mathbf{P}}\left(1\right)+\left(u^3-2u^2+\ u\right)\cdot\mathbf{P}^\prime\left(0\right)+(u^3-u^2)\cdot\mathbf{P}^\prime(1)\)
Rysunek 15. Przykłady różnych segmentów wielomianowych trzeciego stopnia w reprezentacji Hermite'a. Do wyznaczenia krzywej służą punkty krańcowe krzywej i wektory pochodnych w tych punktach.
Zależności pomiędzy obiema reprezentacjami opisują wzory:
\({\mathbf{A}_0}={\mathbf{P}}(0)\)
\({\mathbf{A}_1}=\mathbf{P}^\prime(0)\)
\(\mathbf{A}_2=-3{\mathbf{P}}\left(0\right)+3{\mathbf{P}}\left(1\right)-2\mathbf{P}^\prime\left(0\right)-\mathbf{P}^\prime(1)\)
\(\mathbf{A}_3=2{\mathbf{P}}\left(0\right)-2{\mathbf{P}}\left(1\right)+\mathbf{P}^\prime\left(0\right)+\mathbf{P}^\prime(1)\)