@configura/babylon-view 2.1.0 → 2.2.0-alpha.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 (134) hide show
  1. package/.eslintrc.json +5 -5
  2. package/LICENSE +201 -201
  3. package/README.md +1 -1
  4. package/dist/animation/AnimatableObject.d.ts +8 -8
  5. package/dist/animation/AnimatableObject.js +3 -3
  6. package/dist/animation/animator/Animator.d.ts +33 -33
  7. package/dist/animation/animator/Animator.js +58 -58
  8. package/dist/animation/animator/AnimatorEasing.d.ts +16 -16
  9. package/dist/animation/animator/AnimatorEasing.js +31 -31
  10. package/dist/animation/animator/AnimatorEasingMatrix.d.ts +14 -14
  11. package/dist/animation/animator/AnimatorEasingMatrix.js +16 -16
  12. package/dist/animation/animator/AnimatorHighlight.d.ts +16 -16
  13. package/dist/animation/animator/AnimatorHighlight.js +32 -32
  14. package/dist/animation/animator/AnimatorPointToPoint.d.ts +8 -8
  15. package/dist/animation/animator/AnimatorPointToPoint.js +14 -14
  16. package/dist/animation/animator/AnimatorQueue.d.ts +13 -13
  17. package/dist/animation/animator/AnimatorQueue.js +57 -57
  18. package/dist/animation/animator/AnimatorScale.d.ts +8 -8
  19. package/dist/animation/animator/AnimatorScale.js +13 -13
  20. package/dist/animation/animator/AnimatorSpin.d.ts +10 -10
  21. package/dist/animation/animator/AnimatorSpin.js +13 -13
  22. package/dist/animation/animator/EasingFunctions.d.ts +35 -35
  23. package/dist/animation/animator/EasingFunctions.js +137 -137
  24. package/dist/animation/coordinator/Coordinator.d.ts +28 -28
  25. package/dist/animation/coordinator/Coordinator.js +53 -53
  26. package/dist/animation/coordinator/CoordinatorDropAndSpin.d.ts +22 -22
  27. package/dist/animation/coordinator/CoordinatorDropAndSpin.js +138 -138
  28. package/dist/animation/coordinator/CoordinatorIdentity.d.ts +11 -11
  29. package/dist/animation/coordinator/CoordinatorIdentity.js +14 -14
  30. package/dist/animation/coordinator/CoordinatorNodeQueues.d.ts +18 -18
  31. package/dist/animation/coordinator/CoordinatorNodeQueues.js +50 -50
  32. package/dist/animation/coordinator/CoordinatorPulse.d.ts +21 -21
  33. package/dist/animation/coordinator/CoordinatorPulse.js +47 -47
  34. package/dist/animation/coordinator/CoordinatorPulseBounce.d.ts +14 -14
  35. package/dist/animation/coordinator/CoordinatorPulseBounce.js +35 -35
  36. package/dist/animation/coordinator/CoordinatorPulseHighlight.d.ts +13 -13
  37. package/dist/animation/coordinator/CoordinatorPulseHighlight.js +29 -29
  38. package/dist/animation/coordinator/CoordinatorPulseInflate.d.ts +14 -14
  39. package/dist/animation/coordinator/CoordinatorPulseInflate.js +23 -23
  40. package/dist/camera/CameraCreator.d.ts +5 -5
  41. package/dist/camera/CameraCreator.js +4 -4
  42. package/dist/camera/CfgOrbitalCamera.d.ts +76 -76
  43. package/dist/camera/CfgOrbitalCamera.js +277 -281
  44. package/dist/camera/CfgOrbitalCameraControlProps.d.ts +14 -14
  45. package/dist/camera/CfgOrbitalCameraControlProps.js +7 -7
  46. package/dist/camera/GradingApplier.d.ts +3 -3
  47. package/dist/camera/GradingApplier.js +48 -48
  48. package/dist/engine/EngineCreator.d.ts +3 -3
  49. package/dist/engine/EngineCreator.js +10 -10
  50. package/dist/geometry/CfgGeometry.d.ts +29 -29
  51. package/dist/geometry/CfgGeometry.js +146 -146
  52. package/dist/geometry/CfgMesh.d.ts +10 -10
  53. package/dist/geometry/CfgMesh.js +38 -38
  54. package/dist/geometry/geoSplitter.d.ts +8 -8
  55. package/dist/geometry/geoSplitter.js +192 -192
  56. package/dist/geometry/stretch/CfgMorphTarget.d.ts +15 -15
  57. package/dist/geometry/stretch/CfgMorphTarget.js +65 -65
  58. package/dist/geometry/stretch/CfgStretchData.d.ts +116 -116
  59. package/dist/geometry/stretch/CfgStretchData.js +347 -347
  60. package/dist/geometry/stretch/CfgStretchMorphGeometry.d.ts +16 -16
  61. package/dist/geometry/stretch/CfgStretchMorphGeometry.js +95 -95
  62. package/dist/index.d.ts +16 -16
  63. package/dist/index.js +16 -16
  64. package/dist/io/CfgHistoryToCameraConfConnector.d.ts +31 -31
  65. package/dist/io/CfgHistoryToCameraConfConnector.js +90 -90
  66. package/dist/io/CfgIOCameraConfConnector.d.ts +35 -35
  67. package/dist/io/CfgIOCameraConfConnector.js +81 -81
  68. package/dist/io/CfgObservableStateToCameraConfConnector.d.ts +10 -10
  69. package/dist/io/CfgObservableStateToCameraConfConnector.js +11 -11
  70. package/dist/io/CfgWindowMessageToCameraConfConnector.d.ts +10 -10
  71. package/dist/io/CfgWindowMessageToCameraConfConnector.js +11 -11
  72. package/dist/light/CfgDirectionalLight.d.ts +8 -8
  73. package/dist/light/CfgDirectionalLight.js +18 -18
  74. package/dist/light/CfgHemisphericLight.d.ts +7 -7
  75. package/dist/light/CfgHemisphericLight.js +17 -17
  76. package/dist/light/CfgPointLight.d.ts +8 -8
  77. package/dist/light/CfgPointLight.js +18 -18
  78. package/dist/light/DefaultLightRig.d.ts +19 -19
  79. package/dist/light/DefaultLightRig.js +77 -77
  80. package/dist/light/LightRigCreator.d.ts +9 -9
  81. package/dist/light/LightRigCreator.js +3 -3
  82. package/dist/material/CfgMaterial.d.ts +68 -68
  83. package/dist/material/CfgMaterial.js +482 -482
  84. package/dist/material/DummyMaterialCreator.d.ts +4 -4
  85. package/dist/material/DummyMaterialCreator.js +15 -15
  86. package/dist/material/material.d.ts +18 -18
  87. package/dist/material/material.js +128 -128
  88. package/dist/material/texture.d.ts +14 -14
  89. package/dist/material/texture.js +306 -306
  90. package/dist/nodes/CfgContentRootNode.d.ts +19 -19
  91. package/dist/nodes/CfgContentRootNode.js +75 -75
  92. package/dist/nodes/CfgDeferredMeshNode.d.ts +55 -55
  93. package/dist/nodes/CfgDeferredMeshNode.js +378 -378
  94. package/dist/nodes/CfgProductNode.d.ts +127 -127
  95. package/dist/nodes/CfgProductNode.js +598 -598
  96. package/dist/nodes/CfgSymNode.d.ts +50 -50
  97. package/dist/nodes/CfgSymNode.js +249 -249
  98. package/dist/nodes/CfgSymRootNode.d.ts +45 -45
  99. package/dist/nodes/CfgSymRootNode.js +240 -239
  100. package/dist/nodes/CfgTransformNode.d.ts +33 -33
  101. package/dist/nodes/CfgTransformNode.js +83 -83
  102. package/dist/scene/SceneCreator.d.ts +6 -6
  103. package/dist/scene/SceneCreator.js +22 -22
  104. package/dist/utilities/CfgBoundingBox.d.ts +21 -21
  105. package/dist/utilities/CfgBoundingBox.js +81 -81
  106. package/dist/utilities/anchor/anchor.d.ts +50 -50
  107. package/dist/utilities/anchor/anchor.js +133 -133
  108. package/dist/utilities/anchor/anchorMap.d.ts +20 -20
  109. package/dist/utilities/anchor/anchorMap.js +111 -111
  110. package/dist/utilities/utilities3D.d.ts +70 -70
  111. package/dist/utilities/utilities3D.js +259 -265
  112. package/dist/utilities/utilitiesColor.d.ts +18 -18
  113. package/dist/utilities/utilitiesColor.js +50 -50
  114. package/dist/utilities/utilitiesImage.d.ts +6 -6
  115. package/dist/utilities/utilitiesImage.js +107 -107
  116. package/dist/utilities/utilitiesSymRootIdentifier.d.ts +7 -7
  117. package/dist/utilities/utilitiesSymRootIdentifier.js +26 -26
  118. package/dist/view/BaseView.d.ts +78 -78
  119. package/dist/view/BaseView.js +303 -303
  120. package/dist/view/BaseViewConfiguration.d.ts +32 -32
  121. package/dist/view/BaseViewConfiguration.js +10 -10
  122. package/dist/view/RenderEnv.d.ts +43 -43
  123. package/dist/view/RenderEnv.js +7 -7
  124. package/dist/view/SingleProductDefaultCameraView.d.ts +38 -38
  125. package/dist/view/SingleProductDefaultCameraView.js +149 -149
  126. package/dist/view/SingleProductDefaultCameraViewConfiguration.d.ts +44 -44
  127. package/dist/view/SingleProductDefaultCameraViewConfiguration.js +11 -11
  128. package/dist/view/SingleProductView.d.ts +44 -44
  129. package/dist/view/SingleProductView.js +212 -212
  130. package/dist/view/SingleProductViewConfiguration.d.ts +32 -32
  131. package/dist/view/SingleProductViewConfiguration.js +19 -19
  132. package/package.json +16 -7
  133. package/dist/camera/CfgArcRotateCameraPointersInput.d.ts +0 -27
  134. package/dist/camera/CfgArcRotateCameraPointersInput.js +0 -266
