2019年3月8日 星期五

喬巴的疲憊日常 Weekthree

移動















🔺GLUT做出茶壺 (查看week02)

#include <GL/glut.h>
void display()
{///gl開頭表示gl的程式
     glutSolidTeapot( 0.3 );
    glutSwapBuffers();
}///gl開頭表示GLUT的程式
int main(int argc, char**argv)///高手的main的參數
{
    glutInit(&argc, argv);///啟動GLUT
    glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);
    ///啟動GLUT的Display的Mode模式: 兩倍的Buffe
    glutCreateWindow("week03_translate");
    glutDisplayFunc(display);///Display的函式

    glutMainLoop();
}














🔺移動成功,但是有Bug

 glTranslatef( 0.2, 0.2 ,0 );/// Translate移動x,y,z, f浮點數
副作用:會亂動,不正確














🔺副作用:會亂動,不正確,要加上 glPushMatrix()
glPushMatrix();///備份矩陣,保護好
///要加上glPopMatrix()保護
glPopMatrix();///還原矩陣,保護好















🔺利用滑鼠作標和小畫家查詢圖片座標及顏色 (記得換算)

glBegin(GL_POLYGON);
        glColor3f(6/225.0, 140/255.0, 39/255.0);
        glVertex2f( (174-100)/100.0, -(86-100)/100.0);
        glVertex2f( (120-100)/100.0, -(47-100)/100.0);
        glVertex2f( (65-100)/100.0, -(87-100)/100.0);
        glVertex2f( (88-100)/100.0, -(146-100)/100.0);
        glVertex2f( (155-100)/100.0, -(148-100)/100.0);
    glEnd();
    glutSwapBuffers();

沒有留言:

張貼留言