#include "stdlib.h"
#include "stdio.h"
#include "gl/glut.h"
int x=0,y=0,z=0;
int w=480, h=480;
void drawQuad() {
glBegin(GL_POLYGON);
glColor3f(0.0, 1.0, 0.0);
glVertex2f(77.,70.);
glVertex2f (80.,146.);
glColor3f(1.0, 0.0, 0.0);
glVertex2f(99.,90.);
glVertex2f(157.,90.);
glColor3f(0.0, 1.0, 1.0);
glVertex2f (110.,55.);
glVertex2f (128.,1.);
glVertex2f (80.,34.);
glVertex2f (32.,1.);
glColor3f(1.0, 1.0, 0.0);
glVertex2f (54.,55.);
glVertex2f (3.,90.);
glColor3f(0.0, 0.0, 1.0);
glVertex2f (63.,90.);
glVertex2f (80.,146.);
glEnd();
}
void mouse(int button, int state, int xmouse, int ymouse){
if(button==GLUT_LEFT_BUTTON && state==GLUT_DOWN){
x = xmouse-(w/2);
y = (h/2)-ymouse;
printf(" x = %d y = %d",x,y);
}
}
void renderScene(void){
glClear(GL_COLOR_BUFFER_BIT);
glClearColor(1,1,1,1);
glPushMatrix();
glTranslatef(x,y,z);
drawQuad();
glPopMatrix();
glFlush();
}
void timer(int value){
glutPostRedisplay();
glutTimerFunc(50,timer,0);
}
int main (int argc, char **argv){
glutInit(&argc, argv);
glutInitWindowPosition(100,100);
glutInitWindowSize(w,h);
glutCreateWindow("Interaksi Mouse");
gluOrtho2D(-w/2,w/2,-h/2,h/2);
glutDisplayFunc(renderScene);
glutMouseFunc(mouse);
glutTimerFunc(1,timer,0);
glutMainLoop();
}
#include "stdio.h"
#include "gl/glut.h"
int x=0,y=0,z=0;
int w=480, h=480;
void drawQuad() {
glBegin(GL_POLYGON);
glColor3f(0.0, 1.0, 0.0);
glVertex2f(77.,70.);
glVertex2f (80.,146.);
glColor3f(1.0, 0.0, 0.0);
glVertex2f(99.,90.);
glVertex2f(157.,90.);
glColor3f(0.0, 1.0, 1.0);
glVertex2f (110.,55.);
glVertex2f (128.,1.);
glVertex2f (80.,34.);
glVertex2f (32.,1.);
glColor3f(1.0, 1.0, 0.0);
glVertex2f (54.,55.);
glVertex2f (3.,90.);
glColor3f(0.0, 0.0, 1.0);
glVertex2f (63.,90.);
glVertex2f (80.,146.);
glEnd();
}
void mouse(int button, int state, int xmouse, int ymouse){
if(button==GLUT_LEFT_BUTTON && state==GLUT_DOWN){
x = xmouse-(w/2);
y = (h/2)-ymouse;
printf(" x = %d y = %d",x,y);
}
}
void renderScene(void){
glClear(GL_COLOR_BUFFER_BIT);
glClearColor(1,1,1,1);
glPushMatrix();
glTranslatef(x,y,z);
drawQuad();
glPopMatrix();
glFlush();
}
void timer(int value){
glutPostRedisplay();
glutTimerFunc(50,timer,0);
}
int main (int argc, char **argv){
glutInit(&argc, argv);
glutInitWindowPosition(100,100);
glutInitWindowSize(w,h);
glutCreateWindow("Interaksi Mouse");
gluOrtho2D(-w/2,w/2,-h/2,h/2);
glutDisplayFunc(renderScene);
glutMouseFunc(mouse);
glutTimerFunc(1,timer,0);
glutMainLoop();
}
0 comments:
Post a Comment