index.d.ts 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. /// <reference types="three" />
  2. import * as THREE from 'three';
  3. /**
  4. * @author qiao / https://github.com/qiao
  5. * @author mrdoob / http://mrdoob.com
  6. * @author alteredq / http://alteredqualia.com/
  7. * @author WestLangley / http://github.com/WestLangley
  8. * @author erich666 / http://erichaines.com
  9. * @author nicolaspanel / http://github.com/nicolaspanel
  10. *
  11. * This set of controls performs orbiting, dollying (zooming), and panning.
  12. * Unlike TrackballControls, it maintains the "up" direction object.up (+Y by default).
  13. * Orbit - left mouse / touch: one finger move
  14. * Zoom - middle mouse, or mousewheel / touch: two finger spread or squish
  15. * Pan - right mouse, or arrow keys / touch: three finger swipe
  16. */
  17. export declare class OrbitControls extends THREE.EventDispatcher {
  18. object: THREE.Camera;
  19. domElement: HTMLElement | HTMLDocument;
  20. window: Window;
  21. enabled: boolean;
  22. target: THREE.Vector3;
  23. enableZoom: boolean;
  24. zoomSpeed: number;
  25. minDistance: number;
  26. maxDistance: number;
  27. enableRotate: boolean;
  28. rotateSpeed: number;
  29. enablePan: boolean;
  30. keyPanSpeed: number;
  31. autoRotate: boolean;
  32. autoRotateSpeed: number;
  33. minZoom: number;
  34. maxZoom: number;
  35. minPolarAngle: number;
  36. maxPolarAngle: number;
  37. minAzimuthAngle: number;
  38. maxAzimuthAngle: number;
  39. enableKeys: boolean;
  40. keys: {
  41. LEFT: number;
  42. UP: number;
  43. RIGHT: number;
  44. BOTTOM: number;
  45. };
  46. mouseButtons: {
  47. ORBIT: THREE.MOUSE;
  48. ZOOM: THREE.MOUSE;
  49. PAN: THREE.MOUSE;
  50. };
  51. enableDamping: boolean;
  52. dampingFactor: number;
  53. private spherical;
  54. private sphericalDelta;
  55. private scale;
  56. private target0;
  57. private position0;
  58. private zoom0;
  59. private state;
  60. private panOffset;
  61. private zoomChanged;
  62. private rotateStart;
  63. private rotateEnd;
  64. private rotateDelta;
  65. private panStart;
  66. private panEnd;
  67. private panDelta;
  68. private dollyStart;
  69. private dollyEnd;
  70. private dollyDelta;
  71. private updateLastPosition;
  72. private updateOffset;
  73. private updateQuat;
  74. private updateLastQuaternion;
  75. private updateQuatInverse;
  76. private panLeftV;
  77. private panUpV;
  78. private panInternalOffset;
  79. private onContextMenu;
  80. private onMouseUp;
  81. private onMouseDown;
  82. private onMouseMove;
  83. private onMouseWheel;
  84. private onTouchStart;
  85. private onTouchEnd;
  86. private onTouchMove;
  87. private onKeyDown;
  88. constructor(object: THREE.Camera, domElement?: HTMLElement, domWindow?: Window);
  89. update(): boolean;
  90. panLeft(distance: number, objectMatrix: any): void;
  91. panUp(distance: number, objectMatrix: any): void;
  92. pan(deltaX: number, deltaY: number): void;
  93. dollyIn(dollyScale: any): void;
  94. dollyOut(dollyScale: any): void;
  95. getAutoRotationAngle(): number;
  96. getZoomScale(): number;
  97. rotateLeft(angle: number): void;
  98. rotateUp(angle: number): void;
  99. getPolarAngle(): number;
  100. getAzimuthalAngle(): number;
  101. dispose(): void;
  102. reset(): void;
  103. readonly center: THREE.Vector3;
  104. noZoom: boolean;
  105. }