Guest User

Untitled

a guest
Jan 21st, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.55 KB | None | 0 0
  1. void SpecialKeys(int key, int x, int y)
  2. {
  3.     int state;
  4.     state = glutGetModifiers();
  5.  
  6.     if(state & GLUT_ACTIVE_SHIFT){ //shift be
  7.         switch(key){
  8.             case GLUT_KEY_UP: //zoom in
  9.                 nRange = nRange * 0.75;
  10.                 updateScreenPerspective();
  11.             break;
  12.  
  13.             case GLUT_KEY_DOWN: //zoom out
  14.                 nRange = nRange * 1.33;
  15.                 updateScreenPerspective();
  16.             break;
  17.  
  18.             case GLUT_KEY_F1:
  19.                 titleOFF = !titleOFF;
  20.             break;
  21.  
  22.             case GLUT_KEY_F2:
  23.                 rotajto--;
  24.                 if(rotajto < 0) rotajto = 0;
  25.             break;
  26.  
  27.             case GLUT_KEY_F3:
  28.                 rotkapu--;
  29.                 if(rotkapu < 0) rotkapu = 0;
  30.             break;
  31.         }  
  32.     }else{
  33.         switch(key){
  34.             case GLUT_KEY_UP:
  35.                 xRot-= 5.0f;
  36.                 if(xRot < 0.0f) xRot = 355.0f;
  37.             break;
  38.  
  39.             case GLUT_KEY_DOWN:
  40.                 xRot += 5.0f;
  41.                 if(xRot > 356.0f) xRot = 0.0f;
  42.             break;
  43.  
  44.             case GLUT_KEY_LEFT:
  45.                 yRot -= 5.0f;
  46.                 if(yRot < -1.0f) yRot = 355.0f;
  47.             break;
  48.  
  49.             case GLUT_KEY_RIGHT:
  50.                 yRot += 5.0f;
  51.                 if(yRot > 356.0f) yRot = 0.0f;
  52.             break;
  53.  
  54.             case GLUT_KEY_F1:
  55.                 titleOFF = !titleOFF;
  56.             break;
  57.  
  58.             case GLUT_KEY_F2:
  59.                 rotajto++;
  60.                 if(rotajto > 90) rotajto = 90;
  61.             break;
  62.  
  63.             case GLUT_KEY_F3:
  64.                 rotkapu++;
  65.                 if(rotkapu > 90) rotkapu = 90;
  66.             break;
  67.         }  
  68.     }
  69.  
  70.     /*printf("Funkciobillentyu lenyomva, kodja %d, pozicio (%d,%d). ", key, x, y);
  71.     ;
  72.     if(state & GLUT_ACTIVE_SHIFT)
  73.     printf("SHIFT lenyomva. ");
  74.     if(state & GLUT_ACTIVE_CTRL)
  75.     printf("CTRL lenyomva. ");
  76.     if(state & GLUT_ACTIVE_ALT)
  77.     printf("ALT lenyomva. ");
  78.     printf("\n");
  79.     fflush(stdout);*/
  80.  
  81.     // Refresh the Window
  82.     glutPostRedisplay();
  83. }
Add Comment
Please, Sign In to add comment