arcRotateCameraInputsManager.ts 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. import { ArcRotateCamera } from "./arcRotateCamera";
  2. import { ArcRotateCameraPointersInput } from "../Cameras/Inputs/arcRotateCameraPointersInput";
  3. import { ArcRotateCameraKeyboardMoveInput } from "../Cameras/Inputs/arcRotateCameraKeyboardMoveInput";
  4. import { ArcRotateCameraMouseWheelInput } from "../Cameras/Inputs/arcRotateCameraMouseWheelInput";
  5. import { CameraInputsManager } from "../Cameras/cameraInputsManager";
  6. /**
  7. * Default Inputs manager for the ArcRotateCamera.
  8. * It groups all the default supported inputs for ease of use.
  9. * @see https://doc.babylonjs.com/how_to/customizing_camera_inputs
  10. */
  11. export class ArcRotateCameraInputsManager extends CameraInputsManager<ArcRotateCamera> {
  12. /**
  13. * Instantiates a new ArcRotateCameraInputsManager.
  14. * @param camera Defines the camera the inputs belong to
  15. */
  16. constructor(camera: ArcRotateCamera) {
  17. super(camera);
  18. }
  19. /**
  20. * Add mouse wheel input support to the input manager.
  21. * @returns the current input manager
  22. */
  23. public addMouseWheel(): ArcRotateCameraInputsManager {
  24. this.add(new ArcRotateCameraMouseWheelInput());
  25. return this;
  26. }
  27. /**
  28. * Add pointers input support to the input manager.
  29. * @returns the current input manager
  30. */
  31. public addPointers(): ArcRotateCameraInputsManager {
  32. this.add(new ArcRotateCameraPointersInput());
  33. return this;
  34. }
  35. /**
  36. * Add keyboard input support to the input manager.
  37. * @returns the current input manager
  38. */
  39. public addKeyboard(): ArcRotateCameraInputsManager {
  40. this.add(new ArcRotateCameraKeyboardMoveInput());
  41. return this;
  42. }
  43. }