@vived/app 2.51.0 → 3.0.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/AppObject/AppObject.d.ts +15 -0
- package/lib/AppObject/AppObject.js +65 -0
- package/lib/AppObject/AppObjectComponent.d.ts +6 -0
- package/lib/AppObject/AppObjectComponent.js +2 -0
- package/lib/AppObject/AppObjectEntity.d.ts +16 -0
- package/lib/AppObject/AppObjectEntity.js +40 -0
- package/lib/AppObject/AppObjectEntityRepo.d.ts +15 -0
- package/lib/AppObject/AppObjectEntityRepo.js +54 -0
- package/lib/AppObject/AppObjectPM.d.ts +15 -0
- package/lib/AppObject/AppObjectPM.js +38 -0
- package/lib/AppObject/AppObjectRepo.d.ts +19 -0
- package/lib/AppObject/AppObjectRepo.js +95 -0
- package/lib/AppObject/AppObjectUC.d.ts +8 -0
- package/lib/AppObject/AppObjectUC.js +17 -0
- package/lib/AppObject/IsEnabledPM.d.ts +11 -0
- package/lib/AppObject/IsEnabledPM.js +29 -0
- package/lib/AppObject/index.d.ts +7 -0
- package/lib/AppObject/index.js +19 -0
- package/lib/AppObjectComponents/ChannelModel/Entities/ChannelModel.d.ts +42 -0
- package/lib/AppObjectComponents/ChannelModel/Entities/ChannelModel.js +99 -0
- package/lib/AppObjectComponents/ChannelModel/Entities/ChannelModelRepo.d.ts +12 -0
- package/lib/AppObjectComponents/ChannelModel/Entities/ChannelModelRepo.js +45 -0
- package/lib/AppObjectComponents/ChannelModel/index.d.ts +2 -0
- package/lib/AppObjectComponents/ChannelModel/index.js +14 -0
- package/lib/AppObjectComponents/Hideable/Entities/Hideable.d.ts +10 -0
- package/lib/AppObjectComponents/Hideable/Entities/Hideable.js +31 -0
- package/lib/AppObjectComponents/Hideable/PresentationManagers/IsHiddenPM.d.ts +12 -0
- package/lib/AppObjectComponents/Hideable/PresentationManagers/IsHiddenPM.js +42 -0
- package/lib/AppObjectComponents/Hideable/index.d.ts +2 -0
- package/lib/AppObjectComponents/Hideable/index.js +14 -0
- package/lib/AppObjectComponents/Label/Entities/Label.d.ts +17 -0
- package/lib/AppObjectComponents/Label/Entities/Label.js +58 -0
- package/lib/AppObjectComponents/Label/PresentationManagers/LabelPM.d.ts +19 -0
- package/lib/AppObjectComponents/Label/PresentationManagers/LabelPM.js +62 -0
- package/lib/AppObjectComponents/Label/index.d.ts +2 -0
- package/lib/AppObjectComponents/Label/index.js +14 -0
- package/lib/AppObjectComponents/Mesh/Entities/Mesh.d.ts +21 -0
- package/lib/AppObjectComponents/Mesh/Entities/Mesh.js +45 -0
- package/lib/AppObjectComponents/Mesh/index.d.ts +1 -0
- package/lib/{UseCases/SceneObjects → AppObjectComponents/Mesh}/index.js +1 -1
- package/lib/AppObjectComponents/OverlayColor/Entities/OverlayColor.d.ts +25 -0
- package/lib/AppObjectComponents/OverlayColor/Entities/OverlayColor.js +59 -0
- package/lib/AppObjectComponents/OverlayColor/PresentationManagers/OverlayColorPM.d.ts +13 -0
- package/lib/AppObjectComponents/OverlayColor/PresentationManagers/OverlayColorPM.js +42 -0
- package/lib/AppObjectComponents/OverlayColor/index.d.ts +2 -0
- package/lib/AppObjectComponents/OverlayColor/index.js +14 -0
- package/lib/AppObjectComponents/Transform3D/Entities/Transform3D.d.ts +44 -0
- package/lib/AppObjectComponents/Transform3D/Entities/Transform3D.js +221 -0
- package/lib/AppObjectComponents/Transform3D/PresentationManagers/CanBeStuckPM.d.ts +12 -0
- package/lib/AppObjectComponents/Transform3D/PresentationManagers/CanBeStuckPM.js +45 -0
- package/lib/AppObjectComponents/Transform3D/PresentationManagers/Transform3DPM.d.ts +19 -0
- package/lib/AppObjectComponents/Transform3D/PresentationManagers/Transform3DPM.js +59 -0
- package/lib/AppObjectComponents/Transform3D/UseCases/PeelTransform3D.d.ts +20 -0
- package/lib/AppObjectComponents/Transform3D/UseCases/PeelTransform3D.js +67 -0
- package/lib/AppObjectComponents/Transform3D/UseCases/StickTransform3D.d.ts +14 -0
- package/lib/AppObjectComponents/Transform3D/UseCases/StickTransform3D.js +45 -0
- package/lib/AppObjectComponents/Transform3D/UseCases/getStickUC.d.ts +3 -0
- package/lib/AppObjectComponents/Transform3D/UseCases/getStickUC.js +8 -0
- package/lib/AppObjectComponents/Transform3D/index.d.ts +5 -0
- package/lib/AppObjectComponents/Transform3D/index.js +17 -0
- package/lib/AppObjectComponents/index.d.ts +6 -0
- package/lib/AppObjectComponents/index.js +18 -0
- package/lib/Entities/ObserverList.d.ts +1 -0
- package/lib/Entities/ObserverList.js +3 -0
- package/lib/Entities/SceneModel.d.ts +1 -1
- package/lib/Entities/SceneModelMesh.d.ts +3 -44
- package/lib/Entities/SceneModelMesh.js +7 -114
- package/lib/Types/ChannelModelData.d.ts +68 -0
- package/lib/Types/ChannelModelData.js +21 -0
- package/lib/Types/EaseFn.d.ts +1 -0
- package/lib/Types/EaseFn.js +2 -0
- package/lib/Types/index.d.ts +2 -0
- package/lib/{UseCases/SceneObject → Types}/index.js +2 -1
- package/lib/UseCases/SceneModel/index.d.ts +0 -3
- package/lib/UseCases/SceneModel/index.js +0 -3
- package/lib/UseCases/SceneModel/loadNewModel.d.ts +2 -2
- package/lib/UseCases/SceneModel/loadNewModel.js +15 -17
- package/lib/UseCases/index.d.ts +1 -1
- package/lib/UseCases/index.js +1 -1
- package/lib/UseCases/setupStandardAppObjects.d.ts +2 -0
- package/lib/UseCases/setupStandardAppObjects.js +10 -0
- package/lib/ValueObjects/Quaternion.d.ts +1 -0
- package/lib/ValueObjects/Quaternion.js +21 -1
- package/lib/index.d.ts +3 -0
- package/lib/index.js +4 -1
- package/package.json +1 -1
- package/lib/Entities/MemoizedBoolean.d.ts +0 -8
- package/lib/Entities/MemoizedBoolean.js +0 -22
- package/lib/Entities/MemoizedColor.d.ts +0 -9
- package/lib/Entities/MemoizedColor.js +0 -23
- package/lib/Entities/MemoizedNumber.d.ts +0 -8
- package/lib/Entities/MemoizedNumber.js +0 -22
- package/lib/Entities/MemoizedQuaternion.d.ts +0 -9
- package/lib/Entities/MemoizedQuaternion.js +0 -23
- package/lib/Entities/MemoizedString.d.ts +0 -8
- package/lib/Entities/MemoizedString.js +0 -22
- package/lib/Entities/MemoizedVector2.d.ts +0 -9
- package/lib/Entities/MemoizedVector2.js +0 -23
- package/lib/Entities/MemoizedVector3.d.ts +0 -9
- package/lib/Entities/MemoizedVector3.js +0 -23
- package/lib/Entities/ModelMesh.d.ts +0 -53
- package/lib/Entities/ModelMesh.js +0 -106
- package/lib/Entities/SceneModelObject.d.ts +0 -40
- package/lib/Entities/SceneModelObject.js +0 -77
- package/lib/PresentationManagers/SceneModel/SceneMeshOverlayPM.d.ts +0 -15
- package/lib/PresentationManagers/SceneModel/SceneMeshOverlayPM.js +0 -34
- package/lib/UseCases/SceneModel/PeelSceneMeshBase.d.ts +0 -20
- package/lib/UseCases/SceneModel/PeelSceneMeshBase.js +0 -66
- package/lib/UseCases/SceneModel/SerializeActiveModel.d.ts +0 -18
- package/lib/UseCases/SceneModel/SerializeActiveModel.js +0 -74
- package/lib/UseCases/SceneModel/SetMeshesEnabledHook.d.ts +0 -7
- package/lib/UseCases/SceneModel/SetMeshesEnabledHook.js +0 -22
- package/lib/UseCases/SceneModel/SetSceneModelMeshOverlayColor.d.ts +0 -2
- package/lib/UseCases/SceneModel/SetSceneModelMeshOverlayColor.js +0 -13
- package/lib/UseCases/SceneModel/setActiveSceneModel.d.ts +0 -2
- package/lib/UseCases/SceneModel/setActiveSceneModel.js +0 -90
- package/lib/UseCases/SceneModel/setupSceneModelFromData.d.ts +0 -2
- package/lib/UseCases/SceneModel/setupSceneModelFromData.js +0 -72
- package/lib/UseCases/SceneObject/PeelSceneObjectBase.d.ts +0 -20
- package/lib/UseCases/SceneObject/PeelSceneObjectBase.js +0 -66
- package/lib/UseCases/SceneObject/index.d.ts +0 -1
- package/lib/UseCases/SceneObjects/PeelSceneObject.d.ts +0 -18
- package/lib/UseCases/SceneObjects/PeelSceneObject.js +0 -61
- package/lib/UseCases/SceneObjects/index.d.ts +0 -1
- package/lib/UseCases/SceneRoot/initializeSceneRoot.d.ts +0 -2
- package/lib/UseCases/SceneRoot/initializeSceneRoot.js +0 -9
|
@@ -1,21 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.makeSceneModelMesh = exports.SceneModelMesh =
|
|
4
|
-
const ValueObjects_1 = require("../ValueObjects");
|
|
3
|
+
exports.makeSceneModelMesh = exports.SceneModelMesh = void 0;
|
|
5
4
|
const MemoizedString_1 = require("./Memoized/MemoizedString");
|
|
6
5
|
const ObservableEntity_1 = require("./ObservableEntity");
|
|
7
|
-
var Color;
|
|
8
|
-
(function (Color) {
|
|
9
|
-
Color["GREEN"] = "Green";
|
|
10
|
-
Color["PINK"] = "Pink";
|
|
11
|
-
Color["YELLOW"] = "Yellow";
|
|
12
|
-
Color["RED"] = "Red";
|
|
13
|
-
Color["BLUE"] = "Blue";
|
|
14
|
-
Color["WHITE"] = "White";
|
|
15
|
-
Color["PURPLE"] = "Purple";
|
|
16
|
-
Color["BLACK"] = "Black";
|
|
17
|
-
Color["ORANGE"] = "Orange";
|
|
18
|
-
})(Color = exports.Color || (exports.Color = {}));
|
|
19
6
|
class SceneModelMesh extends ObservableEntity_1.ObservableEntity {
|
|
20
7
|
}
|
|
21
8
|
exports.SceneModelMesh = SceneModelMesh;
|
|
@@ -26,12 +13,8 @@ exports.makeSceneModelMesh = makeSceneModelMesh;
|
|
|
26
13
|
class SceneModelMeshImp extends SceneModelMesh {
|
|
27
14
|
constructor(id) {
|
|
28
15
|
super();
|
|
29
|
-
this._overlayColor = undefined;
|
|
30
|
-
this.stick = (durationMS, easeFn, onStickComplete) => {
|
|
31
|
-
this.moveTo(ValueObjects_1.Vector3.Zero(), durationMS, easeFn, onStickComplete);
|
|
32
|
-
};
|
|
33
|
-
this._label = new MemoizedString_1.MemoizedString("", this.notify);
|
|
34
16
|
this._meshPaths = [];
|
|
17
|
+
this.memoizedLabel = new MemoizedString_1.MemoizedString("", this.notify);
|
|
35
18
|
this.addMeshPath = (path) => {
|
|
36
19
|
if (this._meshPaths.includes(path))
|
|
37
20
|
return;
|
|
@@ -63,89 +46,6 @@ class SceneModelMeshImp extends SceneModelMesh {
|
|
|
63
46
|
};
|
|
64
47
|
this.id = id;
|
|
65
48
|
}
|
|
66
|
-
get sceneObject() {
|
|
67
|
-
return this._sceneObject;
|
|
68
|
-
}
|
|
69
|
-
set sceneObject(so) {
|
|
70
|
-
if (this._sceneObject) {
|
|
71
|
-
this._sceneObject.removeObserver(this.notify);
|
|
72
|
-
}
|
|
73
|
-
this._sceneObject = so;
|
|
74
|
-
if (this._sceneObject) {
|
|
75
|
-
this._sceneObject.addObserver(this.notify);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
get position() {
|
|
79
|
-
if (!this._sceneObject) {
|
|
80
|
-
console.warn("Scene Mesh doea not have a scene object");
|
|
81
|
-
return ValueObjects_1.Vector3.Zero();
|
|
82
|
-
}
|
|
83
|
-
else {
|
|
84
|
-
return this._sceneObject.transform.localPosition;
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
set position(p) {
|
|
88
|
-
if (!this._sceneObject) {
|
|
89
|
-
console.warn("Scene Mesh doea not have a scene object");
|
|
90
|
-
return;
|
|
91
|
-
}
|
|
92
|
-
this._sceneObject.transform.localPosition = p;
|
|
93
|
-
}
|
|
94
|
-
get overlayColor() {
|
|
95
|
-
return this._overlayColor;
|
|
96
|
-
}
|
|
97
|
-
set overlayColor(overlayColor) {
|
|
98
|
-
if (this._overlayColor !== overlayColor) {
|
|
99
|
-
this._overlayColor = overlayColor;
|
|
100
|
-
this.notify();
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
get canBeStuck() {
|
|
104
|
-
if (!this._sceneObject) {
|
|
105
|
-
console.warn("Scene Mesh doea not have a scene object");
|
|
106
|
-
return false;
|
|
107
|
-
}
|
|
108
|
-
if (ValueObjects_1.Vector3.Equal(this._sceneObject.transform.localPosition, ValueObjects_1.Vector3.Zero())) {
|
|
109
|
-
return false;
|
|
110
|
-
}
|
|
111
|
-
else {
|
|
112
|
-
return true;
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
moveTo(position, durationMS, easeFn, onMoveComplete) {
|
|
116
|
-
if (!this._sceneObject) {
|
|
117
|
-
console.warn("Scene Mesh doea not have a scene object");
|
|
118
|
-
return;
|
|
119
|
-
}
|
|
120
|
-
if (ValueObjects_1.Vector3.Equal(position, this.position)) {
|
|
121
|
-
if (onMoveComplete)
|
|
122
|
-
onMoveComplete();
|
|
123
|
-
return;
|
|
124
|
-
}
|
|
125
|
-
this._sceneObject.transform.lerp(durationMS, easeFn, position, undefined, undefined, onMoveComplete);
|
|
126
|
-
}
|
|
127
|
-
get shown() {
|
|
128
|
-
if (!this._sceneObject) {
|
|
129
|
-
console.warn("Scene Mesh doea not have a scene object");
|
|
130
|
-
return false;
|
|
131
|
-
}
|
|
132
|
-
else {
|
|
133
|
-
return this._sceneObject.shown;
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
set shown(s) {
|
|
137
|
-
if (!this._sceneObject) {
|
|
138
|
-
console.warn("Scene Mesh doea not have a scene object");
|
|
139
|
-
return;
|
|
140
|
-
}
|
|
141
|
-
this._sceneObject.shown = s;
|
|
142
|
-
}
|
|
143
|
-
get label() {
|
|
144
|
-
return this._label.val;
|
|
145
|
-
}
|
|
146
|
-
set label(label) {
|
|
147
|
-
this._label.val = label;
|
|
148
|
-
}
|
|
149
49
|
get meshPaths() {
|
|
150
50
|
return [...this._meshPaths];
|
|
151
51
|
}
|
|
@@ -166,17 +66,10 @@ class SceneModelMeshImp extends SceneModelMesh {
|
|
|
166
66
|
this._meshPaths = paths;
|
|
167
67
|
this.notify();
|
|
168
68
|
}
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
return {
|
|
175
|
-
id: this.id,
|
|
176
|
-
position: this.position.dto,
|
|
177
|
-
shown: this.shown,
|
|
178
|
-
overlayColor: this.overlayColor,
|
|
179
|
-
};
|
|
180
|
-
}
|
|
69
|
+
get label() {
|
|
70
|
+
return this.memoizedLabel.val;
|
|
71
|
+
}
|
|
72
|
+
set label(val) {
|
|
73
|
+
this.memoizedLabel.val = val;
|
|
181
74
|
}
|
|
182
75
|
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
export interface ChannelModelDataMeshDTOv1 {
|
|
2
|
+
version: number;
|
|
3
|
+
id: string;
|
|
4
|
+
meshPaths: string[];
|
|
5
|
+
label: string;
|
|
6
|
+
}
|
|
7
|
+
export interface ChannelModelDataMeshDTOv0 {
|
|
8
|
+
id: string;
|
|
9
|
+
meshPaths: string[];
|
|
10
|
+
label: string;
|
|
11
|
+
}
|
|
12
|
+
export declare type ChannelModelDTO = ChannelModelDTOv0 | ChannelModelDTOv1;
|
|
13
|
+
export interface ChannelModelDTOv0 {
|
|
14
|
+
version: number;
|
|
15
|
+
objects: ChannelModelDataMeshDTOv0[];
|
|
16
|
+
name: string;
|
|
17
|
+
description: string;
|
|
18
|
+
bounds_min: {
|
|
19
|
+
x: number;
|
|
20
|
+
y: number;
|
|
21
|
+
z: number;
|
|
22
|
+
};
|
|
23
|
+
bounds_max: {
|
|
24
|
+
x: number;
|
|
25
|
+
y: number;
|
|
26
|
+
z: number;
|
|
27
|
+
};
|
|
28
|
+
defaultPosition: {
|
|
29
|
+
x: number;
|
|
30
|
+
y: number;
|
|
31
|
+
z: number;
|
|
32
|
+
};
|
|
33
|
+
defaultRotation: {
|
|
34
|
+
x: number;
|
|
35
|
+
y: number;
|
|
36
|
+
z: number;
|
|
37
|
+
w: number;
|
|
38
|
+
};
|
|
39
|
+
defaultScale: number;
|
|
40
|
+
}
|
|
41
|
+
export interface ChannelModelDTOv1 {
|
|
42
|
+
version: number;
|
|
43
|
+
objects: ChannelModelDataMeshDTOv1[];
|
|
44
|
+
name: string;
|
|
45
|
+
bounds_min: {
|
|
46
|
+
x: number;
|
|
47
|
+
y: number;
|
|
48
|
+
z: number;
|
|
49
|
+
};
|
|
50
|
+
bounds_max: {
|
|
51
|
+
x: number;
|
|
52
|
+
y: number;
|
|
53
|
+
z: number;
|
|
54
|
+
};
|
|
55
|
+
defaultPosition: {
|
|
56
|
+
x: number;
|
|
57
|
+
y: number;
|
|
58
|
+
z: number;
|
|
59
|
+
};
|
|
60
|
+
defaultRotation: {
|
|
61
|
+
x: number;
|
|
62
|
+
y: number;
|
|
63
|
+
z: number;
|
|
64
|
+
w: number;
|
|
65
|
+
};
|
|
66
|
+
defaultScale: number;
|
|
67
|
+
}
|
|
68
|
+
export declare function convertChannelModelDataV0toV1(v0: ChannelModelDTOv0): ChannelModelDTOv1;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.convertChannelModelDataV0toV1 = void 0;
|
|
4
|
+
function convertChannelModelDataV0toV1(v0) {
|
|
5
|
+
const { objects, name, bounds_max, bounds_min, defaultPosition, defaultRotation, defaultScale } = v0;
|
|
6
|
+
const objectsV2 = objects.map(obj => {
|
|
7
|
+
const { id, label, meshPaths } = obj;
|
|
8
|
+
return {
|
|
9
|
+
version: 1,
|
|
10
|
+
id, label, meshPaths
|
|
11
|
+
};
|
|
12
|
+
});
|
|
13
|
+
return {
|
|
14
|
+
version: 1,
|
|
15
|
+
objects: objectsV2,
|
|
16
|
+
name,
|
|
17
|
+
bounds_max,
|
|
18
|
+
bounds_min, defaultPosition, defaultRotation, defaultScale
|
|
19
|
+
};
|
|
20
|
+
}
|
|
21
|
+
exports.convertChannelModelDataV0toV1 = convertChannelModelDataV0toV1;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare type EaseFn = (p: number) => number;
|
|
@@ -10,4 +10,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
10
10
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
__exportStar(require("./
|
|
13
|
+
__exportStar(require("./EaseFn"), exports);
|
|
14
|
+
__exportStar(require("./ChannelModelData"), exports);
|
|
@@ -12,6 +12,3 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
13
|
__exportStar(require("./modelDataLoader"), exports);
|
|
14
14
|
__exportStar(require("./loadNewModel"), exports);
|
|
15
|
-
__exportStar(require("./SerializeActiveModel"), exports);
|
|
16
|
-
__exportStar(require("./SetMeshesEnabledHook"), exports);
|
|
17
|
-
__exportStar(require("./SetSceneModelMeshOverlayColor"), exports);
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { AppDispatcher, SceneModel,
|
|
2
|
-
export declare function makeLoadNewModel(sceneModelRepo: SceneModelRepo, sceneObjectRepo: SceneObjectsRepo, sceneRoot: SceneRoot, appDispatcher: AppDispatcher): (modelID: string
|
|
1
|
+
import { AppDispatcher, SceneModel, SceneModelRepo, SceneObjectsRepo, SceneRoot } from "../../Entities";
|
|
2
|
+
export declare function makeLoadNewModel(sceneModelRepo: SceneModelRepo, sceneObjectRepo: SceneObjectsRepo, sceneRoot: SceneRoot, appDispatcher: AppDispatcher): (modelID: string) => Promise<SceneModel>;
|
|
@@ -11,9 +11,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
exports.makeLoadNewModel = void 0;
|
|
13
13
|
const Entities_1 = require("../../Entities");
|
|
14
|
-
const ValueObjects_1 = require("../../ValueObjects");
|
|
15
14
|
function makeLoadNewModel(sceneModelRepo, sceneObjectRepo, sceneRoot, appDispatcher) {
|
|
16
|
-
return function loadNewModel(modelID
|
|
15
|
+
return function loadNewModel(modelID) {
|
|
17
16
|
return __awaiter(this, void 0, void 0, function* () {
|
|
18
17
|
let sceneModel = sceneModelRepo.get(modelID);
|
|
19
18
|
if (sceneModel === undefined) {
|
|
@@ -39,21 +38,20 @@ function makeLoadNewModel(sceneModelRepo, sceneObjectRepo, sceneRoot, appDispatc
|
|
|
39
38
|
const dataDTO = yield sceneModelRepo.dataLoader(modelID);
|
|
40
39
|
sceneModel.applyData(dataDTO);
|
|
41
40
|
sceneModel.getAllMeshes().forEach((meshObject) => {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
so.transform.
|
|
56
|
-
so.transform.localScale = ValueObjects_1.Vector3.One();
|
|
41
|
+
// let so = sceneObjectRepo.get(meshObject.id);
|
|
42
|
+
// if (!so) {
|
|
43
|
+
// so = makeSceneObject(meshObject.id);
|
|
44
|
+
// sceneObjectRepo.add(meshObject.id, so);
|
|
45
|
+
// }
|
|
46
|
+
// so.transform.parent = sceneRoot.sceneObject?.transform;
|
|
47
|
+
// meshObject.sceneObject = so;
|
|
48
|
+
// const initialState = initialStateLookup.get(meshObject.id);
|
|
49
|
+
// meshObject.position = initialState
|
|
50
|
+
// ? Vector3.FromDTO(initialState.position)
|
|
51
|
+
// : Vector3.Zero();
|
|
52
|
+
// meshObject.shown = initialState ? initialState.shown : true;
|
|
53
|
+
// so.transform.localRotation = Quaternion.Identity();
|
|
54
|
+
// so.transform.localScale = Vector3.One();
|
|
57
55
|
});
|
|
58
56
|
yield sceneModelRepo.modelLoader(modelID);
|
|
59
57
|
sceneModel.state = Entities_1.SceneModelState.READY;
|
package/lib/UseCases/index.d.ts
CHANGED
|
@@ -2,8 +2,8 @@ export * from "./setDevicePreview";
|
|
|
2
2
|
export * from "./Handlers";
|
|
3
3
|
export * from "./QuestionChallenge";
|
|
4
4
|
export * from "./SceneModel";
|
|
5
|
-
export * from "./SceneObjects";
|
|
6
5
|
export * from "./LerpVector3";
|
|
7
6
|
export * from "./SceneRoot";
|
|
8
7
|
export * from "./HoverLabels/trySetHoverLabel";
|
|
9
8
|
export * from "./HoverLabels/SerializeAllowHoverLabel";
|
|
9
|
+
export * from "./setupStandardAppObjects";
|
package/lib/UseCases/index.js
CHANGED
|
@@ -14,8 +14,8 @@ __exportStar(require("./setDevicePreview"), exports);
|
|
|
14
14
|
__exportStar(require("./Handlers"), exports);
|
|
15
15
|
__exportStar(require("./QuestionChallenge"), exports);
|
|
16
16
|
__exportStar(require("./SceneModel"), exports);
|
|
17
|
-
__exportStar(require("./SceneObjects"), exports);
|
|
18
17
|
__exportStar(require("./LerpVector3"), exports);
|
|
19
18
|
__exportStar(require("./SceneRoot"), exports);
|
|
20
19
|
__exportStar(require("./HoverLabels/trySetHoverLabel"), exports);
|
|
21
20
|
__exportStar(require("./HoverLabels/SerializeAllowHoverLabel"), exports);
|
|
21
|
+
__exportStar(require("./setupStandardAppObjects"), exports);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.setupStandardAppObjects = void 0;
|
|
4
|
+
const ChannelModel_1 = require("../AppObjectComponents/ChannelModel");
|
|
5
|
+
function setupStandardAppObjects(appObjects) {
|
|
6
|
+
const appObj = appObjects.getOrCreate("StandardAppObjects");
|
|
7
|
+
ChannelModel_1.ChannelModelRepo.addToAO(appObj);
|
|
8
|
+
return appObj;
|
|
9
|
+
}
|
|
10
|
+
exports.setupStandardAppObjects = setupStandardAppObjects;
|
|
@@ -54,6 +54,7 @@ export declare class Quaternion {
|
|
|
54
54
|
* @returns The resulting Quaterion
|
|
55
55
|
*/
|
|
56
56
|
static FromAngleAxis(axis: Vector3, angle: Angle): Quaternion;
|
|
57
|
+
static FromDirectionVector(direction: Vector3): Quaternion;
|
|
57
58
|
/**
|
|
58
59
|
* Froms up a Quaternion from the Yaw-Pitch-Roll (Tait-Bryan) convetion
|
|
59
60
|
* @param yaw defines the rotation around the y axis
|
|
@@ -4,7 +4,6 @@ exports.Quaternion = void 0;
|
|
|
4
4
|
const Angle_1 = require("./Angle");
|
|
5
5
|
const Matrix_1 = require("./Matrix");
|
|
6
6
|
const Vector3_1 = require("./Vector3");
|
|
7
|
-
;
|
|
8
7
|
class Quaternion {
|
|
9
8
|
constructor(x, y, z, w) {
|
|
10
9
|
this.x = x;
|
|
@@ -100,6 +99,27 @@ class Quaternion {
|
|
|
100
99
|
const z = axisUnit.z * sin;
|
|
101
100
|
return new Quaternion(x, y, z, w);
|
|
102
101
|
}
|
|
102
|
+
static FromDirectionVector(direction) {
|
|
103
|
+
if (direction.magnitued === 0) {
|
|
104
|
+
return Quaternion.Identity();
|
|
105
|
+
}
|
|
106
|
+
const dirUnit = direction.unit;
|
|
107
|
+
if (dirUnit.x === 0 && dirUnit.z === 0) {
|
|
108
|
+
if (dirUnit.y > 0) {
|
|
109
|
+
return Quaternion.FromYawPitchRoll(Angle_1.Angle.FromDegrees(0), Angle_1.Angle.FromDegrees(-90), Angle_1.Angle.FromDegrees(0));
|
|
110
|
+
}
|
|
111
|
+
else {
|
|
112
|
+
return Quaternion.FromYawPitchRoll(Angle_1.Angle.FromDegrees(0), Angle_1.Angle.FromDegrees(90), Angle_1.Angle.FromDegrees(0));
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
const yawRadians = -Math.atan2(dirUnit.z, dirUnit.x) + Math.PI / 2;
|
|
116
|
+
const len = Math.sqrt(dirUnit.x * dirUnit.x + dirUnit.z * dirUnit.z);
|
|
117
|
+
const pitchRadians = -Math.atan2(dirUnit.y, len);
|
|
118
|
+
const yaw = Angle_1.Angle.FromRadians(yawRadians);
|
|
119
|
+
const pitch = Angle_1.Angle.FromRadians(pitchRadians);
|
|
120
|
+
const roll = Angle_1.Angle.FromRadians(0);
|
|
121
|
+
return Quaternion.FromYawPitchRoll(yaw, pitch, roll);
|
|
122
|
+
}
|
|
103
123
|
/**
|
|
104
124
|
* Froms up a Quaternion from the Yaw-Pitch-Roll (Tait-Bryan) convetion
|
|
105
125
|
* @param yaw defines the rotation around the y axis
|
package/lib/index.d.ts
CHANGED
package/lib/index.js
CHANGED
|
@@ -10,7 +10,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
10
10
|
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
|
-
exports.AppValueObjects = exports.AppEntities = exports.AppUCs = exports.AppPMs = void 0;
|
|
13
|
+
exports.AOComponents = exports.AppValueObjects = exports.AppEntities = exports.AppUCs = exports.AppPMs = void 0;
|
|
14
14
|
const AppPMs = require("./PresentationManagers");
|
|
15
15
|
exports.AppPMs = AppPMs;
|
|
16
16
|
const AppUCs = require("./UseCases");
|
|
@@ -20,3 +20,6 @@ exports.AppEntities = AppEntities;
|
|
|
20
20
|
const AppValueObjects = require("./ValueObjects");
|
|
21
21
|
exports.AppValueObjects = AppValueObjects;
|
|
22
22
|
__exportStar(require("./Utilities"), exports);
|
|
23
|
+
const AOComponents = require("./AppObjectComponents");
|
|
24
|
+
exports.AOComponents = AOComponents;
|
|
25
|
+
__exportStar(require("./AppObject"), exports);
|
package/package.json
CHANGED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MemoizedBoolean = void 0;
|
|
4
|
-
class MemoizedBoolean {
|
|
5
|
-
constructor(initialValue, onChangeCallback) {
|
|
6
|
-
this._val = initialValue;
|
|
7
|
-
this.onChangeCallback = onChangeCallback;
|
|
8
|
-
}
|
|
9
|
-
get val() {
|
|
10
|
-
return this._val;
|
|
11
|
-
}
|
|
12
|
-
set val(b) {
|
|
13
|
-
if (this._val === b)
|
|
14
|
-
return;
|
|
15
|
-
this._val = b;
|
|
16
|
-
this.onChangeCallback();
|
|
17
|
-
}
|
|
18
|
-
setValQuietly(val) {
|
|
19
|
-
this._val = val;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
exports.MemoizedBoolean = MemoizedBoolean;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { Color } from "../ValueObjects";
|
|
2
|
-
export declare class MemoizedColor {
|
|
3
|
-
private _val;
|
|
4
|
-
get val(): Color;
|
|
5
|
-
set val(v: Color);
|
|
6
|
-
setValQuietly(val: Color): void;
|
|
7
|
-
private onChangeCallback;
|
|
8
|
-
constructor(initialValue: Color, onChangeCallback: () => void);
|
|
9
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MemoizedColor = void 0;
|
|
4
|
-
const ValueObjects_1 = require("../ValueObjects");
|
|
5
|
-
class MemoizedColor {
|
|
6
|
-
constructor(initialValue, onChangeCallback) {
|
|
7
|
-
this._val = initialValue;
|
|
8
|
-
this.onChangeCallback = onChangeCallback;
|
|
9
|
-
}
|
|
10
|
-
get val() {
|
|
11
|
-
return this._val;
|
|
12
|
-
}
|
|
13
|
-
set val(v) {
|
|
14
|
-
if (ValueObjects_1.Color.Equal(v, this._val))
|
|
15
|
-
return;
|
|
16
|
-
this._val = v;
|
|
17
|
-
this.onChangeCallback();
|
|
18
|
-
}
|
|
19
|
-
setValQuietly(val) {
|
|
20
|
-
this._val = val;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
exports.MemoizedColor = MemoizedColor;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MemoizedNumber = void 0;
|
|
4
|
-
class MemoizedNumber {
|
|
5
|
-
constructor(initialValue, onChangeCallback) {
|
|
6
|
-
this._val = initialValue;
|
|
7
|
-
this.onChangeCallback = onChangeCallback;
|
|
8
|
-
}
|
|
9
|
-
get val() {
|
|
10
|
-
return this._val;
|
|
11
|
-
}
|
|
12
|
-
set val(b) {
|
|
13
|
-
if (this._val === b)
|
|
14
|
-
return;
|
|
15
|
-
this._val = b;
|
|
16
|
-
this.onChangeCallback();
|
|
17
|
-
}
|
|
18
|
-
setValQuietly(val) {
|
|
19
|
-
this._val = val;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
exports.MemoizedNumber = MemoizedNumber;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { Quaternion } from "../ValueObjects";
|
|
2
|
-
export declare class MemoizedQuaternion {
|
|
3
|
-
private _val;
|
|
4
|
-
get val(): Quaternion;
|
|
5
|
-
set val(v: Quaternion);
|
|
6
|
-
setValQuietly(val: Quaternion): void;
|
|
7
|
-
private onChangeCallback;
|
|
8
|
-
constructor(initialValue: Quaternion, onChangeCallback: () => void);
|
|
9
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MemoizedQuaternion = void 0;
|
|
4
|
-
const ValueObjects_1 = require("../ValueObjects");
|
|
5
|
-
class MemoizedQuaternion {
|
|
6
|
-
constructor(initialValue, onChangeCallback) {
|
|
7
|
-
this._val = initialValue;
|
|
8
|
-
this.onChangeCallback = onChangeCallback;
|
|
9
|
-
}
|
|
10
|
-
get val() {
|
|
11
|
-
return this._val;
|
|
12
|
-
}
|
|
13
|
-
set val(v) {
|
|
14
|
-
if (ValueObjects_1.Quaternion.Equal(v, this._val))
|
|
15
|
-
return;
|
|
16
|
-
this._val = v;
|
|
17
|
-
this.onChangeCallback();
|
|
18
|
-
}
|
|
19
|
-
setValQuietly(val) {
|
|
20
|
-
this._val = val;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
exports.MemoizedQuaternion = MemoizedQuaternion;
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MemoizedString = void 0;
|
|
4
|
-
class MemoizedString {
|
|
5
|
-
constructor(initialValue, onChangeCallback) {
|
|
6
|
-
this._val = initialValue;
|
|
7
|
-
this.onChangeCallback = onChangeCallback;
|
|
8
|
-
}
|
|
9
|
-
get val() {
|
|
10
|
-
return this._val;
|
|
11
|
-
}
|
|
12
|
-
set val(b) {
|
|
13
|
-
if (this._val === b)
|
|
14
|
-
return;
|
|
15
|
-
this._val = b;
|
|
16
|
-
this.onChangeCallback();
|
|
17
|
-
}
|
|
18
|
-
setValQuietly(val) {
|
|
19
|
-
this._val = val;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
exports.MemoizedString = MemoizedString;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { Vector2 } from "../ValueObjects";
|
|
2
|
-
export declare class MemoizedVector2 {
|
|
3
|
-
private _val;
|
|
4
|
-
get val(): Vector2;
|
|
5
|
-
set val(v: Vector2);
|
|
6
|
-
setValQuietly(val: Vector2): void;
|
|
7
|
-
private onChangeCallback;
|
|
8
|
-
constructor(initialValue: Vector2, onChangeCallback: () => void);
|
|
9
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MemoizedVector2 = void 0;
|
|
4
|
-
const ValueObjects_1 = require("../ValueObjects");
|
|
5
|
-
class MemoizedVector2 {
|
|
6
|
-
constructor(initialValue, onChangeCallback) {
|
|
7
|
-
this._val = initialValue;
|
|
8
|
-
this.onChangeCallback = onChangeCallback;
|
|
9
|
-
}
|
|
10
|
-
get val() {
|
|
11
|
-
return this._val;
|
|
12
|
-
}
|
|
13
|
-
set val(v) {
|
|
14
|
-
if (ValueObjects_1.Vector2.Equal(v, this._val))
|
|
15
|
-
return;
|
|
16
|
-
this._val = v;
|
|
17
|
-
this.onChangeCallback();
|
|
18
|
-
}
|
|
19
|
-
setValQuietly(val) {
|
|
20
|
-
this._val = val;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
exports.MemoizedVector2 = MemoizedVector2;
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { Vector3 } from "../ValueObjects/Vector3";
|
|
2
|
-
export declare class MemoizedVector3 {
|
|
3
|
-
private _val;
|
|
4
|
-
get val(): Vector3;
|
|
5
|
-
set val(v: Vector3);
|
|
6
|
-
setValQuietly(val: Vector3): void;
|
|
7
|
-
private onChangeCallback;
|
|
8
|
-
constructor(initialValue: Vector3, onChangeCallback: () => void);
|
|
9
|
-
}
|