faire das ligne et des pointier tirer
Source / Exemple :
#include <GL/glut.h>
#include <stdlib.h>
/*SKone production*/
#define drawOneLine(x1,y1,x2,y2) glBegin(GL_LINES); glVertex2f((x1),(y1)); glVertex2f((x2),(y2)); glEnd();
void init()
{
glClearColor(0.0, 0.0, 0.0, 0.0);
glShadeModel(GL_FLAT);
}
void display(void)
{
int i;
glClear(GL_COLOR_BUFFER_BIT);
glColor3f(1.0, 1.0, 1.0);
glEnable(GL_LINE_STIPPLE);
glLineStipple(1, 0x0101);//point
drawOneLine(50.0, 125.0, 150.0, 125.0);
glLineStipple(1, 0x00FF);//tiret
drawOneLine(150.0, 125.0, 250.0, 125.0);
glLineStipple(1, 0x1C47);//tiret/point/tiret
drawOneLine(250.0, 125.0, 350.0, 125.0);
glLineStipple(1, 0x0101);
drawOneLine(50.0, 100.0, 150.0, 100.0);
glLineStipple(1, 0x00FF);
drawOneLine(150.0, 100.0, 250.0, 100.0);
glLineStipple(1, 0x1C47);
drawOneLine(250.0, 100.0, 350.0, 100.0);
glLineStipple(1, 0x1C47);
glBegin(GL_LINE_STRIP);
for (i = 0; i < 7; i++)
glVertex2f((50.0 + ((GLfloat) i * 50.0)), 50.0);
glEnd();
for (i = 0; i < 6; i++)
drawOneLine(50.0 + ((GLfloat) i * 50.0), 50.0,
50.0 + ((GLfloat)(i + 1) * 50.0), 50.0);
glLineStipple(5, 0x1C47);
drawOneLine(50.0, 25.0, 350.0, 25.0);
glDisable(GL_LINE_STIPPLE);
glFlush();
}
void reshape(int w, int h)
{
glViewport(0, 0, w, h);
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluOrtho2D(0.0, (GLdouble) w, 0.0, (GLdouble) h);
}
int main(int argc, char** argv)
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize(400, 150);
glutInitWindowPosition(100, 100);
glutCreateWindow(argv[0]);
init();
glutDisplayFunc(display);
glutReshapeFunc(reshape);
glutMainLoop();
return 0;
}
Conclusion :
presque rien de nouveau toujousr en 2D en douceur ...
o proch'1 kour
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.