2020年3月24日 星期二

圖學筆記-04

1.Transformation

透過範例可以了解旋轉的特性和如何調整

範例介面說明

旋轉示範



2.旋轉

透過程式可以讓滑鼠控制旋轉角度

程式碼+成果
在main()裡面增加

glutMotionFunc(motion);

加了mouse motionfunc,可以捕捉滑鼠的動態。

所以接下來要繼續寫motion函式

void motion(int x, int y)///mouse的動作
{
    myAngle=x;
 

///角度 = x的值

}


接著,要修改和宣告我們的角度


3.旋轉茶壺



將上個主題的程式碼,試著用之前的範例再做一次


    glPushMatrix();
        glRotatef(myAngle,0,0,1);
        glutSolidTeapot(0.3);
    glPopMatrix();

但是每當滑鼠再次拖動時,茶壺會從初始位置開始轉動。


3.旋轉茶壺(冰箱塞大象)

透過x-oldX讓每次轉動的時候不再從初始位置才開始轉動

程式解說:



成果

沒有留言:

張貼留言