2019年4月25日 星期四

朱書樑的上課筆記

主題:T-R-T旋轉
1.到http://www.cmlab.csie.ntu.edu.tw/~jsyeh/3dcg10/下載[data][win32][glut32.dll]
2.將[win32]解壓縮,並將data以及glut32.dll放入資料夾中
3.打開Transformation.exe進行操作,並比較glRotate放第一行與glTranslate放第一行的差別
公轉自轉

4. 打開codeblocks並打入以下程式碼:
程式碼:
#include <GL/glut.h>
float angle=0;

void display()

{
    glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);
    glPushMatrix();
    glTranslatef(0,0.5,0);
    glutSolidTeapot( 0.3 );
    glPopMatrix();
    glPushMatrix();
    //glutSolidSphere(0.3,30,30);
    glPopMatrix();
    glPushMatrix();
    glTranslatef(0.5,0.625,0);
    glRotatef(angle ,0,0,1);
    glTranslatef(0.6,0,0);
    glRotatef(-90,0,1,0);
    glutSolidCone(0.2,0.6,30,30);
    glPopMatrix();
    glutSwapBuffers();
}
void motion(int x,int y)
{
    angle=x;
    display();
}
int main(int argc,char**argv)
{
    glutInit(&argc,argv);
    glutInitDisplayMode(GLUT_DOUBLE |GLUT_DEPTH);
    glutCreateWindow("06160540");
    glutDisplayFunc(display);
    glutMotionFunc(motion);
    glutMainLoop();
}
5.按下執行即可

沒有留言:

張貼留言