維尼的蜂巢

RealTime??!! It’s amazing!!!!

Hermite的曲線遞補演算法(Hermite Curve Interpolation) 二月 21, 2006

Filed under: 3D Graph — kevinlin @ 10:43 上午

Hermite(1822-1901),法國數學家。生於Dieuze,卒於巴黎。用橢圓函數求出五次方程的一般解;証明 e 是超越數。

http://episte.math.ntu.edu.tw/people/p_hermite/index.html ==>Hermite介紹

Hermite這人真是個神奇人物要講他大概要講個一本書所以講這個以他為名的hermite就好

對遊戲來說這是一個自動幫我們間補影格的演算法(在photoshop也有啊 大家熟知貝滋曲線就是類似的東西)

http://www.86vr.com/teach/cursor/200410/4002.html ==>插值的介紹

http://www.cubic.org/docs/hermite.htm ==>演算法的介紹

http://bbs.ee.ntu.edu.tw/boards/Programming/14/7.html ==>Hermite 與 Bezier 曲線的繪製(是一個多年以前的青衫客所寫)

void Animation::Hermite( Float fTime, Float *pH1, Float *pH2, Float *pH3, Float *pH4 )
{
   Float fTime2 = fTime * fTime;
   Float fTime3 = fTime * fTime2;

   *pH2 = (3.0f * fTime2) – fTime3 – fTime3;
   *pH1 = 1.0f – *pH2;
   *pH4 = fTime3 – fTime2;
   *pH3 = *pH4 – fTime2 + fTime;
}
上面這段是用這個公式

h1(s) =  2s^3 – 3s^2 + 1
h2(s) = -2s^3 + 3s^2
h3(s) =   s^3 – 2s^2 + s
h4(s) =   s^3 –  s^2

目的呢 就是讓他自動產生兩點間 的曲線
(就像是flash裡面那個 自動產生移動動畫一樣)  一個物件在畫面上移動 我只要給幾個點 中間都讓他自己算出

數學真是奇妙  有人可以想出這東西來 實在非常厲害

我承認沒這麼聰明  所以我只要好好用他們就好:P

 

 

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 變更 )

Twitter picture

You are commenting using your Twitter account. Log Out / 變更 )

Facebook照片

You are commenting using your Facebook account. Log Out / 變更 )

Google+ photo

You are commenting using your Google+ account. Log Out / 變更 )

連結到 %s