@@ -1,35 +1,35 @@
1
- import { Vector3 } from "@babylonjs/core/Maths/math.vector.js";
2
- import { AnimatorPointToPoint } from "../animator/AnimatorPointToPoint.js";
3
- import { EasingFunctions } from "../animator/EasingFunctions.js";
4
- import { CoordinatorPulse, defaultConfig as baseDefaultConfig, } from "./CoordinatorPulse.js";
5
- const defaultConfig = Object.assign(Object.assign({}, baseDefaultConfig), { height: 0.01, delay: 40, duration: 300 });
6
- export class CoordinatorPulseBounce extends CoordinatorPulse {
7
- static getCoordinatorCreator(config) {
8
- return (view, phaseObservable) => {
9
- return new this(view, phaseObservable, config || {});
10
- };
11
- }
12
- constructor(view, phaseObservable, config) {
13
- super(view, phaseObservable, Object.assign(Object.assign({}, defaultConfig), config));
14
- }
15
- _prepare(node, _isNewProduct) {
16
- const queue = this.getAnimatorQueue(node, true);
17
- if (queue === undefined) {
18
- throw new Error("No queue unexpected");
19
- }
20
- const height = this._config.height *
21
- (this.productNode === undefined
22
- ? 1
23
- : Math.pow(this.productNode.boundingBox.spaceDiagonal, 2));
24
- const adjustToWorldMatrix = node.worldOriginalMatrix.getRotationMatrix().transpose();
25
- const animator = new AnimatorPointToPoint(node, {
26
- easing: EasingFunctions.makeMirrored(EasingFunctions.easeInSine),
27
- duration: this._config.duration,
28
- delay: this._config.delay,
29
- startPosition: Vector3.TransformCoordinates(new Vector3(0, 0, 0), adjustToWorldMatrix),
30
- endPosition: Vector3.TransformCoordinates(new Vector3(0, height, 0), adjustToWorldMatrix),
31
- });
32
- queue.add(animator);
33
- return Promise.resolve();
34
- }
35
- }
1
+ import { Vector3 } from "@babylonjs/core/Maths/math.vector.js";
2
+ import { AnimatorPointToPoint } from "../animator/AnimatorPointToPoint.js";
3
+ import { EasingFunctions } from "../animator/EasingFunctions.js";
4
+ import { CoordinatorPulse, defaultConfig as baseDefaultConfig, } from "./CoordinatorPulse.js";
5
+ const defaultConfig = Object.assign(Object.assign({}, baseDefaultConfig), { height: 0.01, delay: 40, duration: 300 });
6
+ export class CoordinatorPulseBounce extends CoordinatorPulse {
7
+ static getCoordinatorCreator(config) {
8
+ return (view, phaseObservable) => {
9
+ return new this(view, phaseObservable, config || {});
10
+ };
11
+ }
12
+ constructor(view, phaseObservable, config) {
13
+ super(view, phaseObservable, Object.assign(Object.assign({}, defaultConfig), config));
14
+ }
15
+ _prepare(node, _isNewProduct) {
16
+ const queue = this.getAnimatorQueue(node, true);
17
+ if (queue === undefined) {
18
+ throw new Error("No queue unexpected");
19
+ }
20
+ const height = this._config.height *
21
+ (this.productNode === undefined
22
+ ? 1
23
+ : Math.pow(this.productNode.boundingBox.spaceDiagonal, 2));
24
+ const adjustToWorldMatrix = node.worldOriginalMatrix.getRotationMatrix().transpose();
25
+ const animator = new AnimatorPointToPoint(node, {
26
+ easing: EasingFunctions.makeMirrored(EasingFunctions.easeInSine),
27
+ duration: this._config.duration,
28
+ delay: this._config.delay,
29
+ startPosition: Vector3.TransformCoordinates(new Vector3(0, 0, 0), adjustToWorldMatrix),
30
+ endPosition: Vector3.TransformCoordinates(new Vector3(0, height, 0), adjustToWorldMatrix),
31
+ });
32
+ queue.add(animator);
33
+ return Promise.resolve();
34
+ }
35
+ }
@@ -1,14 +1,14 @@
1
- import { Observable } from "@configura/web-utilities";
2
- import { SingleProductView } from "../../view/SingleProductView.js";
3
- import { SingleProductViewPhaseEvent } from "../../view/SingleProductViewConfiguration.js";
4
- import { AnimatableObject } from "../AnimatableObject.js";
5
- import { AnimatorHighlightConfig } from "../animator/AnimatorHighlight.js";
6
- import { CoordinatorCreator } from "./Coordinator.js";
7
- import { CoordinatorPulse, CoordinatorPulseConfig } from "./CoordinatorPulse.js";
8
- export declare type CoordinatorPulseHighlightConfig = CoordinatorPulseConfig & AnimatorHighlightConfig;
9
- export declare class CoordinatorPulseHighlight extends CoordinatorPulse<CoordinatorPulseHighlightConfig> {
10
- static getCoordinatorCreator(config?: Partial<CoordinatorPulseHighlightConfig>): CoordinatorCreator;
11
- protected constructor(view: SingleProductView, phaseObservable: Observable<SingleProductViewPhaseEvent>, config: Partial<CoordinatorPulseHighlightConfig>);
12
- _prepare(node: AnimatableObject, _isNewProduct: boolean): Promise<void>;
13
- }
1
+ import { Observable } from "@configura/web-utilities";
2
+ import { SingleProductView } from "../../view/SingleProductView.js";
3
+ import { SingleProductViewPhaseEvent } from "../../view/SingleProductViewConfiguration.js";
4
+ import { AnimatableObject } from "../AnimatableObject.js";
5
+ import { AnimatorHighlightConfig } from "../animator/AnimatorHighlight.js";
6
+ import { CoordinatorCreator } from "./Coordinator.js";
7
+ import { CoordinatorPulse, CoordinatorPulseConfig } from "./CoordinatorPulse.js";
8
+ export declare type CoordinatorPulseHighlightConfig = CoordinatorPulseConfig & AnimatorHighlightConfig;
9
+ export declare class CoordinatorPulseHighlight extends CoordinatorPulse<CoordinatorPulseHighlightConfig> {
10
+ static getCoordinatorCreator(config?: Partial<CoordinatorPulseHighlightConfig>): CoordinatorCreator;
11
+ protected constructor(view: SingleProductView, phaseObservable: Observable<SingleProductViewPhaseEvent>, config: Partial<CoordinatorPulseHighlightConfig>);
12
+ _prepare(node: AnimatableObject, _isNewProduct: boolean): Promise<void>;
13
+ }
14
14
  //# sourceMappingURL=CoordinatorPulseHighlight.d.ts.map
