210315 week04
🔔 ❤️
畫茶壺的100種方法
印出座標的部分(1)
點擊出現的圖片,就會跑出相對應的位置
(更改部分為豆沙粉色)
#include <GL/glut.h>///(0)使用GLUT外掛
#include <stdio.h>///TODO
void display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );///清空
glutSolidTeapot(0.3);///實心茶壺(改變大小)
glutSwapBuffers();///交換兩倍的Buffers
}
void mouse(int button,int state,int x,int y)///TODO
{
printf("button:%d state:%d x:%d y:%d\n",button,state,x,y);
}///TODO:印出來
int main(int argc, char**argv)///???以前是int main()
{
glutInit(&argc,argv);///(1)GLUT初始設定
glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);///(2)顯示模式
glutCreateWindow("08160891我是JOJO");///(3)開窗
glutDisplayFunc(display);///(4)等一下要顯示的函式(display顯示函式)
glutMouseFunc(mouse);///TODO:(1)mouse滑鼠的程式
glutMainLoop();///(5)主要迴圈
}
印出座標的部分(2)(可偷小黑的程式碼來用)
加上這些程式碼如何啊?
void mouse
void mouse(int button,int state,int x,int y)///TODO
{
if(state==GLUT_DOWN)
{
printf(" glVertex3f((%d-150)/150.0,-(%d-150)/150.0,0);\n",x,y);
}
}///TODO:印出來
複(偷)製(個)小黑出現的程式碼
將偷來的程式碼放入void display函式當中>
就會出現...神奇的多邊形
放入void display函式
放入void display函式
放入void display函式
void display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );///清空
// glutSolidTeapot(0.3);///實心茶壺(改變大小)
glBegin(GL_POLYGON);///不規則形
glVertex3f((120-150)/150.0,-(129-150)/150.0,0);
glVertex3f((127-150)/150.0,-(130-150)/150.0,0);
glVertex3f((131-150)/150.0,-(129-150)/150.0,0);
glVertex3f((133-150)/150.0,-(126-150)/150.0,0);
glVertex3f((138-150)/150.0,-(122-150)/150.0,0);
glVertex3f((159-150)/150.0,-(122-150)/150.0,0);
glVertex3f((176-150)/150.0,-(130-150)/150.0,0);
glVertex3f((183-150)/150.0,-(134-150)/150.0,0);
glVertex3f((189-150)/150.0,-(143-150)/150.0,0);
glVertex3f((195-150)/150.0,-(156-150)/150.0,0);
glEnd();
glutSwapBuffers();///交換兩倍的Buffers
}
讓茶壺移動的100種方法
(1)茶壺跟著滑鼠的移動(緩慢版本)
用以下程式試試看吧!
(主要更改部分為豆沙粉色)
#include <GL/glut.h>///(0)使用GLUT外掛
#include <stdio.h>///TODO
float teapotX=0,teapotY=0;///TODO2:茶壺的座標
void display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT );///清空
glPushMatrix();
glTranslatef(teapotX,teapotY,0);
glutSolidTeapot(0.3);
glPopMatrix();
glEnd();
glutSwapBuffers();///交換兩倍的Buffers
}
void motion(int x,int y)
{
teapotX=(x-150)/150.0;
teapotY=-(y-150)/150.0;
}
int main(int argc, char**argv)///???以前是int main()
{
glutInit(&argc,argv);///(1)GLUT初始設定
glutInitDisplayMode(GLUT_DOUBLE | GLUT_DEPTH);///(2)顯示模式
glutCreateWindow("08160891我是JOJO");///(3)開窗
glutDisplayFunc(display);///(4)等一下要顯示的函式(display顯示函式)
//glutMouseFunc(mouse);///TODO:(1)mouse滑鼠的程式
glutMotionFunc(motion);///TODO:(1)mouse滑鼠的程式
glutMainLoop();///(5)主要迴圈
}
(2)茶壺跟著滑鼠的移動(快速版本)
teapotX=(x-150)/150.0;
teapotY=-(y-150)/150.0;
下面一行加
display();
以下圖片有 👉詳細解釋👈
小葉老師提供的小遊戲!
X軸改變數字(觀察車子移動方向)
(可利用安培右手定則來幫助理解)
Y軸改變數字(觀察車子移動方向)
Z軸改變數字(觀察車子移動方向)
X、Y軸改變數字(觀察車子移動方向)
X、Y軸改變數字(X改為負數)(觀察車子移動方向)
Github~建立自己的第一個網站吧!
左上角New建立一個新的主題
(1)名稱是自己的帳號明加上github.io(不能打錯)
(2)打上自我介紹
(3)照著下面的步驟打勾
自我介紹的部分(編輯篇~)
自我介紹的部分(結果篇~)
選取main>View all branches
打gh-pages(不能打錯)
恭喜你設定好自己的網頁了!!!
上網找喜歡的圖片,將其網址複製>直接貼到編輯區
ex.[名稱](圖片網址)>要點"名稱"才會出現圖片
>在完成頁面就能夠看到圖片




















沒有留言:
張貼留言