Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C/C++ - Coversione codice
Forum - C/C++ - Coversione codice

Avatar
Ocentral (Normal User)
Pro


Messaggi: 86
Iscritto: 25/12/2009

Segnala al moderatore
Postato alle 17:16
Mercoledì, 24/03/2010
Scusate ma chi sa convertire questo codice im delphi?

Codice sorgente - presumibilmente C++

  1. #include <GL/gl.h>
  2. #include <GL/glu.h>
  3. #include <GL/glut.h>
  4. #include <stdlib.h>
  5.  
  6. static GLfloat spin = 0.0;
  7.  
  8. void init(void)
  9. {
  10.    glClearColor (0.0, 0.0, 0.0, 0.0);
  11.    glShadeModel (GL_FLAT);
  12. }
  13.  
  14. void display(void)
  15. {
  16.    glClear(GL_COLOR_BUFFER_BIT);
  17.    glPushMatrix();
  18.    glRotatef(spin, 0.0, 0.0, 1.0);
  19.    glColor3f(1.0, 1.0, 1.0);
  20.    glRectf(-25.0, -25.0, 25.0, 25.0);
  21.    glPopMatrix();
  22.    glutSwapBuffers();
  23. }
  24.  
  25. void spinDisplay(void)
  26. {
  27.    spin = spin + 2.0;
  28.    if (spin > 360.0)
  29.       spin = spin - 360.0;
  30.    glutPostRedisplay();
  31. }
  32.  
  33. void reshape(int w, int h)
  34. {
  35.    glViewport (0, 0, (GLsizei) w, (GLsizei) h);
  36.    glMatrixMode(GL_PROJECTION);
  37.    glLoadIdentity();
  38.    glOrtho(-50.0, 50.0, -50.0, 50.0, -1.0, 1.0);
  39.    glMatrixMode(GL_MODELVIEW);
  40.    glLoadIdentity();
  41. }
  42.  
  43. void mouse(int button, int state, int x, int y)
  44. {
  45.    switch (button) {
  46.       case GLUT_LEFT_BUTTON:
  47.          if (state == GLUT_DOWN)
  48.             glutIdleFunc(spinDisplay);
  49.          break;
  50.       case GLUT_MIDDLE_BUTTON:
  51.          if (state == GLUT_DOWN)
  52.             glutIdleFunc(NULL);
  53.          break;
  54.       default:
  55.          break;
  56.    }
  57. }
  58.  
  59. /*
  60.  *  Request double buffer display mode.
  61.  *  Register mouse input callback functions
  62.  */
  63. int main(int argc, char** argv)
  64. {
  65.    glutInit(&argc, argv);
  66.    glutInitDisplayMode (GLUT_DOUBLE | GLUT_RGB);
  67.    glutInitWindowSize (250, 250);
  68.    glutInitWindowPosition (100, 100);
  69.    glutCreateWindow (argv[0]);
  70.    init ();
  71.    glutDisplayFunc(display);
  72.    glutReshapeFunc(reshape);
  73.    glutMouseFunc(mouse);
  74.    glutMainLoop();
  75.    return 0;
  76. }



Grazie.

EDIT by HeDo: Il codice va racchiuso tra tag code, e poi questa richiesta mi sembra abbastanza mal posta...

Ultima modifica effettuata da HeDo il 24/03/2010 alle 20:33


____________________________________________________________________________________
Esco dal teatro...

_______________________________________________________________________________
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5475
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 19:25
Mercoledì, 24/03/2010
Prova a vedere se questo

http://elvenware.sourceforge.net/OpenGLNotes.html

ti aiuta. Ma dovrai studiare e risolvere da solo ...

In realtà, il post dovrebbe essere nell'area del Pascal e dovrebbe riguardare l'uso di OpenGL con Delphi ... la richiesta che hai fatto invece, è una specie di "lavoro" ...


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
PM Quote
Avatar
Ocentral (Normal User)
Pro


Messaggi: 86
Iscritto: 25/12/2009

Segnala al moderatore
Postato alle 20:50
Mercoledì, 24/03/2010
lei e' un genio.
La ringrazio.


____________________________________________________________________________________
Esco dal teatro...

_______________________________________________________________________________
PM Quote
Avatar
nessuno (Normal User)
Guru^2


Messaggi: 5475
Iscritto: 03/01/2010

Segnala al moderatore
Postato alle 21:18
Mercoledì, 24/03/2010
Testo quotato

Postato originariamente da Ocentral:

lei e' un genio.
La ringrazio.



Di nulla ... anche se in un forum ci si da' del tu ... :)


Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
PM Quote