begin process at 2012 05 27 15:02:31
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

OpenGL

 > COUR OPENGL 3 PAR SKONE

COUR OPENGL 3 PAR SKONE


 Information sur la source

Note :
2,2 / 10 - par 5 personnes
2,20 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :OpenGL Niveau :Initié Date de création :08/12/2002 Date de mise à jour :08/12/2002 17:57:32 Vu :4 307

Auteur : skone007

Ecrire un message privé
Commentaire sur cette source (7)
Ajouter un commentaire et/ou une note

 Description

faire das ligne et des pointier tirer

Source

  • #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;
  • }
#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


 Sources du même auteur

Source avec Zip Source avec une capture RÉSOLUTION NUMERIQUE
Source avec Zip Source avec une capture MOTEUR PHYSIQUE : SOFT BODY (CORPS DEFORMABLE, MASSE-RESSORT...
Source avec Zip Source avec une capture DECALER L'ENCODAGE D'UN BMP
CONVERTIR MINUSCULE EN MAJUSCULE ET INVERSSEMENT SANS "STRIN...
Source avec Zip ALGORITHME DU JEU DE DAME + AI

 Sources de la même categorie

Source avec Zip Source avec une capture AFFICHER DES COURBES DE BEZIER par shorzy
Source avec Zip Source avec une capture BASE/MOTEUR 3D EN QT/OPENGL (COMPLET ET FONCTIONNEL!) POUR U... par envi33
Source avec Zip Source avec une capture CLASSE AVEC OPENGL - OBJETS 3D ET ANIMATIONS par rasta63
Source avec Zip Source avec une capture LETTRES 3D AVEC OPENGL ET QT par opossum_farceur
Source avec Zip CUBE 3D GLUT32 VC++ ET DEVC++ par bobby03

Commentaires et avis

Commentaire de LordBob le 08/12/2002 20:52:07

toujours pas de commentaire...

Commentaire de skone007 le 16/12/2002 10:03:29

t'as remarquer toi aussi

Commentaire de bouba le 12/01/2003 00:11:10

Pas cool de piquer les sources des cours de l'"official guide to OpenGL Programming", je trouve que tu aurais au moins pu expliquer comment marche les pointillés.

Commentaire de skone007 le 21/01/2004 09:02:46

j'ai rien copier C inclue ds la lib donc fo utiliser :D bon merci pour la note qd m^me

Commentaire de Kirua le 27/01/2004 07:43:07

est-ce qu'il était marqué /* SKone production */ dans le guide officiel?

Commentaire de nepi le 04/08/2004 21:33:29

BwahahAhah allez voir les autres !!!

Commentaire de aymenk le 07/09/2011 00:10:42 7/10

Bonne idée d'utilisé les Macro comme 'drawLine'

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,076 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales