three-stdlib 2.8.6 → 2.8.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/defineProperty"),t=require("three");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@babel/runtime/helpers/defineProperty"),t=require("three");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var i=o(e);class n extends t.EventDispatcher{constructor(e,o){super(),i.default(this,"camera",void 0),i.default(this,"domElement",void 0),i.default(this,"isLocked",!1),i.default(this,"minPolarAngle",0),i.default(this,"maxPolarAngle",Math.PI),i.default(this,"changeEvent",{type:"change"}),i.default(this,"lockEvent",{type:"lock"}),i.default(this,"unlockEvent",{type:"unlock"}),i.default(this,"euler",new t.Euler(0,0,0,"YXZ")),i.default(this,"PI_2",Math.PI/2),i.default(this,"vec",new t.Vector3),i.default(this,"onMouseMove",(e=>{if(!this.domElement||!1===this.isLocked)return;const t=e.movementX||e.mozMovementX||e.webkitMovementX||0,o=e.movementY||e.mozMovementY||e.webkitMovementY||0;this.euler.setFromQuaternion(this.camera.quaternion),this.euler.y-=.002*t,this.euler.x-=.002*o,this.euler.x=Math.max(this.PI_2-this.maxPolarAngle,Math.min(this.PI_2-this.minPolarAngle,this.euler.x)),this.camera.quaternion.setFromEuler(this.euler),this.dispatchEvent(this.changeEvent)})),i.default(this,"onPointerlockChange",(()=>{this.domElement&&(this.domElement.ownerDocument.pointerLockElement===this.domElement?(this.dispatchEvent(this.lockEvent),this.isLocked=!0):(this.dispatchEvent(this.unlockEvent),this.isLocked=!1))})),i.default(this,"onPointerlockError",(()=>{console.error("THREE.PointerLockControls: Unable to use Pointer Lock API")})),i.default(this,"connect",(e=>{this.domElement=e||this.domElement,this.domElement&&(this.domElement.ownerDocument.addEventListener("mousemove",this.onMouseMove),this.domElement.ownerDocument.addEventListener("pointerlockchange",this.onPointerlockChange),this.domElement.ownerDocument.addEventListener("pointerlockerror",this.onPointerlockError))})),i.default(this,"disconnect",(()=>{this.domElement&&(this.domElement.ownerDocument.removeEventListener("mousemove",this.onMouseMove),this.domElement.ownerDocument.removeEventListener("pointerlockchange",this.onPointerlockChange),this.domElement.ownerDocument.removeEventListener("pointerlockerror",this.onPointerlockError))})),i.default(this,"dispose",(()=>{this.disconnect()})),i.default(this,"getObject",(()=>this.camera)),i.default(this,"direction",new t.Vector3(0,0,-1)),i.default(this,"getDirection",(e=>e.copy(this.direction).applyQuaternion(this.camera.quaternion))),i.default(this,"moveForward",(e=>{this.vec.setFromMatrixColumn(this.camera.matrix,0),this.vec.crossVectors(this.camera.up,this.vec),this.camera.position.addScaledVector(this.vec,e)})),i.default(this,"moveRight",(e=>{this.vec.setFromMatrixColumn(this.camera.matrix,0),this.camera.position.addScaledVector(this.vec,e)})),i.default(this,"lock",(()=>{this.domElement&&this.domElement.requestPointerLock()})),i.default(this,"unlock",(()=>{this.domElement&&this.domElement.ownerDocument.exitPointerLock()})),this.domElement=o,this.camera=e,this.domElement&&this.connect(this.domElement)}}exports.PointerLockControls=n;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Camera, EventDispatcher, Vector3 } from 'three';
|
|
2
2
|
declare class PointerLockControls extends EventDispatcher {
|
|
3
3
|
private camera;
|
|
4
|
-
domElement
|
|
4
|
+
domElement?: HTMLElement;
|
|
5
5
|
isLocked: boolean;
|
|
6
6
|
minPolarAngle: number;
|
|
7
7
|
maxPolarAngle: number;
|
|
@@ -11,11 +11,11 @@ declare class PointerLockControls extends EventDispatcher {
|
|
|
11
11
|
private euler;
|
|
12
12
|
private PI_2;
|
|
13
13
|
private vec;
|
|
14
|
-
constructor(camera: Camera, domElement
|
|
14
|
+
constructor(camera: Camera, domElement?: HTMLElement);
|
|
15
15
|
private onMouseMove;
|
|
16
16
|
private onPointerlockChange;
|
|
17
17
|
private onPointerlockError;
|
|
18
|
-
connect: () => void;
|
|
18
|
+
connect: (domElement?: HTMLElement | undefined) => void;
|
|
19
19
|
disconnect: () => void;
|
|
20
20
|
dispose: () => void;
|
|
21
21
|
private getObject;
|
|
@@ -6,7 +6,7 @@ class PointerLockControls extends EventDispatcher {
|
|
|
6
6
|
// Range is 0 to Math.PI radians
|
|
7
7
|
// radians
|
|
8
8
|
// radians
|
|
9
|
-
constructor(camera,
|
|
9
|
+
constructor(camera, _domElement) {
|
|
10
10
|
super();
|
|
11
11
|
|
|
12
12
|
_defineProperty(this, "camera", void 0);
|
|
@@ -38,7 +38,7 @@ class PointerLockControls extends EventDispatcher {
|
|
|
38
38
|
_defineProperty(this, "vec", new Vector3());
|
|
39
39
|
|
|
40
40
|
_defineProperty(this, "onMouseMove", event => {
|
|
41
|
-
if (this.isLocked === false) return;
|
|
41
|
+
if (!this.domElement || this.isLocked === false) return;
|
|
42
42
|
const movementX = event.movementX || event.mozMovementX || event.webkitMovementX || 0;
|
|
43
43
|
const movementY = event.movementY || event.mozMovementY || event.webkitMovementY || 0;
|
|
44
44
|
this.euler.setFromQuaternion(this.camera.quaternion);
|
|
@@ -50,6 +50,8 @@ class PointerLockControls extends EventDispatcher {
|
|
|
50
50
|
});
|
|
51
51
|
|
|
52
52
|
_defineProperty(this, "onPointerlockChange", () => {
|
|
53
|
+
if (!this.domElement) return;
|
|
54
|
+
|
|
53
55
|
if (this.domElement.ownerDocument.pointerLockElement === this.domElement) {
|
|
54
56
|
this.dispatchEvent(this.lockEvent);
|
|
55
57
|
this.isLocked = true;
|
|
@@ -63,13 +65,16 @@ class PointerLockControls extends EventDispatcher {
|
|
|
63
65
|
console.error('THREE.PointerLockControls: Unable to use Pointer Lock API');
|
|
64
66
|
});
|
|
65
67
|
|
|
66
|
-
_defineProperty(this, "connect",
|
|
68
|
+
_defineProperty(this, "connect", domElement => {
|
|
69
|
+
this.domElement = domElement || this.domElement;
|
|
70
|
+
if (!this.domElement) return;
|
|
67
71
|
this.domElement.ownerDocument.addEventListener('mousemove', this.onMouseMove);
|
|
68
72
|
this.domElement.ownerDocument.addEventListener('pointerlockchange', this.onPointerlockChange);
|
|
69
73
|
this.domElement.ownerDocument.addEventListener('pointerlockerror', this.onPointerlockError);
|
|
70
74
|
});
|
|
71
75
|
|
|
72
76
|
_defineProperty(this, "disconnect", () => {
|
|
77
|
+
if (!this.domElement) return;
|
|
73
78
|
this.domElement.ownerDocument.removeEventListener('mousemove', this.onMouseMove);
|
|
74
79
|
this.domElement.ownerDocument.removeEventListener('pointerlockchange', this.onPointerlockChange);
|
|
75
80
|
this.domElement.ownerDocument.removeEventListener('pointerlockerror', this.onPointerlockError);
|
|
@@ -100,21 +105,18 @@ class PointerLockControls extends EventDispatcher {
|
|
|
100
105
|
});
|
|
101
106
|
|
|
102
107
|
_defineProperty(this, "lock", () => {
|
|
108
|
+
if (!this.domElement) return;
|
|
103
109
|
this.domElement.requestPointerLock();
|
|
104
110
|
});
|
|
105
111
|
|
|
106
112
|
_defineProperty(this, "unlock", () => {
|
|
113
|
+
if (!this.domElement) return;
|
|
107
114
|
this.domElement.ownerDocument.exitPointerLock();
|
|
108
115
|
});
|
|
109
116
|
|
|
110
|
-
|
|
111
|
-
console.warn('THREE.PointerLockControls: The second parameter "domElement" is now mandatory.');
|
|
112
|
-
domElement = document.body;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
this.domElement = domElement;
|
|
117
|
+
this.domElement = _domElement;
|
|
116
118
|
this.camera = camera;
|
|
117
|
-
this.connect();
|
|
119
|
+
if (this.domElement) this.connect(this.domElement);
|
|
118
120
|
}
|
|
119
121
|
|
|
120
122
|
}
|