2023年3月22日 星期三

圖學 - Week06 - 階層 ( Hierarchy ) /鍵盤 & 滑鼠

將上週week05-2_TRT_robot的程式碼複製下來。
然後設置一個中心點:glutSolidSphere()
畫一個茶壺,將茶壺的把手移動到對準中心點,然後進行旋轉。


程式碼執行成果:



階層性 ( Hierarchy )

複製剛剛的week06-1_TRT_robot程式碼,新增一個0.3大小的茶壺。


會發現新增的茶壺在正中央,而本來的茶壺持續旋轉。

想把旋轉茶壺的把手中心點放在新增茶壺的壺口,讓茶壺在壺口旋轉。
在程式碼中新增一行glTranslatef();



執行程式碼的結果:

如果把原本的程式碼外面再加一層glPushMatrx();glPopMatrix();,製造階層。


程式碼執行結果:



robot

新增一個0.5大小的方形,然後壓縮成長方形,當成右手臂。
然後進行旋轉。


程式碼執行結果:



再新增一個Cube成為右手肘,當右手肘少了一行Translatef。
(上面手臂先註解掉會較好理解。)


程式碼執行結果:


加上Translate之後。


程式碼執行結果:


把上面註解掉的程式碼放回來。



程式碼執行結果:




現在做完了右手臂和右手肘之後,複製貼上後,加上負號就成為左手臂和左手肘。



程式碼執行結果:




沒有留言:

張貼留言