alanhc/張牧之 電腦圖學-week11

alanhc/張牧之 電腦圖學-week11

May 3, 2019

0. 小觀念:機器人&階層性關節轉動
1. Codding Time!!!
1-1.鏡射
1-2.滑鼠
1-3.小技巧-更新座標:
1-4.鍵盤
2.小葉閒聊Time



0. 小觀念:機器人&階層性關節轉動

>那是甚麼???
0-1 機器人

  • 機器人是由許多的 關節 連接 骨頭 組成

















0-2 階層性關節

  • 一層一層 的放入 stack 使其可以一起旋轉
  • TRT旋轉是關鍵!!! >參考下圖TRT
[ 小提示 ] 不知道在講甚麼? [ 傳送門 ]















TRT

TRT旋轉
















1. Codding Time!!!





1-1鏡射







  • 反轉 x座標
  • 反轉 角度
  • glRotatef(-angle, 0,0,1);
    glTranslatef(-x, 0,0);












乾坤大挪移~~~



1-2滑鼠

Past: glutMotionFunc()
Now: glutMotionFunc() + glutMouseFunc()

motion 與 mouse差別:

1-3小技巧-更新座標:

  • 原理圖





  • 程式觀點


void motion(int x, int y) ///new
{
angle += (x-oldX);
oldX=x; ///old
  • 數字觀點




1-4鍵盤

void keyboard(unsigned char key, int x, int y)

  • key:按鍵
  • x:按下時滑鼠x座標
  • y:按下時滑鼠y座標

why unsigned? [ doc ]  [ ref2 ]


>回家任務 使用陣列



2小葉閒聊Time

星星的孩子
天賦

好的coding特質

  • 細膩的眼神   觀察細微
  • 龜毛   排版   
  • 偏執   死纏爛打
  • 問問題   不恥下問
大學教授 > 內向 > 專注