💻電腦圖學💻
電腦圖學 Week05 2021-03-22
1. 主題: Transformation
先旋轉再移動 vs. 先移動再旋轉
2. 主題: GLUT專案檔
3. 主題: mouse 畫物體
今天剛開始先回顧上周的 Transformation
<公轉>
glTranslatef(0.00, 0.00, 0.00);
glRptatef (0.0,1.00,0.00,0.00);
改變物體旋轉方向
把這兩個按S(Swap)交換,觀察自轉跟公轉的差別
程式碼從下往上看
<自轉>
一樣由下往上看
移動在最後才執行
所以先轉動在移動會形成自轉的效果
程式碼畫畫 🎨
#include <GL/glut.h>#include<stdio.h>
float vx[2000],vy[2000];
int N=0;void display(){glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);glBegin(GL_LINE_LOOP);for(int i=0;i<N;i++){glVertex2f(vx[i],vy[i]);}glEnd();glutSwapBuffers();}void mouse(int buttin,int state,int x,int y)
{}void motion(int x, int y){printf("%d %d\n",x,y);vx[N]=(x-150)/150.0;vy[N]=-(y-150)/150.0;N++;display();}int main(int argc, char *argv[]){glutInit(&argc, argv);glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);glutCreateWindow("Week5 drawing");glutDisplayFunc(display);glutMouseFunc(mouse);glutMotionFunc(motion);glutMainLoop();}
模擬試題網站
gist github可以把程式碼放在網址
<script src="https://gist.github.com/samisanimal/d519acb55ced7c3fb00cceb2e42ef1d5.js"></script>






沒有留言:
張貼留言