@@ -1,29 +1,29 @@
1
- import { AnimatorHighlight, defaultConfig as animatorHighlightDefaultConfig, } from "../animator/AnimatorHighlight.js";
2
- import { EasingFunctions } from "../animator/EasingFunctions.js";
3
- import { CoordinatorPulse, defaultConfig as baseDefaultConfig, } from "./CoordinatorPulse.js";
4
- const defaultConfig = Object.assign(Object.assign({}, baseDefaultConfig), animatorHighlightDefaultConfig);
5
- export class CoordinatorPulseHighlight extends CoordinatorPulse {
6
- static getCoordinatorCreator(config) {
7
- return (view, phaseObservable) => {
8
- return new this(view, phaseObservable, config || {});
9
- };
10
- }
11
- constructor(view, phaseObservable, config) {
12
- super(view, phaseObservable, Object.assign(Object.assign({}, defaultConfig), config));
13
- }
14
- _prepare(node, _isNewProduct) {
15
- const queue = this.getAnimatorQueue(node, true);
16
- if (queue === undefined) {
17
- throw new Error("No queue unexpected");
18
- }
19
- const width = this._config.width *
20
- (this.productNode === undefined
21
- ? 1
22
- : Math.pow(this.productNode.boundingBox.spaceDiagonal, 2));
23
- const config = Object.assign(Object.assign({}, this._config), { width, easing: EasingFunctions.makeMirrored(EasingFunctions.easeInQuart), startPosition: 0 });
24
- const animator = new AnimatorHighlight(node, config);
25
- animator.apply0();
26
- queue.add(animator);
27
- return Promise.resolve();
28
- }
29
- }
1
+ import { AnimatorHighlight, defaultConfig as animatorHighlightDefaultConfig, } from "../animator/AnimatorHighlight.js";
2
+ import { EasingFunctions } from "../animator/EasingFunctions.js";
3
+ import { CoordinatorPulse, defaultConfig as baseDefaultConfig, } from "./CoordinatorPulse.js";
4
+ const defaultConfig = Object.assign(Object.assign({}, baseDefaultConfig), animatorHighlightDefaultConfig);
5
+ export class CoordinatorPulseHighlight extends CoordinatorPulse {
6
+ static getCoordinatorCreator(config) {
7
+ return (view, phaseObservable) => {
8
+ return new this(view, phaseObservable, config || {});
9
+ };
10
+ }
11
+ constructor(view, phaseObservable, config) {
12
+ super(view, phaseObservable, Object.assign(Object.assign({}, defaultConfig), config));
13
+ }
14
+ _prepare(node, _isNewProduct) {
15
+ const queue = this.getAnimatorQueue(node, true);
16
+ if (queue === undefined) {
17
+ throw new Error("No queue unexpected");
18
+ }
19
+ const width = this._config.width *
20
+ (this.productNode === undefined
21
+ ? 1
22
+ : Math.pow(this.productNode.boundingBox.spaceDiagonal, 2));
23
+ const config = Object.assign(Object.assign({}, this._config), { width, easing: EasingFunctions.makeMirrored(EasingFunctions.easeInQuart), startPosition: 0 });
24
+ const animator = new AnimatorHighlight(node, config);
25
+ animator.apply0();
26
+ queue.add(animator);
27
+ return Promise.resolve();
28
+ }
29
+ }
@@ -1,15 +1,15 @@
1
- import { Observable } from "@configura/web-utilities";
2
- import { SingleProductView } from "../../view/SingleProductView.js";
3
- import { SingleProductViewPhaseEvent } from "../../view/SingleProductViewConfiguration.js";
4
- import { AnimatableObject } from "../AnimatableObject.js";
5
- import { CoordinatorCreator } from "./Coordinator.js";
6
- import { CoordinatorPulse, CoordinatorPulseConfig } from "./CoordinatorPulse.js";
7
- export declare type CoordinatorPulseInflateConfig = CoordinatorPulseConfig & {
8
- size: number;
9
- };
10
- export declare class CoordinatorPulseInflate extends CoordinatorPulse<CoordinatorPulseInflateConfig> {
11
- static getCoordinatorCreator(config?: Partial<CoordinatorPulseInflateConfig>): CoordinatorCreator;
12
- protected constructor(view: SingleProductView, phaseObservable: Observable<SingleProductViewPhaseEvent>, config: Partial<CoordinatorPulseInflateConfig>);
13
- _prepare(node: AnimatableObject, _isNewProduct: boolean): Promise<void>;
14
- }
1
+ import { Observable } from "@configura/web-utilities";
2
+ import { SingleProductView } from "../../view/SingleProductView.js";
3
+ import { SingleProductViewPhaseEvent } from "../../view/SingleProductViewConfiguration.js";
4
+ import { AnimatableObject } from "../AnimatableObject.js";
5
+ import { CoordinatorCreator } from "./Coordinator.js";
6
+ import { CoordinatorPulse, CoordinatorPulseConfig } from "./CoordinatorPulse.js";
7
+ export declare type CoordinatorPulseInflateConfig = CoordinatorPulseConfig & {
8
+ size: number;
9
+ };
10
+ export declare class CoordinatorPulseInflate extends CoordinatorPulse<CoordinatorPulseInflateConfig> {
11
+ static getCoordinatorCreator(config?: Partial<CoordinatorPulseInflateConfig>): CoordinatorCreator;
12
+ protected constructor(view: SingleProductView, phaseObservable: Observable<SingleProductViewPhaseEvent>, config: Partial<CoordinatorPulseInflateConfig>);
13
+ _prepare(node: AnimatableObject, _isNewProduct: boolean): Promise<void>;
14
+ }
15
15
  //# sourceMappingURL=CoordinatorPulseInflate.d.ts.map
