@vived/app 3.5.0 → 3.5.1

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.
Files changed (65) hide show
  1. package/lib/AppObjectComponents/StoredView/Entities/StoredView.d.ts +13 -0
  2. package/lib/AppObjectComponents/StoredView/Entities/StoredView.js +64 -0
  3. package/lib/AppObjectComponents/StoredView/UC/SerializeStoredView.d.ts +27 -0
  4. package/lib/AppObjectComponents/StoredView/UC/SerializeStoredView.js +82 -0
  5. package/lib/AppObjectComponents/StoredView/index.d.ts +2 -0
  6. package/lib/AppObjectComponents/StoredView/index.js +14 -0
  7. package/lib/Entities/FocusCamera.d.ts +70 -0
  8. package/lib/Entities/FocusCamera.js +272 -0
  9. package/lib/Entities/MemoizedBoolean.d.ts +8 -0
  10. package/lib/Entities/MemoizedBoolean.js +22 -0
  11. package/lib/Entities/MemoizedNumber.d.ts +8 -0
  12. package/lib/Entities/MemoizedNumber.js +22 -0
  13. package/lib/Entities/MemoizedQuaternion.d.ts +9 -0
  14. package/lib/Entities/MemoizedQuaternion.js +23 -0
  15. package/lib/Entities/MemoizedString.d.ts +8 -0
  16. package/lib/Entities/MemoizedString.js +22 -0
  17. package/lib/Entities/MemoizedVector2.d.ts +9 -0
  18. package/lib/Entities/MemoizedVector2.js +23 -0
  19. package/lib/Entities/MemoizedVector3.d.ts +9 -0
  20. package/lib/Entities/MemoizedVector3.js +23 -0
  21. package/lib/Entities/MeshModel.d.ts +68 -0
  22. package/lib/Entities/MeshModel.js +174 -0
  23. package/lib/Entities/ModelObject.d.ts +10 -0
  24. package/lib/Entities/ModelObject.js +42 -0
  25. package/lib/PresentationManagers/FocusCameraPM.d.ts +15 -0
  26. package/lib/PresentationManagers/FocusCameraPM.js +31 -0
  27. package/lib/PresentationManagers/FocusCameraPosRotPM.d.ts +13 -0
  28. package/lib/PresentationManagers/FocusCameraPosRotPM.js +28 -0
  29. package/lib/PresentationManagers/SceneModel/SceneMeshOverlayPM.d.ts +15 -0
  30. package/lib/PresentationManagers/SceneModel/SceneMeshOverlayPM.js +34 -0
  31. package/lib/UseCases/FocusCamera/BumpDollyFocusCamera.d.ts +17 -0
  32. package/lib/UseCases/FocusCamera/BumpDollyFocusCamera.js +64 -0
  33. package/lib/UseCases/FocusCamera/LerpFocusCamera.d.ts +36 -0
  34. package/lib/UseCases/FocusCamera/LerpFocusCamera.js +71 -0
  35. package/lib/UseCases/FocusCamera/PinchDollyFocusCamera.d.ts +11 -0
  36. package/lib/UseCases/FocusCamera/PinchDollyFocusCamera.js +36 -0
  37. package/lib/UseCases/FocusCamera/PixelDollyFocusCamera.d.ts +11 -0
  38. package/lib/UseCases/FocusCamera/PixelDollyFocusCamera.js +36 -0
  39. package/lib/UseCases/FocusCamera/PixelOrbitFocusCamera.d.ts +11 -0
  40. package/lib/UseCases/FocusCamera/PixelOrbitFocusCamera.js +26 -0
  41. package/lib/UseCases/FocusCamera/PixelPlanePanFocusCamera.d.ts +11 -0
  42. package/lib/UseCases/FocusCamera/PixelPlanePanFocusCamera.js +33 -0
  43. package/lib/UseCases/FocusCamera/SerializeFocusCamera.d.ts +22 -0
  44. package/lib/UseCases/FocusCamera/SerializeFocusCamera.js +81 -0
  45. package/lib/UseCases/FocusCamera/index.d.ts +7 -0
  46. package/lib/UseCases/FocusCamera/index.js +19 -0
  47. package/lib/UseCases/SceneModel/SerializeActiveModel.d.ts +18 -0
  48. package/lib/UseCases/SceneModel/SerializeActiveModel.js +74 -0
  49. package/lib/UseCases/SceneModel/SetMeshesEnabledHook.d.ts +7 -0
  50. package/lib/UseCases/SceneModel/SetMeshesEnabledHook.js +22 -0
  51. package/lib/UseCases/SceneModel/SetSceneModelMeshOverlayColor.d.ts +2 -0
  52. package/lib/UseCases/SceneModel/SetSceneModelMeshOverlayColor.js +13 -0
  53. package/lib/UseCases/SceneModel/index.d.ts +3 -0
  54. package/lib/UseCases/SceneModel/index.js +3 -0
  55. package/lib/UseCases/SceneModel/loadNewModel.d.ts +2 -2
  56. package/lib/UseCases/SceneModel/loadNewModel.js +17 -15
  57. package/lib/UseCases/SceneObjects/PeelSceneObject.d.ts +18 -0
  58. package/lib/UseCases/SceneObjects/PeelSceneObject.js +61 -0
  59. package/lib/UseCases/SceneObjects/index.d.ts +1 -0
  60. package/lib/UseCases/SceneObjects/index.js +13 -0
  61. package/package.json +1 -1
  62. package/lib/AppObject/IsEnabledPM.d.ts +0 -11
  63. package/lib/AppObject/IsEnabledPM.js +0 -29
  64. package/lib/AppObjectComponents/Transform3D/UseCases/getStickUC.d.ts +0 -3
  65. package/lib/AppObjectComponents/Transform3D/UseCases/getStickUC.js +0 -8
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.PeelSceneObject = void 0;
4
+ const ValueObjects_1 = require("../../ValueObjects");
5
+ class PeelSceneObject {
6
+ constructor(babylon, sceneObjectRepo) {
7
+ this.babylon = babylon;
8
+ this.sceneObjectRepo = sceneObjectRepo;
9
+ this._didPeel = false;
10
+ this._peelingSceneObject = undefined;
11
+ this._peelPlane = ValueObjects_1.ParametricPlane.XY();
12
+ this._allowPeel = false;
13
+ this._pickOffset = ValueObjects_1.Vector3.Zero();
14
+ this.tryInitializePeel = (pickRay) => {
15
+ var _a, _b;
16
+ this._allowPeel = false;
17
+ this._didPeel = false;
18
+ this._peelingSceneObject = undefined;
19
+ const sceneObjectID = this.babylon.sceneObjectRayPick(pickRay);
20
+ if (!sceneObjectID)
21
+ return;
22
+ const sceneObject = this.sceneObjectRepo.get(sceneObjectID);
23
+ if (!sceneObject)
24
+ return;
25
+ this._peelingSceneObject = sceneObject;
26
+ const scenePick = this.babylon.sceneRayPick(pickRay);
27
+ if (!scenePick)
28
+ return;
29
+ const pickPlaneDirection = ValueObjects_1.Vector3.Backward();
30
+ const planePickPos = (_a = scenePick.worldPickPoint) !== null && _a !== void 0 ? _a : ValueObjects_1.Vector3.Zero();
31
+ this._peelPlane = ValueObjects_1.ParametricPlane.FromPointNormal(planePickPos, pickPlaneDirection);
32
+ const pick = (_b = this._peelPlane.intersectLine(pickRay)) !== null && _b !== void 0 ? _b : ValueObjects_1.Vector3.Zero();
33
+ this._rootPos = this._peelingSceneObject.transform.worldPosition;
34
+ this._pickOffset = ValueObjects_1.Vector3.Subtract(this._rootPos, pick);
35
+ this._allowPeel = true;
36
+ };
37
+ this.updatePeel = (pickRay) => {
38
+ var _a;
39
+ if (!this._allowPeel)
40
+ return;
41
+ if (!this._peelingSceneObject)
42
+ return;
43
+ const pick = (_a = this._peelPlane.intersectLine(pickRay)) !== null && _a !== void 0 ? _a : ValueObjects_1.Vector3.Zero();
44
+ this._peelingSceneObject.transform.worldPosition = ValueObjects_1.Vector3.Add(pick, this._pickOffset);
45
+ this._didPeel = true;
46
+ };
47
+ this.stopPeel = () => {
48
+ this._allowPeel = false;
49
+ this._didPeel = false;
50
+ this._peelingSceneObject = undefined;
51
+ this._rootPos = undefined;
52
+ };
53
+ }
54
+ get didPeel() {
55
+ return this._didPeel;
56
+ }
57
+ get peelingSceneObject() {
58
+ return this._peelingSceneObject;
59
+ }
60
+ }
61
+ exports.PeelSceneObject = PeelSceneObject;
@@ -0,0 +1 @@
1
+ export * from "./PeelSceneObject";
@@ -0,0 +1,13 @@
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("./PeelSceneObject"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vived/app",
3
- "version": "3.5.0",
3
+ "version": "3.5.1",
4
4
  "description": "Public package for the VIVED Learning App system",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
@@ -1,11 +0,0 @@
1
- import { AppObject } from "./AppObject";
2
- import { AppObjectPM } from "./AppObjectPM";
3
- import { AppObjectRepo } from "./AppObjectRepo";
4
- export declare class IsEnabledPM extends AppObjectPM<boolean> {
5
- static readonly type = "IsEnabledPM";
6
- onEnabledChange: () => void;
7
- dispose: () => void;
8
- vmsAreEqual(a: boolean, b: boolean): boolean;
9
- constructor(appObject: AppObject);
10
- static getForID(appObjID: string, appObjects: AppObjectRepo): IsEnabledPM | undefined;
11
- }
@@ -1,29 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.IsEnabledPM = void 0;
4
- const AppObjectPM_1 = require("./AppObjectPM");
5
- class IsEnabledPM extends AppObjectPM_1.AppObjectPM {
6
- constructor(appObject) {
7
- super(appObject, IsEnabledPM.type);
8
- this.onEnabledChange = () => {
9
- this.doUpdateView(this.appObject.enabled);
10
- };
11
- this.dispose = () => {
12
- this.appObject.removeObserver(this.onEnabledChange);
13
- };
14
- appObject.addObserver(this.onEnabledChange);
15
- this.onEnabledChange();
16
- }
17
- vmsAreEqual(a, b) {
18
- return a === b;
19
- }
20
- static getForID(appObjID, appObjects) {
21
- const appObj = appObjects.get(appObjID);
22
- if (appObj === undefined) {
23
- return undefined;
24
- }
25
- return appObj.getComponent(IsEnabledPM.type);
26
- }
27
- }
28
- exports.IsEnabledPM = IsEnabledPM;
29
- IsEnabledPM.type = "IsEnabledPM";
@@ -1,3 +0,0 @@
1
- import { AppObject } from "../../../AppObject";
2
- import { StickTransform3D } from "./StickTransform3D";
3
- export declare function getStickUC(appObject: AppObject): StickTransform3D | undefined;
@@ -1,8 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getStickUC = void 0;
4
- const StickTransform3D_1 = require("./StickTransform3D");
5
- function getStickUC(appObject) {
6
- return appObject.getUC(StickTransform3D_1.STICK_TRANFORM3D_UC_TYPE);
7
- }
8
- exports.getStickUC = getStickUC;