@shapediver/viewer.rendering-engine.camera-engine 2.10.1-rc.0 → 2.12.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.
Files changed (84) hide show
  1. package/dist/implementation/CameraEngine.js +45 -41
  2. package/dist/implementation/CameraEngine.js.map +1 -1
  3. package/dist/implementation/camera/AbstractCamera.d.ts +5 -3
  4. package/dist/implementation/camera/AbstractCamera.d.ts.map +1 -1
  5. package/dist/implementation/camera/AbstractCamera.js +71 -36
  6. package/dist/implementation/camera/AbstractCamera.js.map +1 -1
  7. package/dist/implementation/camera/OrthographicCamera.js +72 -68
  8. package/dist/implementation/camera/OrthographicCamera.js.map +1 -1
  9. package/dist/implementation/camera/PerspectiveCamera.js +69 -65
  10. package/dist/implementation/camera/PerspectiveCamera.js.map +1 -1
  11. package/dist/implementation/controls/AbstractCameraControls.d.ts +13 -7
  12. package/dist/implementation/controls/AbstractCameraControls.d.ts.map +1 -1
  13. package/dist/implementation/controls/AbstractCameraControls.js +105 -68
  14. package/dist/implementation/controls/AbstractCameraControls.js.map +1 -1
  15. package/dist/implementation/controls/OrthographicCameraControls.d.ts.map +1 -1
  16. package/dist/implementation/controls/OrthographicCameraControls.js +16 -12
  17. package/dist/implementation/controls/OrthographicCameraControls.js.map +1 -1
  18. package/dist/implementation/controls/PerspectiveCameraControls.d.ts +15 -3
  19. package/dist/implementation/controls/PerspectiveCameraControls.d.ts.map +1 -1
  20. package/dist/implementation/controls/PerspectiveCameraControls.js +126 -92
  21. package/dist/implementation/controls/PerspectiveCameraControls.js.map +1 -1
  22. package/dist/implementation/controls/orthographic/CameraControlsEventDistribution.d.ts +3 -3
  23. package/dist/implementation/controls/orthographic/CameraControlsEventDistribution.d.ts.map +1 -1
  24. package/dist/implementation/controls/orthographic/CameraControlsEventDistribution.js +36 -24
  25. package/dist/implementation/controls/orthographic/CameraControlsEventDistribution.js.map +1 -1
  26. package/dist/implementation/controls/orthographic/CameraControlsLogic.d.ts.map +1 -1
  27. package/dist/implementation/controls/orthographic/CameraControlsLogic.js +70 -68
  28. package/dist/implementation/controls/orthographic/CameraControlsLogic.js.map +1 -1
  29. package/dist/implementation/controls/perspective/CameraControlsEventDistribution.d.ts +4 -4
  30. package/dist/implementation/controls/perspective/CameraControlsEventDistribution.d.ts.map +1 -1
  31. package/dist/implementation/controls/perspective/CameraControlsEventDistribution.js +44 -33
  32. package/dist/implementation/controls/perspective/CameraControlsEventDistribution.js.map +1 -1
  33. package/dist/implementation/controls/perspective/CameraControlsLogic.d.ts +3 -2
  34. package/dist/implementation/controls/perspective/CameraControlsLogic.d.ts.map +1 -1
  35. package/dist/implementation/controls/perspective/CameraControlsLogic.js +147 -121
  36. package/dist/implementation/controls/perspective/CameraControlsLogic.js.map +1 -1
  37. package/dist/implementation/interpolation/CameraInterpolationManager.js +38 -11
  38. package/dist/implementation/interpolation/CameraInterpolationManager.js.map +1 -1
  39. package/dist/implementation/interpolation/interpolationMethods/CameraCylindricalInterpolation.js +25 -21
  40. package/dist/implementation/interpolation/interpolationMethods/CameraCylindricalInterpolation.js.map +1 -1
  41. package/dist/implementation/interpolation/interpolationMethods/CameraLinearInterpolation.js +12 -8
  42. package/dist/implementation/interpolation/interpolationMethods/CameraLinearInterpolation.js.map +1 -1
  43. package/dist/implementation/interpolation/interpolationMethods/CameraMultipleInterpolation.js +12 -8
  44. package/dist/implementation/interpolation/interpolationMethods/CameraMultipleInterpolation.js.map +1 -1
  45. package/dist/implementation/interpolation/interpolationMethods/CameraOrthographicInterpolation.js +12 -8
  46. package/dist/implementation/interpolation/interpolationMethods/CameraOrthographicInterpolation.js.map +1 -1
  47. package/dist/implementation/interpolation/interpolationMethods/CameraSphericalInterpolation.js +19 -15
  48. package/dist/implementation/interpolation/interpolationMethods/CameraSphericalInterpolation.js.map +1 -1
  49. package/dist/index.js +19 -11
  50. package/dist/index.js.map +1 -1
  51. package/dist/interfaces/ICameraEngine.js +5 -2
  52. package/dist/interfaces/ICameraEngine.js.map +1 -1
  53. package/dist/interfaces/camera/ICamera.d.ts +9 -8
  54. package/dist/interfaces/camera/ICamera.d.ts.map +1 -1
  55. package/dist/interfaces/camera/ICamera.js +2 -1
  56. package/dist/interfaces/camera/IOrthographicCamera.js +5 -2
  57. package/dist/interfaces/camera/IOrthographicCamera.js.map +1 -1
  58. package/dist/interfaces/camera/IPerspectiveCamera.js +2 -1
  59. package/dist/interfaces/controls/ICameraControls.d.ts +4 -3
  60. package/dist/interfaces/controls/ICameraControls.d.ts.map +1 -1
  61. package/dist/interfaces/controls/ICameraControls.js +2 -1
  62. package/dist/interfaces/controls/ICameraControlsEventDistribution.js +2 -1
  63. package/dist/interfaces/controls/ICameraControlsLogic.d.ts +3 -2
  64. package/dist/interfaces/controls/ICameraControlsLogic.d.ts.map +1 -1
  65. package/dist/interfaces/controls/ICameraControlsLogic.js +2 -1
  66. package/dist/interfaces/controls/ICameraControlsUsage.js +2 -1
  67. package/dist/interfaces/controls/IOrthographicCameraControls.js +2 -1
  68. package/dist/interfaces/controls/IPerspectiveCameraControls.d.ts +4 -0
  69. package/dist/interfaces/controls/IPerspectiveCameraControls.d.ts.map +1 -1
  70. package/dist/interfaces/controls/IPerspectiveCameraControls.js +2 -1
  71. package/dist/interfaces/interpolation/ICameraInterpolation.js +2 -1
  72. package/package.json +8 -8
  73. package/src/implementation/camera/AbstractCamera.ts +44 -37
  74. package/src/implementation/controls/AbstractCameraControls.ts +113 -70
  75. package/src/implementation/controls/OrthographicCameraControls.ts +9 -9
  76. package/src/implementation/controls/PerspectiveCameraControls.ts +114 -73
  77. package/src/implementation/controls/orthographic/CameraControlsEventDistribution.ts +61 -56
  78. package/src/implementation/controls/orthographic/CameraControlsLogic.ts +45 -53
  79. package/src/implementation/controls/perspective/CameraControlsEventDistribution.ts +83 -80
  80. package/src/implementation/controls/perspective/CameraControlsLogic.ts +100 -81
  81. package/src/interfaces/camera/ICamera.ts +31 -26
  82. package/src/interfaces/controls/ICameraControls.ts +5 -5
  83. package/src/interfaces/controls/ICameraControlsLogic.ts +6 -2
  84. package/src/interfaces/controls/IPerspectiveCameraControls.ts +10 -2