@@ -1,23 +1,23 @@
1
- import { AnimatorScale } from "../animator/AnimatorScale.js";
2
- import { EasingFunctions } from "../animator/EasingFunctions.js";
3
- import { CoordinatorPulse, defaultConfig as baseDefaultConfig, } from "./CoordinatorPulse.js";
4
- const defaultConfig = Object.assign(Object.assign({}, baseDefaultConfig), { size: 0.98, duration: 400 });
5
- export class CoordinatorPulseInflate extends CoordinatorPulse {
6
- static getCoordinatorCreator(config) {
7
- return (view, phaseObservable) => {
8
- return new this(view, phaseObservable, config || {});
9
- };
10
- }
11
- constructor(view, phaseObservable, config) {
12
- super(view, phaseObservable, Object.assign(Object.assign({}, defaultConfig), config));
13
- }
14
- _prepare(node, _isNewProduct) {
15
- const queue = this.getAnimatorQueue(node, true);
16
- if (queue === undefined) {
17
- throw new Error("No queue unexpected");
18
- }
19
- const animator = new AnimatorScale(node, Object.assign(Object.assign({}, this._config), { easing: EasingFunctions.sinBounce(1), startPosition: 1, endPosition: this._config.size, translationVector: node.boundingBox.center }));
20
- queue.add(animator);
21
- return Promise.resolve();
22
- }
23
- }
1
+ import { AnimatorScale } from "../animator/AnimatorScale.js";
2
+ import { EasingFunctions } from "../animator/EasingFunctions.js";
3
+ import { CoordinatorPulse, defaultConfig as baseDefaultConfig, } from "./CoordinatorPulse.js";
4
+ const defaultConfig = Object.assign(Object.assign({}, baseDefaultConfig), { size: 0.98, duration: 400 });
5
+ export class CoordinatorPulseInflate extends CoordinatorPulse {
6
+ static getCoordinatorCreator(config) {
7
+ return (view, phaseObservable) => {
8
+ return new this(view, phaseObservable, config || {});
9
+ };
10
+ }
11
+ constructor(view, phaseObservable, config) {
12
+ super(view, phaseObservable, Object.assign(Object.assign({}, defaultConfig), config));
13
+ }
14
+ _prepare(node, _isNewProduct) {
15
+ const queue = this.getAnimatorQueue(node, true);
16
+ if (queue === undefined) {
17
+ throw new Error("No queue unexpected");
18
+ }
19
+ const animator = new AnimatorScale(node, Object.assign(Object.assign({}, this._config), { easing: EasingFunctions.sinBounce(1), startPosition: 1, endPosition: this._config.size, translationVector: node.boundingBox.center }));
20
+ queue.add(animator);
21
+ return Promise.resolve();
22
+ }
23
+ }
@@ -1,6 +1,6 @@
1
- import { Camera } from "@babylonjs/core/Cameras/camera.js";
2
- import { Scene } from "@babylonjs/core/scene.js";
3
- import { CfgOrbitalCamera } from "./CfgOrbitalCamera.js";
4
- export declare type CameraCreator<C extends Camera> = (scene: Scene, canvas: HTMLElement) => C;
5
- export declare function getDefaultCamera(scene: Scene, canvas: HTMLElement): CfgOrbitalCamera;
1
+ import { Camera } from "@babylonjs/core/Cameras/camera.js";
2
+ import { Scene } from "@babylonjs/core/scene.js";
3
+ import { CfgOrbitalCamera } from "./CfgOrbitalCamera.js";
4
+ export declare type CameraCreator<C extends Camera> = (scene: Scene, canvas: HTMLElement) => C;
5
+ export declare function getDefaultCamera(scene: Scene, canvas: HTMLElement): CfgOrbitalCamera;
6
6
  //# sourceMappingURL=CameraCreator.d.ts.map
