예제 #1
0
파일: mech.c 프로젝트: kendallb/scitech-mgl
static void handleASCIICode(
    unsigned char key)
{
    switch (key) {
        /* start arm control functions */
        case 'q':
            shoulder2Subtract();
            break;
        case 'a':
            shoulder2Add();
            break;
        case 'w':
            shoulder1Subtract();
            break;
        case 's':
            shoulder1Add();
            break;
        case '2':
            shoulder3Add();
            break;
        case '1':
            shoulder4Add();
            break;
        case '4':
            shoulder3Subtract();
            break;
        case '3':
            shoulder4Subtract();
            break;
        case 'z':
            lat2Raise();
            break;
        case 'Z':
            lat2Lower();
            break;
        case 'x':
            lat1Raise();
            break;
        case 'X':
            lat1Lower();
            break;
        case 'A':
            elbow2Add();
            break;
        case 'Q':
            elbow2Subtract();
            break;
        case 'S':
            elbow1Add();
            break;
        case 'W':
            elbow1Subtract();
            break;
            /* end of arm control functions */

            /* start of torso control functions */
        case 'd':
            RotateAdd();
            break;
        case 'g':
            RotateSubtract();
            break;
        case 'r':
            MechTiltAdd();
            break;
        case 'f':
            MechTiltSubtract();
            break;
            /* end of torso control functions */

            /* start of leg control functions */
        case 'h':
            RaiseLeg2Forward();
            break;
        case 'y':
            LowerLeg2Backwards();
            break;
        case 'Y':
            RaiseLeg2Outwards();
            break;
        case 'H':
            LowerLeg2Inwards();
            break;
        case 'j':
            RaiseLeg1Forward();
            break;
        case 'u':
            LowerLeg1Backwards();
            break;
        case 'U':
            RaiseLeg1Outwards();
            break;
        case 'J':
            LowerLeg1Inwards();
            break;
        case 'N':
            Heel2Add();
            break;
        case 'n':
            Heel2Subtract();
            break;
        case 'M':
            Heel1Add();
            break;
        case 'm':
            Heel1Subtract();
            break;
        case 'k':
            Ankle2Add();
            break;
        case 'K':
            Ankle2Subtract();
            break;
        case 'l':
            Ankle1Add();
            break;
        case 'L':
            Ankle1Subtract();
            break;
            /* end of leg control functions */

            /* start of light source position functions */
        case 'p':
            LightTurnRight();
            break;
        case 'i':
            LightTurnLeft();
            break;
        case 'o':
            LightForwards();
            break;
        case '9':
            LightBackwards();
            break;
            /* end of light source position functions */
            }
}
예제 #2
0
파일: mech.c 프로젝트: lain-dono/TinyGL
GLenum key(int key, GLenum mask) {

	int i = 0;

	switch (key) {
	/* start arm control functions */
	case 'q': {
		shoulder2Subtract();
		i++;
	}
	break;

	case 'a': {
		shoulder2Add();
		i++;
	}
	break;

	case 'w': {
		shoulder1Subtract();
		i++;
	}
	break;

	case 's': {
		shoulder1Add();
		i++;
	}
	break;

	case '2': {
		shoulder3Add();
		i++;
	}
	break;

	case '1': {
		shoulder4Add();
		i++;
	}
	break;

	case '4': {
		shoulder3Subtract();
		i++;
	}
	break;

	case '3': {
		shoulder4Subtract();
		i++;
	}
	break;

	case 'z': {
		lat2Raise();
		i++;
	}
	break;

	case 'Z': {
		lat2Lower();
		i++;
	}
	break;

	case 'x': {
		lat1Raise();
		i++;
	}
	break;

	case 'X': {
		lat1Lower();
		i++;
	}
	break;

	case 'A': {
		elbow2Add();
		i++;
	}
	break;

	case 'Q': {
		elbow2Subtract();
		i++;
	}
	break;

	case 'S': {
		elbow1Add();
		i++;
	}
	break;

	case 'W': {
		elbow1Subtract();
		i++;
	}
	break;
		/* end of arm control functions */

	/* start of torso control functions */
	case 'd': {
		RotateAdd();
		i++;
	}
	break;

	case 'g': {
		RotateSubtract();
		i++;
	}
	break;

	case 'r': {
		MechTiltAdd();
		i++;
	}
	break;

	case 'f': {
		MechTiltSubtract();
		i++;
	}
	break;
		/* end of torso control functions */

	/* start of leg control functions */
	case 'h': {
		RaiseLeg2Forward();
		i++;
	}
	break;

	case 'y': {
		LowerLeg2Backwards();
		i++;
	}
	break;

	case 'Y': {
		RaiseLeg2Outwards();
		i++;
	}
	break;

	case 'H': {
		LowerLeg2Inwards();
		i++;
	}
	break;

	case 'j': {
		RaiseLeg1Forward();
		i++;
	}
	break;

	case 'u': {
		LowerLeg1Backwards();
		i++;
	}
	break;

	case 'U': {
		RaiseLeg1Outwards();
		i++;
	}
	break;

	case 'J': {
		LowerLeg1Inwards();
		i++;
	}
	break;

	case 'N': {
		Heel2Add();
		i++;
	}
	break;

	case 'n': {
		Heel2Subtract();
		i++;
	}
	break;

	case 'M': {
		Heel1Add();
		i++;
	}
	break;

	case 'm': {
		Heel1Subtract();
		i++;
	}
	break;

	case 'k': {
		Ankle2Add();
		i++;
	}
	break;

	case 'K': {
		Ankle2Subtract();
		i++;
	}
	break;

	case 'l': {
		Ankle1Add();
		i++;
	}
	break;

	case 'L': {
		Ankle1Subtract();
		i++;
	}
	break;
		/* end of leg control functions */

	/* start of light source position functions */
	case 'p': {
		LightTurnRight();
		i++;
	}
	break;

	case 'i': {
		LightTurnLeft();
		i++;
	}
	break;

	case 'o': {
		LightForwards();
		i++;
	}
	break;

	case '9': {
		LightBackwards();
		i++;
	}
	break;
		/* end of light source position functions */

	/* start of misc functions */
	case 't':
		Toggle();
		break;

	case KEY_LEFT:
		TurnLeft();
		break;

	case KEY_RIGHT:
		TurnRight();
		break;

	case KEY_UP:
		TurnBackwards();
		break;

	case KEY_DOWN:
		TurnForwards();
		break;

	case ' ':
		FireCannon();
	}

	return 0;
}
예제 #3
0
파일: glutmech.c 프로젝트: arnelh/Examples
/* ARGSUSED1 */
void
keyboard(unsigned char key, int x, int y)
{

  int i = 0;

  switch (key) {
    /* start arm control functions */
  case 'q':{
      shoulder2Subtract();
      i++;
    }
    break;
  case 'a':{
      shoulder2Add();
      i++;
    }
    break;
  case 'w':{
      shoulder1Subtract();
      i++;
    }
    break;
  case 's':{
      shoulder1Add();
      i++;
    }
    break;
  case '2':{
      shoulder3Add();
      i++;
    }
    break;
  case '1':{
      shoulder4Add();
      i++;
    }
    break;
  case '4':{
      shoulder3Subtract();
      i++;
    }
    break;
  case '3':{
      shoulder4Subtract();
      i++;
    }
    break;

  case 'z':{
      lat2Raise();
      i++;
    }
    break;
  case 'Z':{
      lat2Lower();
      i++;
    }
    break;
  case 'x':{
      lat1Raise();
      i++;
    }
    break;
  case 'X':{
      lat1Lower();
      i++;
    }
    break;

  case 'A':{
      elbow2Add();
      i++;
    }
    break;
  case 'Q':{
      elbow2Subtract();
      i++;
    }
    break;
  case 'S':{
      elbow1Add();
      i++;
    }
    break;
  case 'W':{
      elbow1Subtract();
      i++;
    }
    break;
    /* end of arm control functions */

    /* start of torso control functions */
  case 'd':{
      RotateAdd();
      i++;
    }
    break;
  case 'g':{
      RotateSubtract();
      i++;
    }
    break;
  case 'r':{
      MechTiltAdd();
      i++;
    }
    break;
  case 'f':{
      MechTiltSubtract();
      i++;
    }
    break;
    /* end of torso control functions */

    /* start of leg control functions */
  case 'h':{
      RaiseLeg2Forward();
      i++;
    }
    break;
  case 'y':{
      LowerLeg2Backwards();
      i++;
    }
    break;
  case 'Y':{
      RaiseLeg2Outwards();
      i++;
    }
    break;
  case 'H':{
      LowerLeg2Inwards();
      i++;
    }
    break;

  case 'j':{
      RaiseLeg1Forward();
      i++;
    }
    break;
  case 'u':{
      LowerLeg1Backwards();
      i++;
    }
    break;
  case 'U':{
      RaiseLeg1Outwards();
      i++;
    }
    break;
  case 'J':{
      LowerLeg1Inwards();
      i++;
    }
    break;

  case 'N':{
      Heel2Add();
      i++;
    }
    break;
  case 'n':{
      Heel2Subtract();
      i++;
    }
    break;
  case 'M':{
      Heel1Add();
      i++;
    }
    break;
  case 'm':{
      Heel1Subtract();
      i++;
    }
    break;

  case 'k':{
      Ankle2Add();
      i++;
    }
    break;
  case 'K':{
      Ankle2Subtract();
      i++;
    }
    break;
  case 'l':{
      Ankle1Add();
      i++;
    }
    break;
  case 'L':{
      Ankle1Subtract();
      i++;
    }
    break;
    /* end of leg control functions */

    /* start of light source position functions */
  case 'p':{
      LightTurnRight();
      i++;
    }
    break;
  case 'i':{
      LightTurnLeft();
      i++;
    }
    break;
  case 'o':{
      LightForwards();
      i++;
    }
    break;
  case '9':{
      LightBackwards();
      i++;
    }
    break;
    /* end of light source position functions */
  }
  if (i)
    glutPostRedisplay();
}