2022年5月17日 星期二

´◔౪◔)Morning Star

 Week13 TRT

    目標:做一個大長方形出來

        Step1. 認識 glRectf (x1, y1, x2, y2) 兩個點 [右上/左下]

        Step2. 製作程式碼

        Step3. Run Run Run!!!

    目標:再加一條手臂上去,並且讓他轉轉轉

        Step1. 先做一個有顏色的手臂。所以要先理解手臂怎麼放

                   讓方塊變橫的變小,用 x,y 軸思考

        Step1-2. 程式碼

        Step2. 讓手臂可以旋轉

        Step2-1. 先改變旋轉中心。從 (0.3,0.4) 移到 (0,0)

                       glTranslatef (-0.3,-0.4,0); 左移0.3 下移0.4 就可以移到 (0,0)



        Step2-2. 調整旋轉角度至45度。記得在外面設Angle=45

                       glRotatef (angle,0,0,1);



        Step2-3. 手臂在身體中間 => 不合理

                       把手臂掛回去

                        glTranslatef (0.3,0.4,0);



        Step3. 完成程式碼

    目標:改變TRT的R角度 => 使用老朋友 mouse/motion function

        Step1. 新增 mouse function

        Step2. 新增 motion function

        Step3. 在main()新增mouse/motion指令

開新專案 week13_Rect_TRT_TRT 兩層trt

    Step1. copy week13_trt code

    目標:新增第二個關節

                要加在上手臂跟glPopMatrix中間

        Step1. 先把手臂移到旋轉中心

                    glTranslatef (-0.7,-0.4,0); 左移0.7 下移0.4 就可以移到 (0,0) 

        Step2. 讓他可以旋轉

        Step3. 掛回原位

        Step4. 完成程式碼

        影片

開新專案 week13_Rect_many_TRT 製作左半邊

    Step1. 複製code 將x +/-互換


Class 3

    因為只有1個angle,所以轉起來,會一起轉,看起來不自然

    所以一個關節,需要兩個角度(x軸,z軸)。 手+腳大概需要20個 => float angle[20];

    1. 更改關節的angle[?]

    2. 使用 keyboard function 去控制angleID

       可以根據按數字鍵0/1/2/3,去改變想要轉動得關節

     3. 記得去main()加 glKeyboardFunc(keyboard);



~~~~下課了~~~~






沒有留言:

張貼留言

VERY BEAUTIFUL, VERY POWERFUL

一.     一樣先安裝且設定好freeglut,OpecCV, 開啟CodeBlocks建立新專案 week11_gundam,                 把 MyGundam.zip下載解壓縮後的data資料夾放到freeglut/bin裡面 把week09_openc...