@@ -1,4 +1,4 @@
1
- import { CfgOrbitalCamera } from "./CfgOrbitalCamera.js";
2
- export function getDefaultCamera(scene, canvas) {
3
- return new CfgOrbitalCamera(scene, canvas);
4
- }
1
+ import { CfgOrbitalCamera } from "./CfgOrbitalCamera.js";
2
+ export function getDefaultCamera(scene, canvas) {
3
+ return new CfgOrbitalCamera(scene, canvas);
4
+ }
@@ -1,77 +1,77 @@
1
- import { ArcRotateCamera } from "@babylonjs/core/Cameras/arcRotateCamera.js";
2
- import { Scene } from "@babylonjs/core/scene.js";
3
- import { Observable } from "@configura/web-utilities";
4
- import { CfgBoundingBox } from "../utilities/CfgBoundingBox.js";
5
- import { CfgOrbitalCameraControlProps } from "./CfgOrbitalCameraControlProps.js";
6
- export declare const MAX_UPPER_BETA_LIMIT: number;
7
- export declare const MIN_LOWER_BETA_LIMIT = 0.1;
8
- /**
9
- * @param fov Field of view, in radians. Default value degToRad(30).
10
- * @param mouseWheelSpeedFactor The higher the slower movement. Default value 200.
11
- * @param pinchZoomFactor The higher the slower zoom (really dolly). Default value 100.
12
- * @param keyboardSpeedFactor The higher the faster movement. Default value 0.002.
13
- * @param pointerSpeedFactor The higher the slower movement. Default value 2000.
14
- * @param inertia How fast does speed decline. Must be less than 1. Default value 0.93.
15
- * @param keepCameraFromGettingTooCloseFactor How much further than closest corner is near limit. 1.5 means 50% further. Default value 1.5.
16
- * @param significantBoundingBoxSizeChangeShrinkFactor How much shrink in size along any axis (X+, X-, Y+, Y-, Z+ or Z-) will make the the zoom reset. Default value 0.4 (40%).
17
- * @param significantBoundingBoxSizeChangeGrowFactor How much growth in size along any axis (X+, X-, Y+, Y-, Z+ or Z-) will make the the zoom reset. Default value 0.1 (10%).
18
- */
19
- export declare type CfgOrbitalCameraConfig = {
20
- fov: number;
21
- mouseWheelSpeedFactor: number;
22
- pinchZoomFactor: number;
23
- keyboardSpeedFactor: number;
24
- pointerSpeedFactor: number;
25
- inertia: number;
26
- keepCameraFromGettingTooCloseFactor: number;
27
- significantBoundingBoxSizeChangeShrinkFactor: number;
28
- significantBoundingBoxSizeChangeGrowFactor: number;
29
- };
30
- declare abstract class WorkaroundCfgOrbitalCamera extends ArcRotateCamera {
31
- abstract radius: number;
32
- }
33
- export declare class CfgOrbitalCamera extends WorkaroundCfgOrbitalCamera {
34
- private _canvas;
35
- constructor(scene: Scene, _canvas: HTMLElement, config?: Partial<CfgOrbitalCameraConfig>);
36
- dispose(): void;
37
- protected _config: CfgOrbitalCameraConfig;
38
- private _currentBoundingBox;
39
- private _latestSignificantChangeBoundingBox;
40
- private _currentMinDistanceToKeepCameraOutOfModel;
41
- private _currentMinDistanceToFitModelInView;
42
- private _orbitalCameraControlObservable;
43
- private _previousOrbitalCameraControlProps;
44
- _disableSubFloorCam: boolean;
45
- set disableSubFloorCam(v: boolean);
46
- _lowestAllowedCameraHeight: number | undefined;
47
- set lowestAllowedCameraHeight(v: number | undefined);
48
- get lowestAllowedCameraHeight(): number | undefined;
49
- private _pointerDown;
50
- disableAutomaticSizing: boolean;
51
- disableZoom: boolean;
52
- private _externalControlHasHappened;
53
- forceRadius(r: number): void;
54
- private _radius;
55
- set radius(r: number);
56
- get radius(): number;
57
- private get _orbitalCameraControlProps();
58
- private _boundCameraListener;
59
- private _pointerUpDownCallback;
60
- frameRenderNeeded(): boolean;
61
- private get _isMoving();
62
- private _notifyCameraControlListeners;
63
- get cameraControlObservable(): Observable<CfgOrbitalCameraControlProps>;
64
- /**
65
- * @param force true makes the camera distance adapt to the new bounds, even if they have
66
- * not changed significantly. false makes the camera distance not adapt even if the
67
- * bounding box size change is significant.
68
- */
69
- setContentBoundingBox(newBoundingBox: CfgBoundingBox, force: boolean | undefined): void;
70
- private _applyAdaptToContentBoundingBox;
71
- refreshCameraNearFar(): void;
72
- private _applyNoSneakPeeking;
73
- private _updateCameraLimits;
74
- private _calculateNoPeekingLimit;
75
- }
76
- export {};
1
+ import { ArcRotateCamera } from "@babylonjs/core/Cameras/arcRotateCamera.js";
2
+ import { Scene } from "@babylonjs/core/scene.js";
3
+ import { Observable } from "@configura/web-utilities";
4
+ import { CfgBoundingBox } from "../utilities/CfgBoundingBox.js";
5
+ import { CfgOrbitalCameraControlProps } from "./CfgOrbitalCameraControlProps.js";
6
+ export declare const MAX_UPPER_BETA_LIMIT: number;
7
+ export declare const MIN_LOWER_BETA_LIMIT = 0.1;
8
+ /**
9
+ * @param fov Field of view, in radians. Default value degToRad(30).
10
+ * @param mouseWheelSpeedFactor The higher the slower movement. Default value 200.
11
+ * @param pinchZoomFactor The higher the slower zoom (really dolly). Default value 100.
12
+ * @param keyboardSpeedFactor The higher the faster movement. Default value 0.002.
13
+ * @param pointerSpeedFactor The higher the slower movement. Default value 2000.
14
+ * @param inertia How fast does speed decline. Must be less than 1. Default value 0.93.
15
+ * @param keepCameraFromGettingTooCloseFactor How much further than closest corner is near limit. 1.5 means 50% further. Default value 1.5.
16
+ * @param significantBoundingBoxSizeChangeShrinkFactor How much shrink in size along any axis (X+, X-, Y+, Y-, Z+ or Z-) will make the the zoom reset. Default value 0.4 (40%).
17
+ * @param significantBoundingBoxSizeChangeGrowFactor How much growth in size along any axis (X+, X-, Y+, Y-, Z+ or Z-) will make the the zoom reset. Default value 0.1 (10%).
18
+ */
19
+ export declare type CfgOrbitalCameraConfig = {
20
+ fov: number;
21
+ mouseWheelSpeedFactor: number;
22
+ pinchZoomFactor: number;
23
+ keyboardSpeedFactor: number;
24
+ pointerSpeedFactor: number;
25
+ inertia: number;
26
+ keepCameraFromGettingTooCloseFactor: number;
27
+ significantBoundingBoxSizeChangeShrinkFactor: number;
28
+ significantBoundingBoxSizeChangeGrowFactor: number;
29
+ };
30
+ declare abstract class WorkaroundCfgOrbitalCamera extends ArcRotateCamera {
31
+ abstract radius: number;
32
+ }
33
+ export declare class CfgOrbitalCamera extends WorkaroundCfgOrbitalCamera {
34
+ private _canvas;
35
+ constructor(scene: Scene, _canvas: HTMLElement, config?: Partial<CfgOrbitalCameraConfig>);
36
+ dispose(): void;
37
+ protected _config: CfgOrbitalCameraConfig;
38
+ private _currentBoundingBox;
39
+ private _latestSignificantChangeBoundingBox;
40
+ private _currentMinDistanceToKeepCameraOutOfModel;
41
+ private _currentMinDistanceToFitModelInView;
42
+ private _orbitalCameraControlObservable;
43
+ private _previousOrbitalCameraControlProps;
44
+ _disableSubFloorCam: boolean;
45
+ set disableSubFloorCam(v: boolean);
46
+ _lowestAllowedCameraHeight: number | undefined;
47
+ set lowestAllowedCameraHeight(v: number | undefined);
48
+ get lowestAllowedCameraHeight(): number | undefined;
49
+ private _pointerDown;
50
+ disableAutomaticSizing: boolean;
51
+ disableZoom: boolean;
52
+ private _externalControlHasHappened;
53
+ forceRadius(r: number): void;
54
+ private _radius;
55
+ set radius(r: number);
56
+ get radius(): number;
57
+ private get _orbitalCameraControlProps();
58
+ private _boundCameraListener;
59
+ private _pointerUpDownCallback;
60
+ frameRenderNeeded(): boolean;
61
+ private get _isMoving();
62
+ private _notifyCameraControlListeners;
63
+ get cameraControlObservable(): Observable<CfgOrbitalCameraControlProps>;
64
+ /**
65
+ * @param force true makes the camera distance adapt to the new bounds, even if they have
66
+ * not changed significantly. false makes the camera distance not adapt even if the
67
+ * bounding box size change is significant.
68
+ */
69
+ setContentBoundingBox(newBoundingBox: CfgBoundingBox, force: boolean | undefined): void;
70
+ private _applyAdaptToContentBoundingBox;
71
+ refreshCameraNearFar(): void;
72
+ private _applyNoSneakPeeking;
73
+ private _updateCameraLimits;
74
+ private _calculateNoPeekingLimit;
75
+ }
76
+ export {};
77
77
  //# sourceMappingURL=CfgOrbitalCamera.d.ts.map