@vived/app 2.29.0 → 2.30.0
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.
- package/lib/ValueObjects/Matrix.d.ts +3 -0
- package/lib/ValueObjects/Matrix.js +42 -0
- package/package.json +1 -1
- package/lib/Core/BaseApp/Boundary.d.ts +0 -49
- package/lib/Core/BaseApp/Boundary.js +0 -2
- package/lib/Core/BaseApp/Entity.d.ts +0 -11
- package/lib/Core/BaseApp/Entity.js +0 -2
- package/lib/Core/BaseApp/Errors/ErrorDuplicateSystemName.d.ts +0 -3
- package/lib/Core/BaseApp/Errors/ErrorDuplicateSystemName.js +0 -12
- package/lib/Core/BaseApp/Errors/ErrorNoHostHandler.d.ts +0 -3
- package/lib/Core/BaseApp/Errors/ErrorNoHostHandler.js +0 -10
- package/lib/Core/BaseApp/Errors/ErrorUnsupportedVersionNumber.d.ts +0 -3
- package/lib/Core/BaseApp/Errors/ErrorUnsupportedVersionNumber.js +0 -10
- package/lib/Core/BaseApp/Errors/index.d.ts +0 -3
- package/lib/Core/BaseApp/Errors/index.js +0 -15
- package/lib/Core/BaseApp/UseCase.d.ts +0 -43
- package/lib/Core/BaseApp/UseCase.js +0 -250
- package/lib/Core/BaseAppState/Boundary.d.ts +0 -14
- package/lib/Core/BaseAppState/Boundary.js +0 -2
- package/lib/Core/BaseAppState/Entity.d.ts +0 -5
- package/lib/Core/BaseAppState/Entity.js +0 -2
- package/lib/Core/BaseAppState/UseCase.d.ts +0 -16
- package/lib/Core/BaseAppState/UseCase.js +0 -54
- package/lib/Core/BaseAppState/UseCase_Imp.d.ts +0 -16
- package/lib/Core/BaseAppState/UseCase_Imp.js +0 -54
- package/lib/Core/DevicePreview/DevicePreviewUC_Imp.d.ts +0 -16
- package/lib/Core/DevicePreview/DevicePreviewUC_Imp.js +0 -56
- package/lib/Core/DevicePreview/boundary.d.ts +0 -14
- package/lib/Core/DevicePreview/boundary.js +0 -2
- package/lib/Core/DevicePreview/entity.d.ts +0 -5
- package/lib/Core/DevicePreview/entity.js +0 -2
- package/lib/Core/DispatchToHost/Entity.d.ts +0 -4
- package/lib/Core/DispatchToHost/Entity.js +0 -2
- package/lib/Core/DispatchToHost/UseCase.d.ts +0 -12
- package/lib/Core/DispatchToHost/UseCase.js +0 -70
- package/lib/Core/DispatchToHost/boundary.d.ts +0 -9
- package/lib/Core/DispatchToHost/boundary.js +0 -2
- package/lib/Core/Serilization/Boundary.d.ts +0 -20
- package/lib/Core/Serilization/Boundary.js +0 -2
- package/lib/Core/Serilization/Entity.d.ts +0 -3
- package/lib/Core/Serilization/Entity.js +0 -2
- package/lib/Core/Serilization/ErrorDuplicateSystemName.d.ts +0 -3
- package/lib/Core/Serilization/ErrorDuplicateSystemName.js +0 -12
- package/lib/Core/Serilization/ErrorUnsupportedVersionNumber.d.ts +0 -3
- package/lib/Core/Serilization/ErrorUnsupportedVersionNumber.js +0 -10
- package/lib/Core/Serilization/Errors.d.ts +0 -6
- package/lib/Core/Serilization/Errors.js +0 -19
- package/lib/Core/Serilization/UseCase.d.ts +0 -10
- package/lib/Core/Serilization/UseCase.js +0 -52
- package/lib/Core/Serilization/UseCase_Imp.d.ts +0 -10
- package/lib/Core/Serilization/UseCase_Imp.js +0 -51
- package/lib/Core/index.d.ts +0 -3
- package/lib/Core/index.js +0 -19
- package/lib/Entities/Color.d.ts +0 -20
- package/lib/Entities/Color.js +0 -59
- package/lib/Entities/FocusCamera.d.ts +0 -70
- package/lib/Entities/FocusCamera.js +0 -272
- package/lib/Entities/LineSegment2D.d.ts +0 -11
- package/lib/Entities/LineSegment2D.js +0 -70
- package/lib/Entities/MouseSceneInput.d.ts +0 -15
- package/lib/Entities/MouseSceneInput.js +0 -109
- package/lib/Entities/OrbitCamera.d.ts +0 -76
- package/lib/Entities/OrbitCamera.js +0 -243
- package/lib/Entities/ParametricLine.d.ts +0 -29
- package/lib/Entities/ParametricLine.js +0 -79
- package/lib/Entities/ParametricPlane.d.ts +0 -20
- package/lib/Entities/ParametricPlane.js +0 -63
- package/lib/Entities/Vector2.d.ts +0 -21
- package/lib/Entities/Vector2.js +0 -83
- package/lib/Entities/Vector3.d.ts +0 -19
- package/lib/Entities/Vector3.js +0 -75
- package/lib/Interface/Controllers/appHandler.d.ts +0 -12
- package/lib/Interface/Controllers/appHandler.js +0 -94
- package/lib/Interface/Controllers/defaultAppHanlderFunctions.d.ts +0 -3
- package/lib/Interface/Controllers/defaultAppHanlderFunctions.js +0 -31
- package/lib/Interface/Controllers/dispatchStateChange.d.ts +0 -2
- package/lib/Interface/Controllers/dispatchStateChange.js +0 -10
- package/lib/Interface/Controllers/index.d.ts +0 -9
- package/lib/Interface/Controllers/index.js +0 -21
- package/lib/Interface/Controllers/makeAppHandler.d.ts +0 -12
- package/lib/Interface/Controllers/makeAppHandler.js +0 -96
- package/lib/Interface/Controllers/setDevicePreview.d.ts +0 -2
- package/lib/Interface/Controllers/setDevicePreview.js +0 -14
- package/lib/Interface/Controllers/setIsAuthoring.d.ts +0 -2
- package/lib/Interface/Controllers/setIsAuthoring.js +0 -14
- package/lib/Interface/Controllers/setState.d.ts +0 -2
- package/lib/Interface/Controllers/setState.js +0 -21
- package/lib/Interface/Controllers/showBabylonInspector.d.ts +0 -2
- package/lib/Interface/Controllers/showBabylonInspector.js +0 -9
- package/lib/Interface/Controllers/startApp.d.ts +0 -1
- package/lib/Interface/Controllers/startApp.js +0 -9
- package/lib/Interface/Controllers/stopApp.d.ts +0 -2
- package/lib/Interface/Controllers/stopApp.js +0 -10
- package/lib/Interface/PresentationManagers/DevicePreviewPM.d.ts +0 -13
- package/lib/Interface/PresentationManagers/DevicePreviewPM.js +0 -25
- package/lib/Interface/PresentationManagers/IsAuthoringPM.d.ts +0 -10
- package/lib/Interface/PresentationManagers/IsAuthoringPM.js +0 -23
- package/lib/Interface/PresentationManagers/ShowBabylonInspectorPM.d.ts +0 -10
- package/lib/Interface/PresentationManagers/ShowBabylonInspectorPM.js +0 -23
- package/lib/Interface/PresentationManagers/index.d.ts +0 -3
- package/lib/Interface/PresentationManagers/index.js +0 -15
- package/lib/Interface/appHandler.d.ts +0 -12
- package/lib/Interface/appHandler.js +0 -94
- package/lib/Interface/index.d.ts +0 -2
- package/lib/Interface/index.js +0 -14
- package/lib/PresentationManagers/FocusCameraPM.d.ts +0 -15
- package/lib/PresentationManagers/FocusCameraPM.js +0 -31
- package/lib/PresentationManagers/FocusCameraPosRotPM.d.ts +0 -13
- package/lib/PresentationManagers/FocusCameraPosRotPM.js +0 -28
- package/lib/PresentationManagers/HoverLabelPM.d.ts +0 -17
- package/lib/PresentationManagers/HoverLabelPM.js +0 -32
- package/lib/PresentationManagers/OrbitCameraPM.d.ts +0 -14
- package/lib/PresentationManagers/OrbitCameraPM.js +0 -31
- package/lib/UseCases/FocusCamera/BumpDollyFocusCamera.d.ts +0 -17
- package/lib/UseCases/FocusCamera/BumpDollyFocusCamera.js +0 -64
- package/lib/UseCases/FocusCamera/LerpFocusCamera.d.ts +0 -36
- package/lib/UseCases/FocusCamera/LerpFocusCamera.js +0 -71
- package/lib/UseCases/FocusCamera/PinchDollyFocusCamera.d.ts +0 -11
- package/lib/UseCases/FocusCamera/PinchDollyFocusCamera.js +0 -36
- package/lib/UseCases/FocusCamera/PixelDollyFocusCamera.d.ts +0 -11
- package/lib/UseCases/FocusCamera/PixelDollyFocusCamera.js +0 -36
- package/lib/UseCases/FocusCamera/PixelOrbitFocusCamera.d.ts +0 -11
- package/lib/UseCases/FocusCamera/PixelOrbitFocusCamera.js +0 -26
- package/lib/UseCases/FocusCamera/PixelPlanePanFocusCamera.d.ts +0 -11
- package/lib/UseCases/FocusCamera/PixelPlanePanFocusCamera.js +0 -33
- package/lib/UseCases/FocusCamera/SerializeFocusCamera.d.ts +0 -22
- package/lib/UseCases/FocusCamera/SerializeFocusCamera.js +0 -81
- package/lib/UseCases/FocusCamera/index.d.ts +0 -7
- package/lib/UseCases/FocusCamera/index.js +0 -19
- package/lib/UseCases/LerpOrbitCamera.d.ts +0 -36
- package/lib/UseCases/LerpOrbitCamera.js +0 -71
- package/lib/UseCases/OrbitCamera/LerpOrbitCamera.d.ts +0 -36
- package/lib/UseCases/OrbitCamera/LerpOrbitCamera.js +0 -71
- package/lib/UseCases/OrbitCamera/PixelDolly_OrbitCamera.d.ts +0 -9
- package/lib/UseCases/OrbitCamera/PixelDolly_OrbitCamera.js +0 -31
- package/lib/UseCases/OrbitCamera/PixelPlanePan_OrbitCamera.d.ts +0 -10
- package/lib/UseCases/OrbitCamera/PixelPlanePan_OrbitCamera.js +0 -31
- package/lib/UseCases/OrbitCamera/SerializeOrbitCamera.d.ts +0 -22
- package/lib/UseCases/OrbitCamera/SerializeOrbitCamera.js +0 -81
- package/lib/UseCases/OrbitCamera/index.d.ts +0 -4
- package/lib/UseCases/OrbitCamera/index.js +0 -16
- package/lib/UseCases/SerializeCamera.d.ts +0 -21
- package/lib/UseCases/SerializeCamera.js +0 -59
- package/lib/UseCases/SerializeOrbitCamera.d.ts +0 -21
- package/lib/UseCases/SerializeOrbitCamera.js +0 -59
- package/lib/UseCases/SerializedCamDemo.d.ts +0 -0
- package/lib/UseCases/SerializedCamDemo.js +0 -1
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SerializeFocusCamera = void 0;
|
|
4
|
-
const _1 = require(".");
|
|
5
|
-
const ValueObjects_1 = require("../../ValueObjects");
|
|
6
|
-
class SerializeFocusCamera {
|
|
7
|
-
constructor(focusCamera, stateMachine) {
|
|
8
|
-
this.name = "focusCamera";
|
|
9
|
-
this.seriliziationVersion = 1;
|
|
10
|
-
this.focusCamera = focusCamera;
|
|
11
|
-
this.stateMachine = stateMachine;
|
|
12
|
-
stateMachine.registerSerializedSystem(this);
|
|
13
|
-
}
|
|
14
|
-
getSystemState() {
|
|
15
|
-
const data = {
|
|
16
|
-
alpha: this.focusCamera.alpha,
|
|
17
|
-
beta: this.focusCamera.beta,
|
|
18
|
-
radius: this.focusCamera.radius,
|
|
19
|
-
target_x: this.focusCamera.target.x,
|
|
20
|
-
target_y: this.focusCamera.target.y,
|
|
21
|
-
target_z: this.focusCamera.target.z,
|
|
22
|
-
};
|
|
23
|
-
return data;
|
|
24
|
-
}
|
|
25
|
-
applySystemState(serializedState, version, transitionTime) {
|
|
26
|
-
try {
|
|
27
|
-
if (version === 1) {
|
|
28
|
-
const castState = serializedState;
|
|
29
|
-
this.applyV1Data(castState, transitionTime);
|
|
30
|
-
}
|
|
31
|
-
else {
|
|
32
|
-
console.warn(`[SerializeFocusCamera] Unsupported version number ${version}. Defaulting`);
|
|
33
|
-
this.applyDefaultState(transitionTime);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
catch (e) {
|
|
37
|
-
console.warn(`[SerializeFocusCamera] Caught when deserializing ${e}. Defaulting`);
|
|
38
|
-
this.applyDefaultState(transitionTime);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
applyDefaultState(transitionDuration) {
|
|
42
|
-
const alpha = this.focusCamera.defaultAlpha;
|
|
43
|
-
const beta = this.focusCamera.defaultBeta;
|
|
44
|
-
const radius = this.focusCamera.defaultRadius;
|
|
45
|
-
const target = this.focusCamera.defaultTarget;
|
|
46
|
-
if (transitionDuration === 0) {
|
|
47
|
-
this.applyImmediate(alpha, beta, radius, target);
|
|
48
|
-
}
|
|
49
|
-
else {
|
|
50
|
-
this.applyLerp(alpha, beta, radius, target, transitionDuration);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
applyV1Data(data, transitionTime) {
|
|
54
|
-
const { alpha, beta, radius, target_x, target_y, target_z } = data;
|
|
55
|
-
const target = new ValueObjects_1.Vector3(target_x, target_y, target_z);
|
|
56
|
-
if (transitionTime === 0) {
|
|
57
|
-
this.applyImmediate(alpha, beta, radius, target);
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
this.applyLerp(alpha, beta, radius, target, transitionTime);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
applyImmediate(alpha, beta, radius, target) {
|
|
64
|
-
this.focusCamera.cancelLerp();
|
|
65
|
-
this.focusCamera.alpha = alpha;
|
|
66
|
-
this.focusCamera.beta = beta;
|
|
67
|
-
this.focusCamera.radius = radius;
|
|
68
|
-
this.focusCamera.target = target;
|
|
69
|
-
}
|
|
70
|
-
applyLerp(alpha, beta, radius, target, transitionTime) {
|
|
71
|
-
const lerpParams = {
|
|
72
|
-
duration: transitionTime,
|
|
73
|
-
finalRadius: radius,
|
|
74
|
-
finalBeta: beta,
|
|
75
|
-
finalAlpha: alpha,
|
|
76
|
-
finalTarget: target,
|
|
77
|
-
};
|
|
78
|
-
new _1.LerpFocusCamera(this.focusCamera, this.stateMachine.transitionEaseFunction, lerpParams);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
exports.SerializeFocusCamera = SerializeFocusCamera;
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
export * from "./PixelPlanePanFocusCamera";
|
|
2
|
-
export * from "./LerpFocusCamera";
|
|
3
|
-
export * from "./SerializeFocusCamera";
|
|
4
|
-
export * from "./PixelDollyFocusCamera";
|
|
5
|
-
export * from "./BumpDollyFocusCamera";
|
|
6
|
-
export * from "./PinchDollyFocusCamera";
|
|
7
|
-
export * from "./PixelOrbitFocusCamera";
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
10
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
|
-
};
|
|
12
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
__exportStar(require("./PixelPlanePanFocusCamera"), exports);
|
|
14
|
-
__exportStar(require("./LerpFocusCamera"), exports);
|
|
15
|
-
__exportStar(require("./SerializeFocusCamera"), exports);
|
|
16
|
-
__exportStar(require("./PixelDollyFocusCamera"), exports);
|
|
17
|
-
__exportStar(require("./BumpDollyFocusCamera"), exports);
|
|
18
|
-
__exportStar(require("./PinchDollyFocusCamera"), exports);
|
|
19
|
-
__exportStar(require("./PixelOrbitFocusCamera"), exports);
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { OrbitCamera } from "../Entities";
|
|
2
|
-
export interface LerpOrbitCameraParameters {
|
|
3
|
-
duration: number;
|
|
4
|
-
finalRadius?: number;
|
|
5
|
-
finalBeta?: number;
|
|
6
|
-
finalAlpha?: number;
|
|
7
|
-
finalTarget?: {
|
|
8
|
-
x: number;
|
|
9
|
-
y: number;
|
|
10
|
-
z: number;
|
|
11
|
-
};
|
|
12
|
-
onComplete?: () => void;
|
|
13
|
-
onAbort?: () => void;
|
|
14
|
-
}
|
|
15
|
-
export declare class LerpOrbitCamera {
|
|
16
|
-
get isLerping(): boolean;
|
|
17
|
-
private _isLerping;
|
|
18
|
-
private orbitCamera;
|
|
19
|
-
private easeFn;
|
|
20
|
-
private lerpDuration;
|
|
21
|
-
private lerpRadius;
|
|
22
|
-
private lerpBeta;
|
|
23
|
-
private lerpAlpha;
|
|
24
|
-
private lerpX;
|
|
25
|
-
private lerpY;
|
|
26
|
-
private lerpZ;
|
|
27
|
-
private onComplete?;
|
|
28
|
-
private onAbort?;
|
|
29
|
-
private interval;
|
|
30
|
-
private chrono;
|
|
31
|
-
private delta;
|
|
32
|
-
cancelLerp: () => void;
|
|
33
|
-
private onTick;
|
|
34
|
-
constructor(orbitCamera: OrbitCamera, easeFn: (normalizedTime: number) => number, parameters: LerpOrbitCameraParameters);
|
|
35
|
-
private makeLerpNumber;
|
|
36
|
-
}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LerpOrbitCamera = void 0;
|
|
4
|
-
const Entities_1 = require("../Entities");
|
|
5
|
-
class LerpOrbitCamera {
|
|
6
|
-
constructor(orbitCamera, easeFn, parameters) {
|
|
7
|
-
var _a, _b, _c;
|
|
8
|
-
this._isLerping = false;
|
|
9
|
-
this.chrono = 0;
|
|
10
|
-
this.delta = 10;
|
|
11
|
-
this.cancelLerp = () => {
|
|
12
|
-
if (!this._isLerping)
|
|
13
|
-
return;
|
|
14
|
-
clearInterval(this.interval);
|
|
15
|
-
if (this.onAbort) {
|
|
16
|
-
this.onAbort();
|
|
17
|
-
}
|
|
18
|
-
this._isLerping = false;
|
|
19
|
-
};
|
|
20
|
-
this.onTick = () => {
|
|
21
|
-
this.chrono = this.chrono + this.delta / 1000;
|
|
22
|
-
let nomralizedTime = this.chrono / this.lerpDuration;
|
|
23
|
-
if (nomralizedTime > 1) {
|
|
24
|
-
nomralizedTime = 1;
|
|
25
|
-
}
|
|
26
|
-
const percent = this.easeFn(nomralizedTime);
|
|
27
|
-
this.orbitCamera.radius = this.lerpRadius(percent);
|
|
28
|
-
this.orbitCamera.beta = this.lerpBeta(percent);
|
|
29
|
-
this.orbitCamera.alpha = this.lerpAlpha(percent);
|
|
30
|
-
const x = this.lerpX(percent);
|
|
31
|
-
const y = this.lerpY(percent);
|
|
32
|
-
const z = this.lerpZ(percent);
|
|
33
|
-
this.orbitCamera.target = new Entities_1.Vector3(x, y, z);
|
|
34
|
-
if (nomralizedTime >= 1) {
|
|
35
|
-
clearInterval(this.interval);
|
|
36
|
-
if (this.onComplete) {
|
|
37
|
-
this.onComplete();
|
|
38
|
-
}
|
|
39
|
-
this._isLerping = false;
|
|
40
|
-
this.orbitCamera.lerpCompleted();
|
|
41
|
-
}
|
|
42
|
-
};
|
|
43
|
-
this.orbitCamera = orbitCamera;
|
|
44
|
-
this.easeFn = easeFn;
|
|
45
|
-
this.lerpDuration = parameters.duration;
|
|
46
|
-
this.onComplete = parameters.onComplete;
|
|
47
|
-
this.onAbort = parameters.onAbort;
|
|
48
|
-
this.lerpRadius = this.makeLerpNumber(this.orbitCamera.radius, parameters.finalRadius);
|
|
49
|
-
this.lerpBeta = this.makeLerpNumber(this.orbitCamera.beta, parameters.finalBeta);
|
|
50
|
-
this.lerpAlpha = this.makeLerpNumber(this.orbitCamera.alpha, parameters.finalAlpha);
|
|
51
|
-
this.lerpX = this.makeLerpNumber(this.orbitCamera.target.x, (_a = parameters.finalTarget) === null || _a === void 0 ? void 0 : _a.x);
|
|
52
|
-
this.lerpY = this.makeLerpNumber(this.orbitCamera.target.y, (_b = parameters.finalTarget) === null || _b === void 0 ? void 0 : _b.y);
|
|
53
|
-
this.lerpZ = this.makeLerpNumber(this.orbitCamera.target.z, (_c = parameters.finalTarget) === null || _c === void 0 ? void 0 : _c.z);
|
|
54
|
-
this.interval = setInterval(() => {
|
|
55
|
-
this.onTick();
|
|
56
|
-
}, this.delta);
|
|
57
|
-
this.orbitCamera.registerLerp(this);
|
|
58
|
-
this._isLerping = true;
|
|
59
|
-
}
|
|
60
|
-
get isLerping() {
|
|
61
|
-
return this._isLerping;
|
|
62
|
-
}
|
|
63
|
-
makeLerpNumber(initial, final) {
|
|
64
|
-
const actualFinal = final !== null && final !== void 0 ? final : initial;
|
|
65
|
-
return function Lerp(percent) {
|
|
66
|
-
const range = actualFinal - initial;
|
|
67
|
-
return initial + range * percent;
|
|
68
|
-
};
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
exports.LerpOrbitCamera = LerpOrbitCamera;
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { OrbitCamera } from "../../Entities";
|
|
2
|
-
export interface LerpOrbitCameraParameters {
|
|
3
|
-
duration: number;
|
|
4
|
-
finalRadius?: number;
|
|
5
|
-
finalBeta?: number;
|
|
6
|
-
finalAlpha?: number;
|
|
7
|
-
finalTarget?: {
|
|
8
|
-
x: number;
|
|
9
|
-
y: number;
|
|
10
|
-
z: number;
|
|
11
|
-
};
|
|
12
|
-
onComplete?: () => void;
|
|
13
|
-
onAbort?: () => void;
|
|
14
|
-
}
|
|
15
|
-
export declare class LerpOrbitCamera {
|
|
16
|
-
get isLerping(): boolean;
|
|
17
|
-
private _isLerping;
|
|
18
|
-
private orbitCamera;
|
|
19
|
-
private easeFn;
|
|
20
|
-
private lerpDuration;
|
|
21
|
-
private lerpRadius;
|
|
22
|
-
private lerpBeta;
|
|
23
|
-
private lerpAlpha;
|
|
24
|
-
private lerpX;
|
|
25
|
-
private lerpY;
|
|
26
|
-
private lerpZ;
|
|
27
|
-
private onComplete?;
|
|
28
|
-
private onAbort?;
|
|
29
|
-
private interval;
|
|
30
|
-
private chrono;
|
|
31
|
-
private delta;
|
|
32
|
-
cancelLerp: () => void;
|
|
33
|
-
private onTick;
|
|
34
|
-
constructor(orbitCamera: OrbitCamera, easeFn: (normalizedTime: number) => number, parameters: LerpOrbitCameraParameters);
|
|
35
|
-
private makeLerpNumber;
|
|
36
|
-
}
|
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LerpOrbitCamera = void 0;
|
|
4
|
-
const Entities_1 = require("../../Entities");
|
|
5
|
-
class LerpOrbitCamera {
|
|
6
|
-
constructor(orbitCamera, easeFn, parameters) {
|
|
7
|
-
var _a, _b, _c;
|
|
8
|
-
this._isLerping = false;
|
|
9
|
-
this.chrono = 0;
|
|
10
|
-
this.delta = 10;
|
|
11
|
-
this.cancelLerp = () => {
|
|
12
|
-
if (!this._isLerping)
|
|
13
|
-
return;
|
|
14
|
-
clearInterval(this.interval);
|
|
15
|
-
if (this.onAbort) {
|
|
16
|
-
this.onAbort();
|
|
17
|
-
}
|
|
18
|
-
this._isLerping = false;
|
|
19
|
-
};
|
|
20
|
-
this.onTick = () => {
|
|
21
|
-
this.chrono = this.chrono + this.delta / 1000;
|
|
22
|
-
let nomralizedTime = this.chrono / this.lerpDuration;
|
|
23
|
-
if (nomralizedTime > 1) {
|
|
24
|
-
nomralizedTime = 1;
|
|
25
|
-
}
|
|
26
|
-
const percent = this.easeFn(nomralizedTime);
|
|
27
|
-
this.orbitCamera.radius = this.lerpRadius(percent);
|
|
28
|
-
this.orbitCamera.beta = this.lerpBeta(percent);
|
|
29
|
-
this.orbitCamera.alpha = this.lerpAlpha(percent);
|
|
30
|
-
const x = this.lerpX(percent);
|
|
31
|
-
const y = this.lerpY(percent);
|
|
32
|
-
const z = this.lerpZ(percent);
|
|
33
|
-
this.orbitCamera.target = new Entities_1.Vector3(x, y, z);
|
|
34
|
-
if (nomralizedTime >= 1) {
|
|
35
|
-
clearInterval(this.interval);
|
|
36
|
-
if (this.onComplete) {
|
|
37
|
-
this.onComplete();
|
|
38
|
-
}
|
|
39
|
-
this._isLerping = false;
|
|
40
|
-
this.orbitCamera.lerpCompleted();
|
|
41
|
-
}
|
|
42
|
-
};
|
|
43
|
-
this.orbitCamera = orbitCamera;
|
|
44
|
-
this.easeFn = easeFn;
|
|
45
|
-
this.lerpDuration = parameters.duration;
|
|
46
|
-
this.onComplete = parameters.onComplete;
|
|
47
|
-
this.onAbort = parameters.onAbort;
|
|
48
|
-
this.lerpRadius = this.makeLerpNumber(this.orbitCamera.radius, parameters.finalRadius);
|
|
49
|
-
this.lerpBeta = this.makeLerpNumber(this.orbitCamera.beta, parameters.finalBeta);
|
|
50
|
-
this.lerpAlpha = this.makeLerpNumber(this.orbitCamera.alpha, parameters.finalAlpha);
|
|
51
|
-
this.lerpX = this.makeLerpNumber(this.orbitCamera.target.x, (_a = parameters.finalTarget) === null || _a === void 0 ? void 0 : _a.x);
|
|
52
|
-
this.lerpY = this.makeLerpNumber(this.orbitCamera.target.y, (_b = parameters.finalTarget) === null || _b === void 0 ? void 0 : _b.y);
|
|
53
|
-
this.lerpZ = this.makeLerpNumber(this.orbitCamera.target.z, (_c = parameters.finalTarget) === null || _c === void 0 ? void 0 : _c.z);
|
|
54
|
-
this.interval = setInterval(() => {
|
|
55
|
-
this.onTick();
|
|
56
|
-
}, this.delta);
|
|
57
|
-
this.orbitCamera.registerLerp(this);
|
|
58
|
-
this._isLerping = true;
|
|
59
|
-
}
|
|
60
|
-
get isLerping() {
|
|
61
|
-
return this._isLerping;
|
|
62
|
-
}
|
|
63
|
-
makeLerpNumber(initial, final) {
|
|
64
|
-
const actualFinal = final !== null && final !== void 0 ? final : initial;
|
|
65
|
-
return function Lerp(percent) {
|
|
66
|
-
const range = actualFinal - initial;
|
|
67
|
-
return initial + range * percent;
|
|
68
|
-
};
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
exports.LerpOrbitCamera = LerpOrbitCamera;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { OrbitCamera, Vector2, Vector3 } from "../../Entities";
|
|
2
|
-
export declare class PixelDolly_OrbitCamera {
|
|
3
|
-
private orbitCamera;
|
|
4
|
-
private previousPixelPosition;
|
|
5
|
-
private pickPoint?;
|
|
6
|
-
doDolly(pixelPosition: Vector2): void;
|
|
7
|
-
initializeDolly(pixelPosition: Vector2, pickPoint?: Vector3): void;
|
|
8
|
-
constructor(orbitCamera: OrbitCamera);
|
|
9
|
-
}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PixelDolly_OrbitCamera = void 0;
|
|
4
|
-
const Entities_1 = require("../../Entities");
|
|
5
|
-
class PixelDolly_OrbitCamera {
|
|
6
|
-
constructor(orbitCamera) {
|
|
7
|
-
this.orbitCamera = orbitCamera;
|
|
8
|
-
this.previousPixelPosition = Entities_1.Vector2.Zero();
|
|
9
|
-
}
|
|
10
|
-
doDolly(pixelPosition) {
|
|
11
|
-
const pixelDeltaY = pixelPosition.y - this.previousPixelPosition.y;
|
|
12
|
-
const deltaRadius = pixelDeltaY * this.orbitCamera.dollyPixelSensitivity;
|
|
13
|
-
const currentRadius = this.orbitCamera.radius;
|
|
14
|
-
const newRadius = currentRadius + deltaRadius;
|
|
15
|
-
this.orbitCamera.radius = newRadius;
|
|
16
|
-
if (this.pickPoint !== undefined) {
|
|
17
|
-
const percentChange = newRadius / currentRadius;
|
|
18
|
-
const pickToTarget = this.orbitCamera.target.subtract(this.pickPoint);
|
|
19
|
-
const newLength = pickToTarget.magnitued * percentChange;
|
|
20
|
-
pickToTarget.setLength(newLength);
|
|
21
|
-
const newTargetPos = this.pickPoint.add(pickToTarget);
|
|
22
|
-
this.orbitCamera.target = newTargetPos;
|
|
23
|
-
}
|
|
24
|
-
this.previousPixelPosition = pixelPosition;
|
|
25
|
-
}
|
|
26
|
-
initializeDolly(pixelPosition, pickPoint) {
|
|
27
|
-
this.previousPixelPosition = pixelPosition;
|
|
28
|
-
this.pickPoint = pickPoint;
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
exports.PixelDolly_OrbitCamera = PixelDolly_OrbitCamera;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { Babylon, OrbitCamera, ParametricPlane, Vector2 } from "../../Entities";
|
|
2
|
-
export declare class PixelPlanePan_OrbitCamera {
|
|
3
|
-
private orbitCamera;
|
|
4
|
-
private babylon;
|
|
5
|
-
private plane?;
|
|
6
|
-
private previousPixelPos?;
|
|
7
|
-
doPan: (pixelPosition: Vector2) => void;
|
|
8
|
-
initializePan: (initialPixelPos: Vector2, panPlane: ParametricPlane) => void;
|
|
9
|
-
constructor(orbitCamera: OrbitCamera, babylon: Babylon);
|
|
10
|
-
}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.PixelPlanePan_OrbitCamera = void 0;
|
|
4
|
-
const Entities_1 = require("../../Entities");
|
|
5
|
-
class PixelPlanePan_OrbitCamera {
|
|
6
|
-
constructor(orbitCamera, babylon) {
|
|
7
|
-
this.orbitCamera = orbitCamera;
|
|
8
|
-
this.babylon = babylon;
|
|
9
|
-
this.doPan = (pixelPosition) => {
|
|
10
|
-
if (!this.plane || !this.previousPixelPos) {
|
|
11
|
-
throw new Error("[PixelPlanePan_OrbitCamera] You must initialize first!");
|
|
12
|
-
}
|
|
13
|
-
const initialRay = this.babylon.sceneRay(this.previousPixelPos);
|
|
14
|
-
const finalRay = this.babylon.sceneRay(pixelPosition);
|
|
15
|
-
const p1 = this.plane.intersectLine(initialRay);
|
|
16
|
-
const p2 = this.plane.intersectLine(finalRay);
|
|
17
|
-
if (!p1 || !p2)
|
|
18
|
-
return;
|
|
19
|
-
const delta = p2.subtract(p1);
|
|
20
|
-
const currentTarget = this.orbitCamera.target;
|
|
21
|
-
const newTarget = new Entities_1.Vector3(currentTarget.x - delta.x, currentTarget.y - delta.y, currentTarget.z - delta.z);
|
|
22
|
-
this.orbitCamera.target = new Entities_1.Vector3(newTarget.x, newTarget.y, newTarget.z);
|
|
23
|
-
this.previousPixelPos = pixelPosition;
|
|
24
|
-
};
|
|
25
|
-
this.initializePan = (initialPixelPos, panPlane) => {
|
|
26
|
-
this.plane = panPlane;
|
|
27
|
-
this.previousPixelPos = initialPixelPos;
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
exports.PixelPlanePan_OrbitCamera = PixelPlanePan_OrbitCamera;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { OrbitCamera, SerializedSystem, StateMachine } from "../../Entities";
|
|
2
|
-
export declare class SerializedOrbitCamera implements SerializedSystem {
|
|
3
|
-
name: string;
|
|
4
|
-
seriliziationVersion: number;
|
|
5
|
-
private orbitCamera;
|
|
6
|
-
private stateMachine;
|
|
7
|
-
getSystemState(): object;
|
|
8
|
-
applySystemState(serializedState: object, version: number, transitionTime: number): void;
|
|
9
|
-
applyDefaultState(transitionDuration: number): void;
|
|
10
|
-
private applyV1Data;
|
|
11
|
-
private applyImmediate;
|
|
12
|
-
private applyLerp;
|
|
13
|
-
constructor(orbitCamera: OrbitCamera, stateMachine: StateMachine);
|
|
14
|
-
}
|
|
15
|
-
export interface CameraDataV1 {
|
|
16
|
-
alpha: number;
|
|
17
|
-
beta: number;
|
|
18
|
-
radius: number;
|
|
19
|
-
target_x: number;
|
|
20
|
-
target_y: number;
|
|
21
|
-
target_z: number;
|
|
22
|
-
}
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SerializedOrbitCamera = void 0;
|
|
4
|
-
const _1 = require(".");
|
|
5
|
-
const Entities_1 = require("../../Entities");
|
|
6
|
-
class SerializedOrbitCamera {
|
|
7
|
-
constructor(orbitCamera, stateMachine) {
|
|
8
|
-
this.name = "orbitCamera";
|
|
9
|
-
this.seriliziationVersion = 1;
|
|
10
|
-
this.orbitCamera = orbitCamera;
|
|
11
|
-
this.stateMachine = stateMachine;
|
|
12
|
-
stateMachine.registerSerializedSystem(this);
|
|
13
|
-
}
|
|
14
|
-
getSystemState() {
|
|
15
|
-
const data = {
|
|
16
|
-
alpha: this.orbitCamera.alpha,
|
|
17
|
-
beta: this.orbitCamera.beta,
|
|
18
|
-
radius: this.orbitCamera.radius,
|
|
19
|
-
target_x: this.orbitCamera.target.x,
|
|
20
|
-
target_y: this.orbitCamera.target.y,
|
|
21
|
-
target_z: this.orbitCamera.target.z,
|
|
22
|
-
};
|
|
23
|
-
return data;
|
|
24
|
-
}
|
|
25
|
-
applySystemState(serializedState, version, transitionTime) {
|
|
26
|
-
try {
|
|
27
|
-
if (version === 1) {
|
|
28
|
-
const castState = serializedState;
|
|
29
|
-
this.applyV1Data(castState, transitionTime);
|
|
30
|
-
}
|
|
31
|
-
else {
|
|
32
|
-
console.warn(`[SerializedCamera] Unsupported version number ${version}. Defaulting`);
|
|
33
|
-
this.applyDefaultState(transitionTime);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
catch (e) {
|
|
37
|
-
console.warn(`[SerializedCamera] Caught when deserializing ${e}. Defaulting`);
|
|
38
|
-
this.applyDefaultState(transitionTime);
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
applyDefaultState(transitionDuration) {
|
|
42
|
-
const alpha = this.orbitCamera.defaultAlpha;
|
|
43
|
-
const beta = this.orbitCamera.defaultBeta;
|
|
44
|
-
const radius = this.orbitCamera.defaultRadius;
|
|
45
|
-
const target = this.orbitCamera.defaultTarget;
|
|
46
|
-
if (transitionDuration === 0) {
|
|
47
|
-
this.applyImmediate(alpha, beta, radius, target);
|
|
48
|
-
}
|
|
49
|
-
else {
|
|
50
|
-
this.applyLerp(alpha, beta, radius, target, transitionDuration);
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
applyV1Data(data, transitionTime) {
|
|
54
|
-
const { alpha, beta, radius, target_x, target_y, target_z } = data;
|
|
55
|
-
const target = new Entities_1.Vector3(target_x, target_y, target_z);
|
|
56
|
-
if (transitionTime === 0) {
|
|
57
|
-
this.applyImmediate(alpha, beta, radius, target);
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
this.applyLerp(alpha, beta, radius, target, transitionTime);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
applyImmediate(alpha, beta, radius, target) {
|
|
64
|
-
this.orbitCamera.cancelLerp();
|
|
65
|
-
this.orbitCamera.alpha = alpha;
|
|
66
|
-
this.orbitCamera.beta = beta;
|
|
67
|
-
this.orbitCamera.radius = radius;
|
|
68
|
-
this.orbitCamera.target = target;
|
|
69
|
-
}
|
|
70
|
-
applyLerp(alpha, beta, radius, target, transitionTime) {
|
|
71
|
-
const lerpParams = {
|
|
72
|
-
duration: transitionTime,
|
|
73
|
-
finalRadius: radius,
|
|
74
|
-
finalBeta: beta,
|
|
75
|
-
finalAlpha: alpha,
|
|
76
|
-
finalTarget: target,
|
|
77
|
-
};
|
|
78
|
-
new _1.LerpOrbitCamera(this.orbitCamera, this.stateMachine.transitionEaseFunction, lerpParams);
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
exports.SerializedOrbitCamera = SerializedOrbitCamera;
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
10
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
|
-
};
|
|
12
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
__exportStar(require("./PixelPlanePan_OrbitCamera"), exports);
|
|
14
|
-
__exportStar(require("./LerpOrbitCamera"), exports);
|
|
15
|
-
__exportStar(require("./SerializeOrbitCamera"), exports);
|
|
16
|
-
__exportStar(require("./PixelDolly_OrbitCamera"), exports);
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { OrbitCamera, SerializedSystem, StateMachine } from "../Entities";
|
|
2
|
-
export declare class SerializedCamera implements SerializedSystem {
|
|
3
|
-
name: string;
|
|
4
|
-
seriliziationVersion: number;
|
|
5
|
-
private orbitCamera;
|
|
6
|
-
private stateMachine;
|
|
7
|
-
private defaultState?;
|
|
8
|
-
getSystemState(): object;
|
|
9
|
-
applySystemState(serializedState: object, version: number, transitionTime: number): void;
|
|
10
|
-
applyDefaultState(transitionDuration: number): void;
|
|
11
|
-
private applyV1Data;
|
|
12
|
-
constructor(orbitCamera: OrbitCamera, stateMachine: StateMachine, defaultState?: CameraDataV1);
|
|
13
|
-
}
|
|
14
|
-
export interface CameraDataV1 {
|
|
15
|
-
alpha: number;
|
|
16
|
-
beta: number;
|
|
17
|
-
radius: number;
|
|
18
|
-
target_x: number;
|
|
19
|
-
target_y: number;
|
|
20
|
-
target_z: number;
|
|
21
|
-
}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SerializedCamera = void 0;
|
|
4
|
-
const _1 = require(".");
|
|
5
|
-
const Entities_1 = require("../Entities");
|
|
6
|
-
class SerializedCamera {
|
|
7
|
-
constructor(orbitCamera, stateMachine, defaultState) {
|
|
8
|
-
this.name = "orbitCamera";
|
|
9
|
-
this.seriliziationVersion = 1;
|
|
10
|
-
this.orbitCamera = orbitCamera;
|
|
11
|
-
this.stateMachine = stateMachine;
|
|
12
|
-
this.defaultState = defaultState;
|
|
13
|
-
stateMachine.registerSerializedSystem(this);
|
|
14
|
-
}
|
|
15
|
-
getSystemState() {
|
|
16
|
-
const data = {
|
|
17
|
-
alpha: this.orbitCamera.alpha,
|
|
18
|
-
beta: this.orbitCamera.beta,
|
|
19
|
-
radius: this.orbitCamera.radius,
|
|
20
|
-
target_x: this.orbitCamera.target.x,
|
|
21
|
-
target_y: this.orbitCamera.target.y,
|
|
22
|
-
target_z: this.orbitCamera.target.z,
|
|
23
|
-
};
|
|
24
|
-
return data;
|
|
25
|
-
}
|
|
26
|
-
applySystemState(serializedState, version, transitionTime) {
|
|
27
|
-
try {
|
|
28
|
-
if (version === 1) {
|
|
29
|
-
const castState = serializedState;
|
|
30
|
-
this.applyV1Data(castState, transitionTime);
|
|
31
|
-
}
|
|
32
|
-
else {
|
|
33
|
-
console.warn(`[SerializedCamera] Unsupported version number ${version}. Defaulting`);
|
|
34
|
-
this.applyDefaultState(transitionTime);
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
catch (e) {
|
|
38
|
-
console.warn(`[SerializedCamera] Caught when deserializing ${e}. Defaulting`);
|
|
39
|
-
this.applyDefaultState(transitionTime);
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
applyDefaultState(transitionDuration) {
|
|
43
|
-
if (this.defaultState) {
|
|
44
|
-
this.applyV1Data(this.defaultState, transitionDuration);
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
applyV1Data(data, transitionTime) {
|
|
48
|
-
const { alpha, beta, radius, target_x, target_y, target_z } = data;
|
|
49
|
-
const lerpParams = {
|
|
50
|
-
duration: transitionTime,
|
|
51
|
-
finalRadius: radius,
|
|
52
|
-
finalBeta: beta,
|
|
53
|
-
finalAlpha: alpha,
|
|
54
|
-
finalTarget: new Entities_1.Vector3(target_x, target_y, target_z),
|
|
55
|
-
};
|
|
56
|
-
new _1.LerpOrbitCamera(this.orbitCamera, this.stateMachine.transitionEaseFunction, lerpParams);
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
exports.SerializedCamera = SerializedCamera;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { OrbitCamera, SerializedSystem, StateMachine } from "../Entities";
|
|
2
|
-
export declare class SerializedOrbitCamera implements SerializedSystem {
|
|
3
|
-
name: string;
|
|
4
|
-
seriliziationVersion: number;
|
|
5
|
-
private orbitCamera;
|
|
6
|
-
private stateMachine;
|
|
7
|
-
private defaultState?;
|
|
8
|
-
getSystemState(): object;
|
|
9
|
-
applySystemState(serializedState: object, version: number, transitionTime: number): void;
|
|
10
|
-
applyDefaultState(transitionDuration: number): void;
|
|
11
|
-
private applyV1Data;
|
|
12
|
-
constructor(orbitCamera: OrbitCamera, stateMachine: StateMachine, defaultState?: CameraDataV1);
|
|
13
|
-
}
|
|
14
|
-
export interface CameraDataV1 {
|
|
15
|
-
alpha: number;
|
|
16
|
-
beta: number;
|
|
17
|
-
radius: number;
|
|
18
|
-
target_x: number;
|
|
19
|
-
target_y: number;
|
|
20
|
-
target_z: number;
|
|
21
|
-
}
|