2019年4月26日 星期五

棗酒母湯

T-R-T旋轉(改變選轉軸)

自轉




把 glTraslatef 和 glRotatef 兩行程式碼順序更改↓↓↓↓↓

公轉




-----------------------------------------------------------

程式碼↓↓↓↓↓

#include<GL/glut.h>
float angle=0;
void display()
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
    glPushMatrix();
        glTranslatef(0,0.5,0);
        glutWireTeapot(0.3);
    glPopMatrix();
    glPushMatrix();
        glTranslatef(0.51,0.63,0);///(3)希望把會動的手從肚臍移到茶壺上
        glRotatef(angle,0,0,1);///(1)這是手的旋轉
        glTranslatef(0.6,0,0);///(2)這是把旋轉中心(肩),先移動到畫面的中心(肚臍)

        glRotatef(-90,0,1,0);
        glutWireCone(0.1,0.6,10,10);
    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("Week10_TRT");
    glutDisplayFunc(display);
    glutMotionFunc(motion);
    glutMainLoop();
}



執行結果↓↓↓↓↓



沒有留言:

張貼留言