animate method

void animate(
  1. double elapsed
)

Implementation

void animate(double elapsed) {
  if (mouse.currentlyPressedButton(Mouse.LEFT) ||
      mouse.currentlyPressedButton(Mouse.MIDDLE)) {
    //azimuth += e.movement.x*0.01;
    //polar += e.movement.y*0.01;
    azimuth += mouse.moveDeltaX * 0.01;
    polar += mouse.moveDeltaY * 0.01;
  }

  if (keyboard.currentlyPressedKey(Keyboard.LEFT)) {
    azimuth += (0.03);
  } else if (keyboard.currentlyPressedKey(Keyboard.RIGHT)) {
    azimuth -= (0.03);
  }

  if (keyboard.currentlyPressedKey(Keyboard.UP)) {
    polar += (0.03);
  } else if (keyboard.currentlyPressedKey(Keyboard.DOWN)) {
    polar -= (0.03);
  }

  if (keyboard.currentlyPressedKey(Keyboard.PAGEUP)) {
    _radius *= 0.99;
  } else if (keyboard.currentlyPressedKey(Keyboard.PAGEDOWN)) {
    _radius *= 1.01;
  }

  if (keyboard.currentlyPressedKey(Keyboard.SPACE)) {
    azimuth = 0.0;
    polar = 0.0;
  }

  double d = mouse.wheelDeltaY.toDouble() * mouseWheelFactor;
  if (_radius - d > 0) _radius -= d;

  polar = polar.clamp(-Math.pi / 2 + 0.1, Math.pi / 2 - 0.1);
  setPosFromSpherical(_radius, azimuth, polar);
  addPosFromVec(_lookAtPos);
  lookAt(_lookAtPos);
  rollLeft(roll);
  keyboard.AfterFrameCleanup();
  mouse.AfterFrameCleanup();
}