2022年5月10日 星期二

新手上碌_week12

 1.自轉&公轉的差別

自轉:

glTranslatef (    );///移動_會包住下面的東西一起移動

    glRotatef (    );////////旋轉_會包住下面的東西一起旋轉

        glScalef (    );/////////大小

            glBegin (    );

 



公轉:

glRotatef (    );////////旋轉_會包住下面的東西一起旋轉

    glTranslatef (    );///移動_會包住下面的東西一起移動

        glScalef (    );/////////大小

            glBegin (    );

 

 2.T(移動)R(旋轉)T(移動控制中心)


#include <GL/glut.h>

float angle=0;

void display()

{

    glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT);


    glColor3f(1,1,1);///白色

    glutSolidTeapot(0.3);///茶壺(當底)


    glPushMatrix();

        glTranslatef(0.2,0,0);///step3.(旋轉後)掛到右邊

        glRotatef(angle,0,0,1);///step2.旋轉

        glTranslatef(0.2,0,0);///step1.把旋轉中心右移(放到世界中心)

        glColor3f(1,0,0);///紅色

        glutSolidTeapot(0.2);///小茶壺

    glPopMatrix();

    glutSwapBuffers();

    angle++;

}

int main(int argc,char** argv)

{

    glutInit(&argc,argv);

    glutInitDisplayMode(GLUT_DOUBLE|GLUT_DEPTH);

    glutCreateWindow("week12 TRT");


    glutDisplayFunc(display);

    glutMainLoop();

}






沒有留言:

張貼留言

VERY BEAUTIFUL, VERY POWERFUL

一.     一樣先安裝且設定好freeglut,OpecCV, 開啟CodeBlocks建立新專案 week11_gundam,                 把 MyGundam.zip下載解壓縮後的data資料夾放到freeglut/bin裡面 把week09_openc...