@@ -1,13 +1,16 @@
1
- import { EventEngine, EVENTTYPE, Logger, ShapeDiverViewerCameraError, StateEngine, UuidGenerator, } from '@shapediver/viewer.shared.services';
2
- import { Box } from '@shapediver/viewer.shared.math';
3
- import { vec3 } from 'gl-matrix';
4
- import { Tree, TreeNode } from '@shapediver/viewer.shared.node-tree';
5
- import { CAMERA_TYPE } from '../interfaces/ICameraEngine';
6
- import { AbstractCamera } from './camera/AbstractCamera';
7
- import { PerspectiveCamera } from './camera/PerspectiveCamera';
8
- import { OrthographicCamera } from './camera/OrthographicCamera';
9
- import { ORTHOGRAPHIC_CAMERA_DIRECTION } from '../interfaces/camera/IOrthographicCamera';
10
- export class CameraEngine {
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CameraEngine = void 0;
4
+ const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
5
+ const viewer_shared_math_1 = require("@shapediver/viewer.shared.math");
6
+ const gl_matrix_1 = require("gl-matrix");
7
+ const viewer_shared_node_tree_1 = require("@shapediver/viewer.shared.node-tree");
8
+ const ICameraEngine_1 = require("../interfaces/ICameraEngine");
9
+ const AbstractCamera_1 = require("./camera/AbstractCamera");
10
+ const PerspectiveCamera_1 = require("./camera/PerspectiveCamera");
11
+ const OrthographicCamera_1 = require("./camera/OrthographicCamera");
12
+ const IOrthographicCamera_1 = require("../interfaces/camera/IOrthographicCamera");
13
+ class CameraEngine {
11
14
  // #endregion Properties (10)
12
15
  // #region Constructors (1)
13
16
  constructor(_renderingEngine, _canvas) {
@@ -16,27 +19,27 @@ export class CameraEngine {
16
19
  // #region Properties (10)
17
20
  this._cameras = {};
18
21
  this._camerasDomEventListenerToken = {};
19
- this._cameraNode = new TreeNode('cameras');
20
- this._eventEngine = EventEngine.instance;
21
- this._logger = Logger.instance;
22
- this._stateEngine = StateEngine.instance;
23
- this._tree = Tree.instance;
24
- this._uuidGenerator = UuidGenerator.instance;
22
+ this._cameraNode = new viewer_shared_node_tree_1.TreeNode('cameras');
23
+ this._eventEngine = viewer_shared_services_1.EventEngine.instance;
24
+ this._logger = viewer_shared_services_1.Logger.instance;
25
+ this._stateEngine = viewer_shared_services_1.StateEngine.instance;
26
+ this._tree = viewer_shared_node_tree_1.Tree.instance;
27
+ this._uuidGenerator = viewer_shared_services_1.UuidGenerator.instance;
25
28
  this._camera = null;
26
29
  this._settingsApplied = false;
27
- this._boundingBox = new Box();
30
+ this._boundingBox = new viewer_shared_math_1.Box();
28
31
  this._tree.root.addChild(this._cameraNode);
29
32
  this._cameraNode.restrictViewports = [this._renderingEngine.id];
30
- this._eventEngine.addListener(EVENTTYPE.SCENE.SCENE_BOUNDING_BOX_CHANGE, (e) => {
33
+ this._eventEngine.addListener(viewer_shared_services_1.EVENTTYPE.SCENE.SCENE_BOUNDING_BOX_CHANGE, (e) => {
31
34
  const viewerEvent = e;
32
35
  if (viewerEvent.viewportId === this._renderingEngine.id) {
33
- this._boundingBox = new Box(viewerEvent.boundingBox.min, viewerEvent.boundingBox.max);
36
+ this._boundingBox = new viewer_shared_math_1.Box(viewerEvent.boundingBox.min, viewerEvent.boundingBox.max);
34
37
  const cameras = this.cameras;
35
38
  for (let c in cameras)
36
39
  cameras[c].boundingBox = this._boundingBox.clone();
37
40
  }
38
41
  });
39
- this._eventEngine.addListener(EVENTTYPE.VIEWPORT.VIEWPORT_UPDATED, (e) => {
42
+ this._eventEngine.addListener(viewer_shared_services_1.EVENTTYPE.VIEWPORT.VIEWPORT_UPDATED, (e) => {
40
43
  const viewerEvent = e;
41
44
  if (viewerEvent.viewportId === this._renderingEngine.id) {
42
45
  this.searchForNewCameras();
@@ -71,10 +74,10 @@ export class CameraEngine {
71
74
  for (let id in settingsEngine.settings.camera.cameras) {
72
75
  const cameraSetting = settingsEngine.settings.camera.cameras[id];
73
76
  if (cameraSetting.type === 'perspective') {
74
- this.createCamera(CAMERA_TYPE.PERSPECTIVE, id);
77
+ this.createCamera(ICameraEngine_1.CAMERA_TYPE.PERSPECTIVE, id);
75
78
  }
76
79
  else {
77
- const camera = this.createCamera(CAMERA_TYPE.ORTHOGRAPHIC, id);
80
+ const camera = this.createCamera(ICameraEngine_1.CAMERA_TYPE.ORTHOGRAPHIC, id);
78
81
  camera.direction = cameraSetting.type;
79
82
  }
80
83
  }
@@ -112,9 +115,9 @@ export class CameraEngine {
112
115
  const cameras = this.cameras;
113
116
  const cameraId = id || this._uuidGenerator.create();
114
117
  if (cameras[cameraId])
115
- throw new ShapeDiverViewerCameraError(`CameraEngine.createCamera: Camera (${type}) with this id (${cameraId}) already exists.`);
118
+ throw new viewer_shared_services_1.ShapeDiverViewerCameraError(`CameraEngine.createCamera: Camera (${type}) with this id (${cameraId}) already exists.`);
116
119
  const initialAspectRatio = this._renderingEngine.canvas.parentNode.clientWidth / this._renderingEngine.canvas.parentNode.clientHeight;
117
- const camera = CAMERA_TYPE.PERSPECTIVE === type ? new PerspectiveCamera(cameraId, undefined, initialAspectRatio) : new OrthographicCamera(cameraId);
120
+ const camera = ICameraEngine_1.CAMERA_TYPE.PERSPECTIVE === type ? new PerspectiveCamera_1.PerspectiveCamera(cameraId, undefined, initialAspectRatio) : new OrthographicCamera_1.OrthographicCamera(cameraId);
118
121
  camera.assignViewer(this._renderingEngine);
119
122
  cameras[cameraId] = camera;
120
123
  if (this._settingsApplied && this._renderingEngine.settingsEngine) {
@@ -129,19 +132,19 @@ export class CameraEngine {
129
132
  return camera;
130
133
  }
131
134
  createDefaultCameras() {
132
- const topCamera = this.createCamera(CAMERA_TYPE.ORTHOGRAPHIC, 'top');
133
- topCamera.direction = ORTHOGRAPHIC_CAMERA_DIRECTION.TOP;
134
- const bottomCamera = this.createCamera(CAMERA_TYPE.ORTHOGRAPHIC, 'bottom');
135
- bottomCamera.direction = ORTHOGRAPHIC_CAMERA_DIRECTION.BOTTOM;
136
- const leftCamera = this.createCamera(CAMERA_TYPE.ORTHOGRAPHIC, 'left');
137
- leftCamera.direction = ORTHOGRAPHIC_CAMERA_DIRECTION.LEFT;
138
- const rightCamera = this.createCamera(CAMERA_TYPE.ORTHOGRAPHIC, 'right');
139
- rightCamera.direction = ORTHOGRAPHIC_CAMERA_DIRECTION.RIGHT;
140
- const frontCamera = this.createCamera(CAMERA_TYPE.ORTHOGRAPHIC, 'front');
141
- frontCamera.direction = ORTHOGRAPHIC_CAMERA_DIRECTION.FRONT;
142
- const backCamera = this.createCamera(CAMERA_TYPE.ORTHOGRAPHIC, 'back');
143
- backCamera.direction = ORTHOGRAPHIC_CAMERA_DIRECTION.BACK;
144
- const camera = this.createCamera(CAMERA_TYPE.PERSPECTIVE, 'perspective');
135
+ const topCamera = this.createCamera(ICameraEngine_1.CAMERA_TYPE.ORTHOGRAPHIC, 'top');
136
+ topCamera.direction = IOrthographicCamera_1.ORTHOGRAPHIC_CAMERA_DIRECTION.TOP;
137
+ const bottomCamera = this.createCamera(ICameraEngine_1.CAMERA_TYPE.ORTHOGRAPHIC, 'bottom');
138
+ bottomCamera.direction = IOrthographicCamera_1.ORTHOGRAPHIC_CAMERA_DIRECTION.BOTTOM;
139
+ const leftCamera = this.createCamera(ICameraEngine_1.CAMERA_TYPE.ORTHOGRAPHIC, 'left');
140
+ leftCamera.direction = IOrthographicCamera_1.ORTHOGRAPHIC_CAMERA_DIRECTION.LEFT;
141
+ const rightCamera = this.createCamera(ICameraEngine_1.CAMERA_TYPE.ORTHOGRAPHIC, 'right');
142
+ rightCamera.direction = IOrthographicCamera_1.ORTHOGRAPHIC_CAMERA_DIRECTION.RIGHT;
143
+ const frontCamera = this.createCamera(ICameraEngine_1.CAMERA_TYPE.ORTHOGRAPHIC, 'front');
144
+ frontCamera.direction = IOrthographicCamera_1.ORTHOGRAPHIC_CAMERA_DIRECTION.FRONT;
145
+ const backCamera = this.createCamera(ICameraEngine_1.CAMERA_TYPE.ORTHOGRAPHIC, 'back');
146
+ backCamera.direction = IOrthographicCamera_1.ORTHOGRAPHIC_CAMERA_DIRECTION.BACK;
147
+ const camera = this.createCamera(ICameraEngine_1.CAMERA_TYPE.PERSPECTIVE, 'perspective');
145
148
  this.assignCamera(camera.id);
146
149
  }
147
150
  deactivateCameraEvents() {
@@ -169,7 +172,7 @@ export class CameraEngine {
169
172
  settingsEngine.settings.camera.cameras = {};
170
173
  for (let c in this.cameras) {
171
174
  const camera = this.cameras[c];
172
- if (camera.type === CAMERA_TYPE.PERSPECTIVE) {
175
+ if (camera.type === ICameraEngine_1.CAMERA_TYPE.PERSPECTIVE) {
173
176
  const controls = camera.controls;
174
177
  settingsEngine.camera.cameras[camera.id] = {
175
178
  name: camera.name,
@@ -234,8 +237,8 @@ export class CameraEngine {
234
237
  settingsEngine.camera.cameras[camera.id].target.x === camera.defaultTarget[0] &&
235
238
  settingsEngine.camera.cameras[camera.id].target.y === camera.defaultTarget[1] &&
236
239
  settingsEngine.camera.cameras[camera.id].target.z === camera.defaultTarget[2])) {
237
- camera.defaultPosition = vec3.clone(camera.position);
238
- camera.defaultTarget = vec3.clone(camera.target);
240
+ camera.defaultPosition = gl_matrix_1.vec3.clone(camera.position);
241
+ camera.defaultTarget = gl_matrix_1.vec3.clone(camera.target);
239
242
  }
240
243
  }
241
244
  const controls = camera.controls;
@@ -270,7 +273,7 @@ export class CameraEngine {
270
273
  searchForNewCameras() {
271
274
  const getCameraData = (node) => {
272
275
  for (let i = 0; i < node.data.length; i++)
273
- if ((node.data[i] instanceof AbstractCamera) && !this._cameras[node.data[i].id]) {
276
+ if ((node.data[i] instanceof AbstractCamera_1.AbstractCamera) && !this._cameras[node.data[i].id]) {
274
277
  const camera = node.data[i];
275
278
  if (camera.viewportId === this._renderingEngine.id)
276
279
  this._cameras[camera.id] = camera;
@@ -283,4 +286,5 @@ export class CameraEngine {
283
286
  this._update();
284
287
  }
285
288
  }
289
+ exports.CameraEngine = CameraEngine;
286
290
  //# sourceMappingURL=CameraEngine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CameraEngine.js","sourceRoot":"","sources":["../../src/implementation/CameraEngine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CameraEngine.js","sourceRoot":"","sources":["../../src/implementation/CameraEngine.ts"],"names":[],"mappings":"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"}
@@ -13,10 +13,10 @@ export declare abstract class AbstractCamera extends AbstractTreeNodeData implem
13
13
  protected readonly _eventEngine: EventEngine;
14
14
  protected readonly _stateEngine: StateEngine;
15
15
  protected _boundingBox: IBox;
16
+ protected abstract _controls: ICameraControls;
16
17
  protected _position: vec3;
17
18
  protected _target: vec3;
18
19
  protected _viewportId?: string;
19
- protected abstract _controls: ICameraControls;
20
20
  constructor(_id: string, _type: CAMERA_TYPE, version?: string);
21
21
  get active(): boolean;
22
22
  set active(value: boolean);
@@ -41,8 +41,6 @@ export declare abstract class AbstractCamera extends AbstractTreeNodeData implem
41
41
  set near(value: number);
42
42
  get node(): ITreeNode | undefined;
43
43
  set node(value: ITreeNode | undefined);
44
- get useNodeData(): boolean;
45
- set useNodeData(value: boolean);
46
44
  get order(): number | undefined;
47
45
  set order(value: number | undefined);
48
46
  get position(): vec3;
@@ -51,9 +49,13 @@ export declare abstract class AbstractCamera extends AbstractTreeNodeData implem
51
49
  set revertAtMouseUp(value: boolean);
52
50
  get revertAtMouseUpDuration(): number;
53
51
  set revertAtMouseUpDuration(value: number);
52
+ get sceneRotation(): vec2;
53
+ set sceneRotation(value: vec2);
54
54
  get target(): vec3;
55
55
  set target(value: vec3);
56
56
  get type(): CAMERA_TYPE;
57
+ get useNodeData(): boolean;
58
+ set useNodeData(value: boolean);
57
59
  get viewportId(): string | undefined;
58
60
  get zoomExtentsFactor(): number;
59
61
  set zoomExtentsFactor(value: number);
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractCamera.d.ts","sourceRoot":"","sources":["../../../src/implementation/camera/AbstractCamera.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AbstractCamera.d.ts","sourceRoot":"","sources":["../../../src/implementation/camera/AbstractCamera.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,27 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
1
25
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
2
26
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3
27
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -18,13 +42,15 @@ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (
18
42
  if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
19
43
  return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
20
44
  };
21
- var _AbstractCamera_active, _AbstractCamera_autoAdjust, _AbstractCamera_cameraMovementDuration, _AbstractCamera_defaultPosition, _AbstractCamera_defaultTarget, _AbstractCamera_enableCameraControls, _AbstractCamera_far, _AbstractCamera_name, _AbstractCamera_near, _AbstractCamera_node, _AbstractCamera_useNodeData, _AbstractCamera_order, _AbstractCamera_revertAtMouseUp, _AbstractCamera_revertAtMouseUpDuration, _AbstractCamera_zoomExtentsFactor;
22
- import * as detectIt from 'detect-it';
23
- import { vec3 } from 'gl-matrix';
24
- import { EventEngine, EVENTTYPE, StateEngine, } from '@shapediver/viewer.shared.services';
25
- import { Box } from '@shapediver/viewer.shared.math';
26
- import { AbstractTreeNodeData } from '@shapediver/viewer.shared.node-tree';
27
- export class AbstractCamera extends AbstractTreeNodeData {
45
+ var _AbstractCamera_active, _AbstractCamera_autoAdjust, _AbstractCamera_cameraMovementDuration, _AbstractCamera_defaultPosition, _AbstractCamera_defaultTarget, _AbstractCamera_enableCameraControls, _AbstractCamera_far, _AbstractCamera_name, _AbstractCamera_near, _AbstractCamera_node, _AbstractCamera_order, _AbstractCamera_revertAtMouseUp, _AbstractCamera_revertAtMouseUpDuration, _AbstractCamera_sceneRotation, _AbstractCamera_useNodeData, _AbstractCamera_zoomExtentsFactor;
46
+ Object.defineProperty(exports, "__esModule", { value: true });
47
+ exports.AbstractCamera = void 0;
48
+ const detectIt = __importStar(require("detect-it"));
49
+ const gl_matrix_1 = require("gl-matrix");
50
+ const viewer_shared_services_1 = require("@shapediver/viewer.shared.services");
51
+ const viewer_shared_math_1 = require("@shapediver/viewer.shared.math");
52
+ const viewer_shared_node_tree_1 = require("@shapediver/viewer.shared.node-tree");
53
+ class AbstractCamera extends viewer_shared_node_tree_1.AbstractTreeNodeData {
28
54
  // #endregion Properties (23)
29
55
  // #region Constructors (1)
30
56
  constructor(_id, _type, version) {
@@ -35,26 +61,27 @@ export class AbstractCamera extends AbstractTreeNodeData {
35
61
  _AbstractCamera_active.set(this, false);
36
62
  _AbstractCamera_autoAdjust.set(this, false);
37
63
  _AbstractCamera_cameraMovementDuration.set(this, 800);
38
- _AbstractCamera_defaultPosition.set(this, vec3.create());
39
- _AbstractCamera_defaultTarget.set(this, vec3.create());
64
+ _AbstractCamera_defaultPosition.set(this, gl_matrix_1.vec3.create());
65
+ _AbstractCamera_defaultTarget.set(this, gl_matrix_1.vec3.create());
40
66
  _AbstractCamera_enableCameraControls.set(this, true);
41
67
  _AbstractCamera_far.set(this, 1000);
42
68
  _AbstractCamera_name.set(this, void 0);
43
69
  _AbstractCamera_near.set(this, 1);
44
70
  _AbstractCamera_node.set(this, void 0);
45
- _AbstractCamera_useNodeData.set(this, false);
46
71
  _AbstractCamera_order.set(this, void 0);
47
72
  _AbstractCamera_revertAtMouseUp.set(this, false);
48
73
  _AbstractCamera_revertAtMouseUpDuration.set(this, 800);
74
+ _AbstractCamera_sceneRotation.set(this, gl_matrix_1.vec2.create());
75
+ _AbstractCamera_useNodeData.set(this, false);
49
76
  _AbstractCamera_zoomExtentsFactor.set(this, 1);
50
- this._eventEngine = EventEngine.instance;
51
- this._stateEngine = StateEngine.instance;
52
- this._boundingBox = new Box();
53
- this._position = vec3.create();
54
- this._target = vec3.create();
77
+ this._eventEngine = viewer_shared_services_1.EventEngine.instance;
78
+ this._stateEngine = viewer_shared_services_1.StateEngine.instance;
79
+ this._boundingBox = new viewer_shared_math_1.Box();
80
+ this._position = gl_matrix_1.vec3.create();
81
+ this._target = gl_matrix_1.vec3.create();
55
82
  }
56
83
  // #endregion Constructors (1)
57
- // #region Public Accessors (39)
84
+ // #region Public Accessors (41)
58
85
  get active() {
59
86
  return __classPrivateFieldGet(this, _AbstractCamera_active, "f");
60
87
  }
@@ -124,12 +151,6 @@ export class AbstractCamera extends AbstractTreeNodeData {
124
151
  set node(value) {
125
152
  __classPrivateFieldSet(this, _AbstractCamera_node, value, "f");
126
153
  }
127
- get useNodeData() {
128
- return __classPrivateFieldGet(this, _AbstractCamera_useNodeData, "f");
129
- }
130
- set useNodeData(value) {
131
- __classPrivateFieldSet(this, _AbstractCamera_useNodeData, value, "f");
132
- }
133
154
  get order() {
134
155
  return __classPrivateFieldGet(this, _AbstractCamera_order, "f");
135
156
  }
@@ -155,6 +176,12 @@ export class AbstractCamera extends AbstractTreeNodeData {
155
176
  set revertAtMouseUpDuration(value) {
156
177
  __classPrivateFieldSet(this, _AbstractCamera_revertAtMouseUpDuration, value, "f");
157
178
  }
179
+ get sceneRotation() {
180
+ return __classPrivateFieldGet(this, _AbstractCamera_sceneRotation, "f");
181
+ }
182
+ set sceneRotation(value) {
183
+ __classPrivateFieldSet(this, _AbstractCamera_sceneRotation, value, "f");
184
+ }
158
185
  get target() {
159
186
  return this._target;
160
187
  }
@@ -165,6 +192,12 @@ export class AbstractCamera extends AbstractTreeNodeData {
165
192
  get type() {
166
193
  return this._type;
167
194
  }
195
+ get useNodeData() {
196
+ return __classPrivateFieldGet(this, _AbstractCamera_useNodeData, "f");
197
+ }
198
+ set useNodeData(value) {
199
+ __classPrivateFieldSet(this, _AbstractCamera_useNodeData, value, "f");
200
+ }
168
201
  get viewportId() {
169
202
  return this._viewportId;
170
203
  }
@@ -174,7 +207,7 @@ export class AbstractCamera extends AbstractTreeNodeData {
174
207
  set zoomExtentsFactor(value) {
175
208
  __classPrivateFieldSet(this, _AbstractCamera_zoomExtentsFactor, value, "f");
176
209
  }
177
- // #endregion Public Accessors (39)
210
+ // #endregion Public Accessors (41)
178
211
  // #region Public Methods (5)
179
212
  animate(path, options) {
180
213
  return __awaiter(this, void 0, void 0, function* () {
@@ -196,7 +229,7 @@ export class AbstractCamera extends AbstractTreeNodeData {
196
229
  return this.zoomTo(undefined, options);
197
230
  }
198
231
  else {
199
- return this.set(vec3.clone(this.defaultPosition), vec3.clone(this.defaultTarget), options);
232
+ return this.set(gl_matrix_1.vec3.clone(this.defaultPosition), gl_matrix_1.vec3.clone(this.defaultTarget), options);
200
233
  }
201
234
  }
202
235
  set(position, target, options) {
@@ -205,7 +238,7 @@ export class AbstractCamera extends AbstractTreeNodeData {
205
238
  options = {};
206
239
  options.duration = options.duration >= 0 ? options.duration : this.cameraMovementDuration;
207
240
  const res = yield this._controls.animate([
208
- { position: vec3.clone(this.position), target: vec3.clone(this.target) },
241
+ { position: gl_matrix_1.vec3.clone(this.position), target: gl_matrix_1.vec3.clone(this.target) },
209
242
  { position, target }
210
243
  ], options);
211
244
  if (res) {
@@ -220,12 +253,13 @@ export class AbstractCamera extends AbstractTreeNodeData {
220
253
  return true;
221
254
  }
222
255
  else {
223
- const { position, target } = this._controls.update(time);
256
+ const { position, target, sceneRotation } = this._controls.update(time);
224
257
  let changed = true;
225
- if (vec3.equals(position, this.position) && vec3.equals(target, this.target))
258
+ if (gl_matrix_1.vec3.equals(position, this.position) && gl_matrix_1.vec3.equals(target, this.target))
226
259
  changed = false;
227
- this.position = vec3.clone(position);
228
- this.target = vec3.clone(target);
260
+ this.position = gl_matrix_1.vec3.clone(position);
261
+ this.target = gl_matrix_1.vec3.clone(target);
262
+ this.sceneRotation = gl_matrix_1.vec2.clone(sceneRotation);
229
263
  return changed;
230
264
  }
231
265
  }
@@ -237,9 +271,9 @@ export class AbstractCamera extends AbstractTreeNodeData {
237
271
  // #region Protected Methods (1)
238
272
  assignViewerInternal(viewportId, canvas) {
239
273
  this._viewportId = viewportId;
240
- this._eventEngine.addListener(EVENTTYPE.SESSION.SESSION_CUSTOMIZED, (e) => __awaiter(this, void 0, void 0, function* () {
274
+ this._eventEngine.addListener(viewer_shared_services_1.EVENTTYPE.SESSION.SESSION_CUSTOMIZED, () => __awaiter(this, void 0, void 0, function* () {
241
275
  if (__classPrivateFieldGet(this, _AbstractCamera_autoAdjust, "f") === true) {
242
- const innerListenerToken = this._eventEngine.addListener(EVENTTYPE.VIEWPORT.VIEWPORT_UPDATED, (e) => __awaiter(this, void 0, void 0, function* () {
276
+ const innerListenerToken = this._eventEngine.addListener(viewer_shared_services_1.EVENTTYPE.VIEWPORT.VIEWPORT_UPDATED, () => __awaiter(this, void 0, void 0, function* () {
243
277
  this.zoomTo();
244
278
  this._eventEngine.removeListener(innerListenerToken);
245
279
  }));
@@ -249,16 +283,17 @@ export class AbstractCamera extends AbstractTreeNodeData {
249
283
  if (__classPrivateFieldGet(this, _AbstractCamera_revertAtMouseUp, "f") === true)
250
284
  this.reset({ duration: __classPrivateFieldGet(this, _AbstractCamera_revertAtMouseUpDuration, "f") });
251
285
  };
252
- canvas.addEventListener("mouseup", () => revert(), detectIt.supportsPassiveEvents ? { capture: false, passive: true } : false);
253
- canvas.addEventListener("mouseout", () => revert(), detectIt.supportsPassiveEvents ? { capture: false, passive: true } : false);
254
- canvas.addEventListener("touchend", () => revert(), detectIt.supportsPassiveEvents ? { capture: false, passive: true } : false);
286
+ canvas.addEventListener('mouseup', () => revert(), detectIt.supportsPassiveEvents ? { capture: false, passive: true } : false);
287
+ canvas.addEventListener('mouseout', () => revert(), detectIt.supportsPassiveEvents ? { capture: false, passive: true } : false);
288
+ canvas.addEventListener('touchend', () => revert(), detectIt.supportsPassiveEvents ? { capture: false, passive: true } : false);
255
289
  let zoomResizeTimeout;
256
- let mouseWheelEvent = /Firefox/i.test(navigator.userAgent) ? "DOMMouseScroll" : "mousewheel"; //FF doesn't recognize mousewheel as of FF3.x
290
+ const mouseWheelEvent = /Firefox/i.test(navigator.userAgent) ? 'DOMMouseScroll' : 'mousewheel'; //FF doesn't recognize mousewheel as of FF3.x
257
291
  canvas.addEventListener(mouseWheelEvent, () => {
258
292
  clearTimeout(zoomResizeTimeout);
259
293
  zoomResizeTimeout = setTimeout(revert, 300);
260
294
  }, detectIt.supportsPassiveEvents ? { capture: false, passive: true } : false);
261
295
  }
262
296
  }
263
- _AbstractCamera_active = new WeakMap(), _AbstractCamera_autoAdjust = new WeakMap(), _AbstractCamera_cameraMovementDuration = new WeakMap(), _AbstractCamera_defaultPosition = new WeakMap(), _AbstractCamera_defaultTarget = new WeakMap(), _AbstractCamera_enableCameraControls = new WeakMap(), _AbstractCamera_far = new WeakMap(), _AbstractCamera_name = new WeakMap(), _AbstractCamera_near = new WeakMap(), _AbstractCamera_node = new WeakMap(), _AbstractCamera_useNodeData = new WeakMap(), _AbstractCamera_order = new WeakMap(), _AbstractCamera_revertAtMouseUp = new WeakMap(), _AbstractCamera_revertAtMouseUpDuration = new WeakMap(), _AbstractCamera_zoomExtentsFactor = new WeakMap();
297
+ exports.AbstractCamera = AbstractCamera;
298
+ _AbstractCamera_active = new WeakMap(), _AbstractCamera_autoAdjust = new WeakMap(), _AbstractCamera_cameraMovementDuration = new WeakMap(), _AbstractCamera_defaultPosition = new WeakMap(), _AbstractCamera_defaultTarget = new WeakMap(), _AbstractCamera_enableCameraControls = new WeakMap(), _AbstractCamera_far = new WeakMap(), _AbstractCamera_name = new WeakMap(), _AbstractCamera_near = new WeakMap(), _AbstractCamera_node = new WeakMap(), _AbstractCamera_order = new WeakMap(), _AbstractCamera_revertAtMouseUp = new WeakMap(), _AbstractCamera_revertAtMouseUpDuration = new WeakMap(), _AbstractCamera_sceneRotation = new WeakMap(), _AbstractCamera_useNodeData = new WeakMap(), _AbstractCamera_zoomExtentsFactor = new WeakMap();
264
299
  //# sourceMappingURL=AbstractCamera.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"AbstractCamera.js","sourceRoot":"","sources":["../../../src/implementation/camera/AbstractCamera.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,KAAK,QAAQ,MAAM,WAAW,CAAA;AACrC,OAAO,EAAQ,IAAI,EAAE,MAAM,WAAW,CAAA;AACtC,OAAO,EAEH,WAAW,EACX,SAAS,EAGT,WAAW,GACd,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAAE,GAAG,EAAQ,MAAM,gCAAgC,CAAA;AAC1D,OAAO,EAAE,oBAAoB,EAAa,MAAM,qCAAqC,CAAA;AAOrF,MAAM,OAAgB,cAAe,SAAQ,oBAAoB;IA6B7D,6BAA6B;IAE7B,2BAA2B;IAE3B,YAA6B,GAAW,EAAmB,KAAkB,EAAE,OAAgB;QAC3F,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QADK,QAAG,GAAH,GAAG,CAAQ;QAAmB,UAAK,GAAL,KAAK,CAAa;QAhC7E,0BAA0B;QAE1B,iCAAmB,KAAK,EAAC;QACzB,qCAAuB,KAAK,EAAC;QAC7B,iDAAkC,GAAG,EAAC;QACtC,0CAAyB,IAAI,CAAC,MAAM,EAAE,EAAC;QACvC,wCAAuB,IAAI,CAAC,MAAM,EAAE,EAAC;QACrC,+CAAiC,IAAI,EAAC;QACtC,8BAAe,IAAI,EAAC;QACpB,uCAAe;QACf,+BAAgB,CAAC,EAAC;QAClB,uCAAkB;QAClB,sCAAwB,KAAK,EAAC;QAC9B,wCAAgB;QAChB,0CAA4B,KAAK,EAAC;QAClC,kDAAmC,GAAG,EAAC;QACvC,4CAA6B,CAAC,EAAC;QAEZ,iBAAY,GAAgB,WAAW,CAAC,QAAQ,CAAC;QACjD,iBAAY,GAAgB,WAAW,CAAC,QAAQ,CAAC;QAE1D,iBAAY,GAAS,IAAI,GAAG,EAAE,CAAC;QAC/B,cAAS,GAAS,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,YAAO,GAAS,IAAI,CAAC,MAAM,EAAE,CAAC;IAWxC,CAAC;IAED,8BAA8B;IAE9B,gCAAgC;IAEhC,IAAW,MAAM;QACb,OAAO,uBAAA,IAAI,8BAAQ,CAAC;IACxB,CAAC;IAED,IAAW,MAAM,CAAC,KAAc;QAC5B,uBAAA,IAAI,0BAAW,KAAK,MAAA,CAAC;IACzB,CAAC;IAED,IAAW,UAAU;QACjB,OAAO,uBAAA,IAAI,kCAAY,CAAC;IAC5B,CAAC;IAED,IAAW,UAAU,CAAC,KAAc;QAChC,uBAAA,IAAI,8BAAe,KAAK,MAAA,CAAC;IAC7B,CAAC;IAED,IAAW,WAAW,CAAC,KAAW;QAC9B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;IAC9B,CAAC;IAED,IAAW,sBAAsB;QAC7B,OAAO,uBAAA,IAAI,8CAAwB,CAAC;IACxC,CAAC;IAED,IAAW,sBAAsB,CAAC,KAAa;QAC3C,uBAAA,IAAI,0CAA2B,KAAK,MAAA,CAAC;IACzC,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAW,eAAe;QACtB,OAAO,uBAAA,IAAI,uCAAiB,CAAC;IACjC,CAAC;IAED,IAAW,eAAe,CAAC,KAAW;QAClC,uBAAA,IAAI,mCAAoB,KAAK,MAAA,CAAC;IAClC,CAAC;IAED,IAAW,aAAa;QACpB,OAAO,uBAAA,IAAI,qCAAe,CAAC;IAC/B,CAAC;IAED,IAAW,aAAa,CAAC,KAAW;QAChC,uBAAA,IAAI,iCAAkB,KAAK,MAAA,CAAC;IAChC,CAAC;IAED,IAAW,oBAAoB;QAC3B,OAAO,uBAAA,IAAI,4CAAsB,CAAC;IACtC,CAAC;IAED,IAAW,oBAAoB,CAAC,KAAc;QAC1C,uBAAA,IAAI,wCAAyB,KAAK,MAAA,CAAC;IACvC,CAAC;IAED,IAAW,GAAG;QACV,OAAO,uBAAA,IAAI,2BAAK,CAAC;IACrB,CAAC;IAED,IAAW,GAAG,CAAC,KAAa;QACxB,uBAAA,IAAI,uBAAQ,KAAK,MAAA,CAAC;IACtB,CAAC;IAED,IAAW,EAAE;QACT,OAAO,IAAI,CAAC,GAAG,CAAC;IACpB,CAAC;IAED,IAAW,IAAI;QACX,OAAO,uBAAA,IAAI,4BAAM,CAAC;IACtB,CAAC;IAED,IAAW,IAAI,CAAC,KAAyB;QACrC,uBAAA,IAAI,wBAAS,KAAK,MAAA,CAAC;IACvB,CAAC;IAED,IAAW,IAAI;QACX,OAAO,uBAAA,IAAI,4BAAM,CAAC;IACtB,CAAC;IAED,IAAW,IAAI,CAAC,KAAa;QACzB,uBAAA,IAAI,wBAAS,KAAK,MAAA,CAAC;IACvB,CAAC;IAED,IAAW,IAAI;QACX,OAAO,uBAAA,IAAI,4BAAM,CAAC;IACtB,CAAC;IAED,IAAW,IAAI,CAAC,KAA4B;QACxC,uBAAA,IAAI,wBAAS,KAAK,MAAA,CAAC;IACvB,CAAC;IAED,IAAW,WAAW;QAClB,OAAO,uBAAA,IAAI,mCAAa,CAAC;IAC7B,CAAC;IAED,IAAW,WAAW,CAAC,KAAc;QACjC,uBAAA,IAAI,+BAAgB,KAAK,MAAA,CAAC;IAC9B,CAAC;IAED,IAAW,KAAK;QACZ,OAAO,uBAAA,IAAI,6BAAO,CAAC;IACvB,CAAC;IAED,IAAW,KAAK,CAAC,KAAyB;QACtC,uBAAA,IAAI,yBAAU,KAAK,MAAA,CAAC;IACxB,CAAC;IAED,IAAW,QAAQ;QACf,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAW,QAAQ,CAAC,KAAW;QAC3B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,SAAS,CAAC,QAAQ,GAAG,KAAK,CAAC;IACpC,CAAC;IAED,IAAW,eAAe;QACtB,OAAO,uBAAA,IAAI,uCAAiB,CAAC;IACjC,CAAC;IAED,IAAW,eAAe,CAAC,KAAc;QACrC,uBAAA,IAAI,mCAAoB,KAAK,MAAA,CAAC;IAClC,CAAC;IAED,IAAW,uBAAuB;QAC9B,OAAO,uBAAA,IAAI,+CAAyB,CAAC;IACzC,CAAC;IAED,IAAW,uBAAuB,CAAC,KAAa;QAC5C,uBAAA,IAAI,2CAA4B,KAAK,MAAA,CAAC;IAC1C,CAAC;IAED,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,OAAO,CAAC;IACxB,CAAC;IAED,IAAW,MAAM,CAAC,KAAW;QACzB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,KAAK,CAAC;IAClC,CAAC;IAED,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;IAED,IAAW,UAAU;QACjB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,IAAW,iBAAiB;QACxB,OAAO,uBAAA,IAAI,yCAAmB,CAAC;IACnC,CAAC;IAED,IAAW,iBAAiB,CAAC,KAAa;QACtC,uBAAA,IAAI,qCAAsB,KAAK,MAAA,CAAC;IACpC,CAAC;IAED,mCAAmC;IAEnC,6BAA6B;IAEhB,OAAO,CAAC,IAAyC,EAAE,OAAwB;;YACpF,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAErD,IAAI,CAAC,OAAO;gBAAE,OAAO,GAAG,EAAE,CAAC;YAC3B,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAS,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC;YAE3F,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACxD,IAAI,GAAG,EAAE;gBACL,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;gBACzC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;aACxC;YACD,OAAO,GAAG,CAAC;QACf,CAAC;KAAA;IAEM,KAAK,CAAC,OAAwB;QACjC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;YAClM,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;SAC1C;aAAM;YACH,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC,CAAC;SAC9F;IACL,CAAC;IAEY,GAAG,CAAC,QAAc,EAAE,MAAY,EAAE,OAAwB;;YACnE,IAAI,CAAC,OAAO;gBAAE,OAAO,GAAG,EAAE,CAAC;YAC3B,OAAO,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAS,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC;YAE3F,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC;gBACrC,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;gBACxE,EAAE,QAAQ,EAAE,MAAM,EAAE;aAAC,EAAE,OAAO,CAAC,CAAC;YACpC,IAAI,GAAG,EAAE;gBACL,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC;gBACzC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;aACxC;YACD,OAAO,GAAG,CAAC;QACf,CAAC;KAAA;IAEM,MAAM,CAAC,IAAY;QACtB,IAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,WAAW,EAAE;YAClD,OAAO,IAAI,CAAC;SACf;aAAM;YACH,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACzD,IAAI,OAAO,GAAG,IAAI,CAAC;YACnB,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC;gBACxE,OAAO,GAAG,KAAK,CAAC;YAEpB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACrC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACjC,OAAO,OAAO,CAAC;SAClB;IACL,CAAC;IAEM,MAAM,CAAC,UAAgB,EAAE,OAAwB;QACpD,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,UAAU,CAAC,CAAA;QAC7D,OAAO,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IAYD,yCAAyC;IAEzC,gCAAgC;IAEtB,oBAAoB,CAAC,UAAkB,EAAE,MAAyB;QACxE,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,SAAS,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAO,CAAS,EAAE,EAAE;YACpF,IAAI,uBAAA,IAAI,kCAAY,KAAK,IAAI,EAAE;gBAC3B,MAAM,kBAAkB,GAAG,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAO,CAAS,EAAE,EAAE;oBAC9G,IAAI,CAAC,MAAM,EAAE,CAAC;oBACd,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,kBAAkB,CAAC,CAAA;gBACxD,CAAC,CAAA,CAAC,CAAA;aACL;QACL,CAAC,CAAA,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,GAAG,EAAE;YAChB,IAAI,uBAAA,IAAI,uCAAiB,KAAK,IAAI;gBAC9B,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,uBAAA,IAAI,+CAAyB,EAAE,CAAC,CAAC;QAChE,CAAC,CAAC;QACF,MAAM,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAC/H,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAChI,MAAM,CAAC,gBAAgB,CAAC,UAAU,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAEhI,IAAI,iBAAiC,CAAC;QACtC,IAAI,eAAe,GAAG,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,6CAA6C;QAC3I,MAAM,CAAC,gBAAgB,CAAC,eAAe,EACnC,GAAG,EAAE;YACD,YAAY,CAAC,iBAAiB,CAAC,CAAC;YAChC,iBAAiB,GAAG,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAChD,CAAC,EAAE,QAAQ,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IACvF,CAAC;CAGJ"}
1
+ {"version":3,"file":"AbstractCamera.js","sourceRoot":"","sources":["../../../src/implementation/camera/AbstractCamera.ts"],"names":[],"mappings":"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"}