1.
#include <GL/glut.h>
#include<stdio.h>
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)
{
printf("button:%d state:%d x:%d y:%d\n",button,state,x,y);
}///TODO:印出來....
int main( int argc,char ** argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_DOUBLE|GLUT_DEPTH);
glutCreateWindow("week04 mouse");
glutDisplayFunc(display);///display顯示函式
glutMouseFunc(mouse);///TODO:(1)mouse滑鼠的程式
glutMainLoop();
}
2.
利用該圖的程式碼找出滑鼠點的各個位置的座標
然後將座標程式碼放進程式碼內
3.
#include <GL/glut.h>
#include<stdio.h>///TODO:
float teapotx=0,teapotY=0;
void display()
{
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT); ///清空
glPushMatrix();///TODO2:矩陣備份
glTranslatef(teapotx,teapotY,0);///TODO2:照著座標移動
glutSolidTeapot(0.3);
glPopMatrix();///TODO2:矩陣還原
glEnd();
glutSwapBuffers(); ///交換兩倍的Buffers
}
///void mouse(int button,int state,int x,int y)///TODO:
///{
///
///}
void motion(int x,int y)
{
teapotx=(x-150)/150.0;
teapotY=-(y-150)/150.0;
display();
}
int main(int argc,char**argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_DOUBLE|GLUT_DEPTH);
glutCreateWindow("week04 mouse");
glutDisplayFunc(display);
///glutMouseFunc(mouse);
glutMotionFunc(motion);///TODO:2準備mouse
glutMainLoop();
}
4.
軸
5.github
登入github>創新的資料庫
>打上自創的網址

>
跟著圖做>

>
沒有留言:
張貼留言