2023年2月22日 星期三

擦 大哥_week02_點線面色彩

 複製以下程式碼

#include <GL/glut.h>

void display()

{

    glutSolidTeapot(0.3); ///劃出一個實心的茶壺 大小0.3

    glutSwapBuffers(); /// GLUT把畫面swap送到顯示的地方

}

int main(int argc, char *argv[])

{

glutInit(&argc, argv);

glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);

glutCreateWindow("GLUT Shapes");

glutDisplayFunc(display);

 glutMainLoop();

}

(記得刪除舊的程式碼)

召喚茶壺本人~



輸入程式碼

    glColor3f(1,1,0); 將茶壺上色




由此可知
    
    glColor3f(1,1,0);            顏色變換
    glutSolidTeapot(0.3);     茶壺本人大小





將 glutSolidTeapot(0.5); 刪掉 加上頂點(三角形)
加上程式碼

    
    glBegin(GL_POLYGON);
    glVertex2f(0,1);
    glVertex2f(-1,-1);
    glVertex2f(+1,-1);
    glEnd();




將 glColor3f(0,1,0); 刪除(單一填色) 
改成 (以頂點開始填色)
glColor3f(1,0,0); glVertex2f(0,1); 紅色頂點
glColor3f(0,1,0); glVertex2f(-1,-1); 綠色頂點
glColor3f(0,0,1); glVertex2f(+1,-1); 藍色頂點

   


畫皮卡丘 算四邊形(week02-2)

上網找皮卡丘的圖片
截圖至小畫家
設定200*200的圖片

左下角可看座標
換算一下
色彩可用滴管吸,編輯色彩
換算色彩法:除以255.0
座標位置口訣:減一半、除一半、y變負號






畫圓

新增 #include <math.h>(一定要放不然 sin cos 跑不出來)

輸入(建立一個scop myCircle)

void myCircle(float r,float x,float y)
{
    glBegin(GL_POLYGON);
    for(float a = 0; a<2*3.1415926; a+=0.01)
    {
        glVertex2f( r*cos(a)+x,r*sin(a)+y );
    }
    glEnd();
}


在display裡面新增 畫圓!!!!

    

    glColor3f(1,0,1); myCircle(0.6,0,0);正中央


    glColor3f(1,0,0); myCircle(0.3,0.5,0.5);左上

    glColor3f(0,1,0); myCircle(0.3,-0.5,0.5);右上

    glColor3f(1,1,0); myCircle(0.3,-0.5,-0.5);左下

    glColor3f(0,0,1); myCircle(0.3,0.5,-0.5);右下

 







沒有留言:

張貼留言