@babylonjs/gui 5.0.0-rc.5 → 5.0.0-rc.9
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/2D/adtInstrumentation.d.ts +52 -52
- package/2D/adtInstrumentation.js +126 -126
- package/2D/advancedDynamicTexture.d.ts +448 -448
- package/2D/advancedDynamicTexture.js +1318 -1318
- package/2D/controls/button.d.ts +135 -135
- package/2D/controls/button.js +276 -276
- package/2D/controls/checkbox.d.ts +59 -59
- package/2D/controls/checkbox.js +188 -188
- package/2D/controls/colorpicker.d.ts +103 -103
- package/2D/controls/colorpicker.js +1417 -1417
- package/2D/controls/container.d.ts +175 -175
- package/2D/controls/container.js +570 -570
- package/2D/controls/control.d.ts +866 -866
- package/2D/controls/control.js +2433 -2433
- package/2D/controls/displayGrid.d.ts +53 -53
- package/2D/controls/displayGrid.js +245 -245
- package/2D/controls/ellipse.d.ts +21 -21
- package/2D/controls/ellipse.js +85 -85
- package/2D/controls/focusableButton.d.ts +59 -59
- package/2D/controls/focusableButton.js +99 -99
- package/2D/controls/focusableControl.d.ts +34 -34
- package/2D/controls/focusableControl.js +1 -1
- package/2D/controls/grid.d.ts +139 -139
- package/2D/controls/grid.js +529 -529
- package/2D/controls/image.d.ts +204 -204
- package/2D/controls/image.js +887 -887
- package/2D/controls/index.d.ts +29 -29
- package/2D/controls/index.js +29 -29
- package/2D/controls/inputPassword.d.ts +8 -8
- package/2D/controls/inputPassword.js +25 -25
- package/2D/controls/inputText.d.ts +201 -201
- package/2D/controls/inputText.js +1119 -1119
- package/2D/controls/line.d.ts +66 -66
- package/2D/controls/line.js +271 -271
- package/2D/controls/multiLine.d.ts +75 -75
- package/2D/controls/multiLine.js +262 -262
- package/2D/controls/radioButton.d.ts +49 -49
- package/2D/controls/radioButton.js +205 -205
- package/2D/controls/rectangle.d.ts +29 -29
- package/2D/controls/rectangle.js +150 -150
- package/2D/controls/scrollViewers/scrollViewer.d.ts +182 -182
- package/2D/controls/scrollViewers/scrollViewer.js +677 -677
- package/2D/controls/scrollViewers/scrollViewerWindow.d.ts +57 -57
- package/2D/controls/scrollViewers/scrollViewerWindow.js +278 -278
- package/2D/controls/selector.d.ts +263 -263
- package/2D/controls/selector.js +692 -692
- package/2D/controls/sliders/baseSlider.d.ts +82 -82
- package/2D/controls/sliders/baseSlider.js +347 -347
- package/2D/controls/sliders/imageBasedSlider.d.ts +49 -49
- package/2D/controls/sliders/imageBasedSlider.js +192 -192
- package/2D/controls/sliders/imageScrollBar.d.ts +65 -65
- package/2D/controls/sliders/imageScrollBar.js +263 -263
- package/2D/controls/sliders/scrollBar.d.ts +38 -38
- package/2D/controls/sliders/scrollBar.js +143 -143
- package/2D/controls/sliders/slider.d.ts +35 -35
- package/2D/controls/sliders/slider.js +271 -271
- package/2D/controls/stackPanel.d.ts +64 -64
- package/2D/controls/stackPanel.js +246 -246
- package/2D/controls/statics.d.ts +6 -6
- package/2D/controls/statics.js +49 -49
- package/2D/controls/textBlock.d.ts +175 -175
- package/2D/controls/textBlock.js +603 -603
- package/2D/controls/textWrapper.d.ts +13 -13
- package/2D/controls/textWrapper.js +101 -101
- package/2D/controls/toggleButton.d.ts +117 -117
- package/2D/controls/toggleButton.js +268 -268
- package/2D/controls/virtualKeyboard.d.ts +96 -96
- package/2D/controls/virtualKeyboard.js +256 -256
- package/2D/index.d.ts +9 -9
- package/2D/index.js +9 -9
- package/2D/math2D.d.ts +117 -117
- package/2D/math2D.js +221 -221
- package/2D/measure.d.ts +77 -77
- package/2D/measure.js +139 -139
- package/2D/multiLinePoint.d.ts +47 -47
- package/2D/multiLinePoint.js +127 -127
- package/2D/style.d.ts +46 -46
- package/2D/style.js +97 -97
- package/2D/valueAndUnit.d.ts +89 -89
- package/2D/valueAndUnit.js +226 -226
- package/2D/xmlLoader.d.ts +60 -60
- package/2D/xmlLoader.js +348 -348
- package/3D/behaviors/defaultBehavior.d.ts +73 -73
- package/3D/behaviors/defaultBehavior.js +121 -121
- package/3D/controls/abstractButton3D.d.ts +15 -15
- package/3D/controls/abstractButton3D.js +25 -25
- package/3D/controls/button3D.d.ts +30 -30
- package/3D/controls/button3D.js +93 -93
- package/3D/controls/container3D.d.ts +72 -72
- package/3D/controls/container3D.js +139 -139
- package/3D/controls/contentDisplay3D.d.ts +30 -30
- package/3D/controls/contentDisplay3D.js +79 -79
- package/3D/controls/control3D.d.ts +201 -201
- package/3D/controls/control3D.js +445 -445
- package/3D/controls/cylinderPanel.d.ts +17 -17
- package/3D/controls/cylinderPanel.js +66 -66
- package/3D/controls/handMenu.d.ts +28 -28
- package/3D/controls/handMenu.js +47 -47
- package/3D/controls/holographicBackplate.d.ts +49 -49
- package/3D/controls/holographicBackplate.js +120 -120
- package/3D/controls/holographicButton.d.ts +84 -84
- package/3D/controls/holographicButton.js +339 -339
- package/3D/controls/holographicSlate.d.ts +131 -131
- package/3D/controls/holographicSlate.js +431 -431
- package/3D/controls/index.d.ts +21 -21
- package/3D/controls/index.js +21 -21
- package/3D/controls/meshButton3D.d.ts +21 -21
- package/3D/controls/meshButton3D.js +62 -62
- package/3D/controls/nearMenu.d.ts +44 -44
- package/3D/controls/nearMenu.js +114 -114
- package/3D/controls/planePanel.d.ts +9 -9
- package/3D/controls/planePanel.js +36 -36
- package/3D/controls/scatterPanel.d.ts +18 -18
- package/3D/controls/scatterPanel.js +108 -108
- package/3D/controls/slider3D.d.ts +81 -81
- package/3D/controls/slider3D.js +268 -268
- package/3D/controls/spherePanel.d.ts +17 -17
- package/3D/controls/spherePanel.js +67 -67
- package/3D/controls/stackPanel3D.d.ts +22 -22
- package/3D/controls/stackPanel3D.js +107 -107
- package/3D/controls/touchButton3D.d.ts +80 -80
- package/3D/controls/touchButton3D.js +233 -233
- package/3D/controls/touchHolographicButton.d.ts +110 -110
- package/3D/controls/touchHolographicButton.js +445 -445
- package/3D/controls/touchHolographicMenu.d.ts +61 -61
- package/3D/controls/touchHolographicMenu.js +149 -149
- package/3D/controls/touchMeshButton3D.d.ts +21 -21
- package/3D/controls/touchMeshButton3D.js +62 -62
- package/3D/controls/volumeBasedPanel.d.ts +53 -53
- package/3D/controls/volumeBasedPanel.js +174 -174
- package/3D/gizmos/gizmoHandle.d.ts +108 -108
- package/3D/gizmos/gizmoHandle.js +209 -209
- package/3D/gizmos/index.d.ts +2 -2
- package/3D/gizmos/index.js +2 -2
- package/3D/gizmos/slateGizmo.d.ts +57 -57
- package/3D/gizmos/slateGizmo.js +369 -369
- package/3D/gui3DManager.d.ts +94 -94
- package/3D/gui3DManager.js +257 -257
- package/3D/index.d.ts +5 -5
- package/3D/index.js +5 -5
- package/3D/materials/fluent/fluentMaterial.d.ts +90 -90
- package/3D/materials/fluent/fluentMaterial.js +292 -292
- package/3D/materials/fluent/index.d.ts +1 -1
- package/3D/materials/fluent/index.js +1 -1
- package/3D/materials/fluent/shaders/fluent.fragment.d.ts +5 -5
- package/3D/materials/fluent/shaders/fluent.fragment.js +8 -8
- package/3D/materials/fluent/shaders/fluent.vertex.d.ts +5 -5
- package/3D/materials/fluent/shaders/fluent.vertex.js +8 -8
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.d.ts +154 -154
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.js +469 -469
- package/3D/materials/fluentBackplate/index.d.ts +1 -1
- package/3D/materials/fluentBackplate/index.js +1 -1
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.d.ts +5 -5
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.js +8 -8
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.d.ts +5 -5
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.js +8 -8
- package/3D/materials/fluentButton/fluentButtonMaterial.d.ts +189 -189
- package/3D/materials/fluentButton/fluentButtonMaterial.js +539 -539
- package/3D/materials/fluentButton/index.d.ts +1 -1
- package/3D/materials/fluentButton/index.js +1 -1
- package/3D/materials/fluentButton/shaders/fluentButton.fragment.d.ts +5 -5
- package/3D/materials/fluentButton/shaders/fluentButton.fragment.js +8 -8
- package/3D/materials/fluentButton/shaders/fluentButton.vertex.d.ts +5 -5
- package/3D/materials/fluentButton/shaders/fluentButton.vertex.js +8 -8
- package/3D/materials/fluentMaterial.d.ts +4 -4
- package/3D/materials/fluentMaterial.js +4 -4
- package/3D/materials/handle/handleMaterial.d.ts +68 -68
- package/3D/materials/handle/handleMaterial.js +126 -126
- package/3D/materials/handle/index.d.ts +1 -1
- package/3D/materials/handle/index.js +1 -1
- package/3D/materials/handle/shaders/handle.fragment.d.ts +5 -5
- package/3D/materials/handle/shaders/handle.fragment.js +8 -8
- package/3D/materials/handle/shaders/handle.vertex.d.ts +5 -5
- package/3D/materials/handle/shaders/handle.vertex.js +8 -8
- package/3D/materials/index.d.ts +5 -5
- package/3D/materials/index.js +5 -5
- package/3D/materials/mrdl/index.d.ts +3 -3
- package/3D/materials/mrdl/index.js +3 -3
- package/3D/materials/mrdl/mrdlBackplateMaterial.d.ts +147 -147
- package/3D/materials/mrdl/mrdlBackplateMaterial.js +436 -436
- package/3D/materials/mrdl/mrdlSliderBarMaterial.d.ts +333 -333
- package/3D/materials/mrdl/mrdlSliderBarMaterial.js +851 -851
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.d.ts +333 -333
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.js +851 -851
- package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.d.ts +5 -5
- package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.js +8 -8
- package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.d.ts +5 -5
- package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.js +8 -8
- package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.d.ts +5 -5
- package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.js +8 -8
- package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.d.ts +5 -5
- package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.js +8 -8
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.d.ts +5 -5
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.js +8 -8
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.d.ts +5 -5
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.js +8 -8
- package/3D/vector3WithInfo.d.ts +16 -16
- package/3D/vector3WithInfo.js +23 -23
- package/index.d.ts +2 -2
- package/index.js +2 -2
- package/legacy/legacy.d.ts +1 -1
- package/legacy/legacy.js +13 -13
- package/package.json +2 -2
|
@@ -1,73 +1,73 @@
|
|
|
1
|
-
import { Behavior } from "@babylonjs/core/Behaviors/behavior.js";
|
|
2
|
-
import { FollowBehavior } from "@babylonjs/core/Behaviors/Meshes/followBehavior.js";
|
|
3
|
-
import { SixDofDragBehavior } from "@babylonjs/core/Behaviors/Meshes/sixDofDragBehavior.js";
|
|
4
|
-
import { Mesh } from "@babylonjs/core/Meshes/mesh.js";
|
|
5
|
-
import { Nullable } from "@babylonjs/core/types.js";
|
|
6
|
-
import { SurfaceMagnetismBehavior } from "@babylonjs/core/Behaviors/Meshes/surfaceMagnetismBehavior.js";
|
|
7
|
-
import { AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh.js";
|
|
8
|
-
/**
|
|
9
|
-
* Default behavior for 3D UI elements.
|
|
10
|
-
* Handles a FollowBehavior, SixDofBehavior and SurfaceMagnetismBehavior
|
|
11
|
-
* @since 5.0.0
|
|
12
|
-
*/
|
|
13
|
-
export declare class DefaultBehavior implements Behavior<Mesh> {
|
|
14
|
-
private _scene;
|
|
15
|
-
private _followBehavior;
|
|
16
|
-
private _sixDofDragBehavior;
|
|
17
|
-
private _surfaceMagnetismBehavior;
|
|
18
|
-
private _onBeforeRenderObserver;
|
|
19
|
-
private _onDragObserver;
|
|
20
|
-
/**
|
|
21
|
-
* Instantiates the default behavior
|
|
22
|
-
*/
|
|
23
|
-
constructor();
|
|
24
|
-
/**
|
|
25
|
-
* Attached node of this behavior
|
|
26
|
-
*/
|
|
27
|
-
attachedNode: Nullable<Mesh>;
|
|
28
|
-
/**
|
|
29
|
-
* The name of the behavior
|
|
30
|
-
*/
|
|
31
|
-
get name(): string;
|
|
32
|
-
/**
|
|
33
|
-
* The follow behavior
|
|
34
|
-
*/
|
|
35
|
-
get followBehavior(): FollowBehavior;
|
|
36
|
-
/**
|
|
37
|
-
* The six DoF drag behavior
|
|
38
|
-
*/
|
|
39
|
-
get sixDofDragBehavior(): SixDofDragBehavior;
|
|
40
|
-
/**
|
|
41
|
-
* The surface magnetism behavior
|
|
42
|
-
*/
|
|
43
|
-
get surfaceMagnetismBehavior(): SurfaceMagnetismBehavior;
|
|
44
|
-
/**
|
|
45
|
-
* Enables the follow behavior
|
|
46
|
-
*/
|
|
47
|
-
followBehaviorEnabled: boolean;
|
|
48
|
-
/**
|
|
49
|
-
* Enables the six DoF drag behavior
|
|
50
|
-
*/
|
|
51
|
-
sixDofDragBehaviorEnabled: boolean;
|
|
52
|
-
/**
|
|
53
|
-
* Enables the surface magnetism behavior
|
|
54
|
-
*/
|
|
55
|
-
surfaceMagnetismBehaviorEnabled: boolean;
|
|
56
|
-
/**
|
|
57
|
-
* Initializes the behavior
|
|
58
|
-
*/
|
|
59
|
-
init(): void;
|
|
60
|
-
/**
|
|
61
|
-
* Attaches the default behavior
|
|
62
|
-
* @param ownerMesh The top level mesh
|
|
63
|
-
* @param draggablesMeshes Descendant meshes that can be used for dragging the owner mesh
|
|
64
|
-
* @param sceneUnderstandingMeshes Meshes from the scene understanding that will be used for surface magnetism
|
|
65
|
-
*/
|
|
66
|
-
attach(ownerMesh: Mesh, draggablesMeshes?: Mesh[], sceneUnderstandingMeshes?: AbstractMesh[]): void;
|
|
67
|
-
/**
|
|
68
|
-
* Detaches the behavior from the mesh
|
|
69
|
-
*/
|
|
70
|
-
detach(): void;
|
|
71
|
-
private _addObservables;
|
|
72
|
-
private _removeObservables;
|
|
73
|
-
}
|
|
1
|
+
import { Behavior } from "@babylonjs/core/Behaviors/behavior.js";
|
|
2
|
+
import { FollowBehavior } from "@babylonjs/core/Behaviors/Meshes/followBehavior.js";
|
|
3
|
+
import { SixDofDragBehavior } from "@babylonjs/core/Behaviors/Meshes/sixDofDragBehavior.js";
|
|
4
|
+
import { Mesh } from "@babylonjs/core/Meshes/mesh.js";
|
|
5
|
+
import { Nullable } from "@babylonjs/core/types.js";
|
|
6
|
+
import { SurfaceMagnetismBehavior } from "@babylonjs/core/Behaviors/Meshes/surfaceMagnetismBehavior.js";
|
|
7
|
+
import { AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh.js";
|
|
8
|
+
/**
|
|
9
|
+
* Default behavior for 3D UI elements.
|
|
10
|
+
* Handles a FollowBehavior, SixDofBehavior and SurfaceMagnetismBehavior
|
|
11
|
+
* @since 5.0.0
|
|
12
|
+
*/
|
|
13
|
+
export declare class DefaultBehavior implements Behavior<Mesh> {
|
|
14
|
+
private _scene;
|
|
15
|
+
private _followBehavior;
|
|
16
|
+
private _sixDofDragBehavior;
|
|
17
|
+
private _surfaceMagnetismBehavior;
|
|
18
|
+
private _onBeforeRenderObserver;
|
|
19
|
+
private _onDragObserver;
|
|
20
|
+
/**
|
|
21
|
+
* Instantiates the default behavior
|
|
22
|
+
*/
|
|
23
|
+
constructor();
|
|
24
|
+
/**
|
|
25
|
+
* Attached node of this behavior
|
|
26
|
+
*/
|
|
27
|
+
attachedNode: Nullable<Mesh>;
|
|
28
|
+
/**
|
|
29
|
+
* The name of the behavior
|
|
30
|
+
*/
|
|
31
|
+
get name(): string;
|
|
32
|
+
/**
|
|
33
|
+
* The follow behavior
|
|
34
|
+
*/
|
|
35
|
+
get followBehavior(): FollowBehavior;
|
|
36
|
+
/**
|
|
37
|
+
* The six DoF drag behavior
|
|
38
|
+
*/
|
|
39
|
+
get sixDofDragBehavior(): SixDofDragBehavior;
|
|
40
|
+
/**
|
|
41
|
+
* The surface magnetism behavior
|
|
42
|
+
*/
|
|
43
|
+
get surfaceMagnetismBehavior(): SurfaceMagnetismBehavior;
|
|
44
|
+
/**
|
|
45
|
+
* Enables the follow behavior
|
|
46
|
+
*/
|
|
47
|
+
followBehaviorEnabled: boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Enables the six DoF drag behavior
|
|
50
|
+
*/
|
|
51
|
+
sixDofDragBehaviorEnabled: boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Enables the surface magnetism behavior
|
|
54
|
+
*/
|
|
55
|
+
surfaceMagnetismBehaviorEnabled: boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Initializes the behavior
|
|
58
|
+
*/
|
|
59
|
+
init(): void;
|
|
60
|
+
/**
|
|
61
|
+
* Attaches the default behavior
|
|
62
|
+
* @param ownerMesh The top level mesh
|
|
63
|
+
* @param draggablesMeshes Descendant meshes that can be used for dragging the owner mesh
|
|
64
|
+
* @param sceneUnderstandingMeshes Meshes from the scene understanding that will be used for surface magnetism
|
|
65
|
+
*/
|
|
66
|
+
attach(ownerMesh: Mesh, draggablesMeshes?: Mesh[], sceneUnderstandingMeshes?: AbstractMesh[]): void;
|
|
67
|
+
/**
|
|
68
|
+
* Detaches the behavior from the mesh
|
|
69
|
+
*/
|
|
70
|
+
detach(): void;
|
|
71
|
+
private _addObservables;
|
|
72
|
+
private _removeObservables;
|
|
73
|
+
}
|
|
@@ -1,122 +1,122 @@
|
|
|
1
|
-
import { FollowBehavior } from "@babylonjs/core/Behaviors/Meshes/followBehavior.js";
|
|
2
|
-
import { SixDofDragBehavior } from "@babylonjs/core/Behaviors/Meshes/sixDofDragBehavior.js";
|
|
3
|
-
import { SurfaceMagnetismBehavior } from "@babylonjs/core/Behaviors/Meshes/surfaceMagnetismBehavior.js";
|
|
4
|
-
/**
|
|
5
|
-
* Default behavior for 3D UI elements.
|
|
6
|
-
* Handles a FollowBehavior, SixDofBehavior and SurfaceMagnetismBehavior
|
|
7
|
-
* @since 5.0.0
|
|
8
|
-
*/
|
|
9
|
-
var DefaultBehavior = /** @class */ (function () {
|
|
10
|
-
/**
|
|
11
|
-
* Instantiates the default behavior
|
|
12
|
-
*/
|
|
13
|
-
function DefaultBehavior() {
|
|
14
|
-
/**
|
|
15
|
-
* Enables the follow behavior
|
|
16
|
-
*/
|
|
17
|
-
this.followBehaviorEnabled = false;
|
|
18
|
-
/**
|
|
19
|
-
* Enables the six DoF drag behavior
|
|
20
|
-
*/
|
|
21
|
-
this.sixDofDragBehaviorEnabled = true;
|
|
22
|
-
/**
|
|
23
|
-
* Enables the surface magnetism behavior
|
|
24
|
-
*/
|
|
25
|
-
this.surfaceMagnetismBehaviorEnabled = true;
|
|
26
|
-
this._followBehavior = new FollowBehavior();
|
|
27
|
-
this._sixDofDragBehavior = new SixDofDragBehavior();
|
|
28
|
-
this._surfaceMagnetismBehavior = new SurfaceMagnetismBehavior();
|
|
29
|
-
}
|
|
30
|
-
Object.defineProperty(DefaultBehavior.prototype, "name", {
|
|
31
|
-
/**
|
|
32
|
-
* The name of the behavior
|
|
33
|
-
*/
|
|
34
|
-
get: function () {
|
|
35
|
-
return "Default";
|
|
36
|
-
},
|
|
37
|
-
enumerable: false,
|
|
38
|
-
configurable: true
|
|
39
|
-
});
|
|
40
|
-
Object.defineProperty(DefaultBehavior.prototype, "followBehavior", {
|
|
41
|
-
/**
|
|
42
|
-
* The follow behavior
|
|
43
|
-
*/
|
|
44
|
-
get: function () {
|
|
45
|
-
return this._followBehavior;
|
|
46
|
-
},
|
|
47
|
-
enumerable: false,
|
|
48
|
-
configurable: true
|
|
49
|
-
});
|
|
50
|
-
Object.defineProperty(DefaultBehavior.prototype, "sixDofDragBehavior", {
|
|
51
|
-
/**
|
|
52
|
-
* The six DoF drag behavior
|
|
53
|
-
*/
|
|
54
|
-
get: function () {
|
|
55
|
-
return this._sixDofDragBehavior;
|
|
56
|
-
},
|
|
57
|
-
enumerable: false,
|
|
58
|
-
configurable: true
|
|
59
|
-
});
|
|
60
|
-
Object.defineProperty(DefaultBehavior.prototype, "surfaceMagnetismBehavior", {
|
|
61
|
-
/**
|
|
62
|
-
* The surface magnetism behavior
|
|
63
|
-
*/
|
|
64
|
-
get: function () {
|
|
65
|
-
return this._surfaceMagnetismBehavior;
|
|
66
|
-
},
|
|
67
|
-
enumerable: false,
|
|
68
|
-
configurable: true
|
|
69
|
-
});
|
|
70
|
-
/**
|
|
71
|
-
* Initializes the behavior
|
|
72
|
-
*/
|
|
73
|
-
DefaultBehavior.prototype.init = function () { };
|
|
74
|
-
/**
|
|
75
|
-
* Attaches the default behavior
|
|
76
|
-
* @param ownerMesh The top level mesh
|
|
77
|
-
* @param draggablesMeshes Descendant meshes that can be used for dragging the owner mesh
|
|
78
|
-
* @param sceneUnderstandingMeshes Meshes from the scene understanding that will be used for surface magnetism
|
|
79
|
-
*/
|
|
80
|
-
DefaultBehavior.prototype.attach = function (ownerMesh, draggablesMeshes, sceneUnderstandingMeshes) {
|
|
81
|
-
this._scene = ownerMesh.getScene();
|
|
82
|
-
this.attachedNode = ownerMesh;
|
|
83
|
-
this._addObservables();
|
|
84
|
-
// Since our observables are bound before the child behaviors', ours are called first
|
|
85
|
-
this._followBehavior.attach(ownerMesh);
|
|
86
|
-
this._sixDofDragBehavior.attach(ownerMesh);
|
|
87
|
-
this._sixDofDragBehavior.draggableMeshes = draggablesMeshes || null;
|
|
88
|
-
this._sixDofDragBehavior.faceCameraOnDragStart = true;
|
|
89
|
-
this._surfaceMagnetismBehavior.attach(ownerMesh, this._scene);
|
|
90
|
-
if (sceneUnderstandingMeshes) {
|
|
91
|
-
this._surfaceMagnetismBehavior.meshes = sceneUnderstandingMeshes;
|
|
92
|
-
}
|
|
93
|
-
// We disable this behavior because we will handle pose changing event manually with sixDofDragBehavior
|
|
94
|
-
this._surfaceMagnetismBehavior.enabled = false;
|
|
95
|
-
};
|
|
96
|
-
/**
|
|
97
|
-
* Detaches the behavior from the mesh
|
|
98
|
-
*/
|
|
99
|
-
DefaultBehavior.prototype.detach = function () {
|
|
100
|
-
this.attachedNode = null;
|
|
101
|
-
this._removeObservables();
|
|
102
|
-
this._followBehavior.detach();
|
|
103
|
-
this._sixDofDragBehavior.detach();
|
|
104
|
-
this._surfaceMagnetismBehavior.detach();
|
|
105
|
-
};
|
|
106
|
-
DefaultBehavior.prototype._addObservables = function () {
|
|
107
|
-
var _this = this;
|
|
108
|
-
this._onBeforeRenderObserver = this._scene.onBeforeRenderObservable.add(function () {
|
|
109
|
-
_this._followBehavior._enabled = !_this._sixDofDragBehavior.isMoving && _this.followBehaviorEnabled;
|
|
110
|
-
});
|
|
111
|
-
this._onDragObserver = this._sixDofDragBehavior.onDragObservable.add(function (event) {
|
|
112
|
-
_this._sixDofDragBehavior.disableMovement = _this._surfaceMagnetismBehavior.findAndUpdateTarget(event.pickInfo);
|
|
113
|
-
});
|
|
114
|
-
};
|
|
115
|
-
DefaultBehavior.prototype._removeObservables = function () {
|
|
116
|
-
this._scene.onBeforeRenderObservable.remove(this._onBeforeRenderObserver);
|
|
117
|
-
this._sixDofDragBehavior.onDragObservable.remove(this._onDragObserver);
|
|
118
|
-
};
|
|
119
|
-
return DefaultBehavior;
|
|
120
|
-
}());
|
|
121
|
-
export { DefaultBehavior };
|
|
1
|
+
import { FollowBehavior } from "@babylonjs/core/Behaviors/Meshes/followBehavior.js";
|
|
2
|
+
import { SixDofDragBehavior } from "@babylonjs/core/Behaviors/Meshes/sixDofDragBehavior.js";
|
|
3
|
+
import { SurfaceMagnetismBehavior } from "@babylonjs/core/Behaviors/Meshes/surfaceMagnetismBehavior.js";
|
|
4
|
+
/**
|
|
5
|
+
* Default behavior for 3D UI elements.
|
|
6
|
+
* Handles a FollowBehavior, SixDofBehavior and SurfaceMagnetismBehavior
|
|
7
|
+
* @since 5.0.0
|
|
8
|
+
*/
|
|
9
|
+
var DefaultBehavior = /** @class */ (function () {
|
|
10
|
+
/**
|
|
11
|
+
* Instantiates the default behavior
|
|
12
|
+
*/
|
|
13
|
+
function DefaultBehavior() {
|
|
14
|
+
/**
|
|
15
|
+
* Enables the follow behavior
|
|
16
|
+
*/
|
|
17
|
+
this.followBehaviorEnabled = false;
|
|
18
|
+
/**
|
|
19
|
+
* Enables the six DoF drag behavior
|
|
20
|
+
*/
|
|
21
|
+
this.sixDofDragBehaviorEnabled = true;
|
|
22
|
+
/**
|
|
23
|
+
* Enables the surface magnetism behavior
|
|
24
|
+
*/
|
|
25
|
+
this.surfaceMagnetismBehaviorEnabled = true;
|
|
26
|
+
this._followBehavior = new FollowBehavior();
|
|
27
|
+
this._sixDofDragBehavior = new SixDofDragBehavior();
|
|
28
|
+
this._surfaceMagnetismBehavior = new SurfaceMagnetismBehavior();
|
|
29
|
+
}
|
|
30
|
+
Object.defineProperty(DefaultBehavior.prototype, "name", {
|
|
31
|
+
/**
|
|
32
|
+
* The name of the behavior
|
|
33
|
+
*/
|
|
34
|
+
get: function () {
|
|
35
|
+
return "Default";
|
|
36
|
+
},
|
|
37
|
+
enumerable: false,
|
|
38
|
+
configurable: true
|
|
39
|
+
});
|
|
40
|
+
Object.defineProperty(DefaultBehavior.prototype, "followBehavior", {
|
|
41
|
+
/**
|
|
42
|
+
* The follow behavior
|
|
43
|
+
*/
|
|
44
|
+
get: function () {
|
|
45
|
+
return this._followBehavior;
|
|
46
|
+
},
|
|
47
|
+
enumerable: false,
|
|
48
|
+
configurable: true
|
|
49
|
+
});
|
|
50
|
+
Object.defineProperty(DefaultBehavior.prototype, "sixDofDragBehavior", {
|
|
51
|
+
/**
|
|
52
|
+
* The six DoF drag behavior
|
|
53
|
+
*/
|
|
54
|
+
get: function () {
|
|
55
|
+
return this._sixDofDragBehavior;
|
|
56
|
+
},
|
|
57
|
+
enumerable: false,
|
|
58
|
+
configurable: true
|
|
59
|
+
});
|
|
60
|
+
Object.defineProperty(DefaultBehavior.prototype, "surfaceMagnetismBehavior", {
|
|
61
|
+
/**
|
|
62
|
+
* The surface magnetism behavior
|
|
63
|
+
*/
|
|
64
|
+
get: function () {
|
|
65
|
+
return this._surfaceMagnetismBehavior;
|
|
66
|
+
},
|
|
67
|
+
enumerable: false,
|
|
68
|
+
configurable: true
|
|
69
|
+
});
|
|
70
|
+
/**
|
|
71
|
+
* Initializes the behavior
|
|
72
|
+
*/
|
|
73
|
+
DefaultBehavior.prototype.init = function () { };
|
|
74
|
+
/**
|
|
75
|
+
* Attaches the default behavior
|
|
76
|
+
* @param ownerMesh The top level mesh
|
|
77
|
+
* @param draggablesMeshes Descendant meshes that can be used for dragging the owner mesh
|
|
78
|
+
* @param sceneUnderstandingMeshes Meshes from the scene understanding that will be used for surface magnetism
|
|
79
|
+
*/
|
|
80
|
+
DefaultBehavior.prototype.attach = function (ownerMesh, draggablesMeshes, sceneUnderstandingMeshes) {
|
|
81
|
+
this._scene = ownerMesh.getScene();
|
|
82
|
+
this.attachedNode = ownerMesh;
|
|
83
|
+
this._addObservables();
|
|
84
|
+
// Since our observables are bound before the child behaviors', ours are called first
|
|
85
|
+
this._followBehavior.attach(ownerMesh);
|
|
86
|
+
this._sixDofDragBehavior.attach(ownerMesh);
|
|
87
|
+
this._sixDofDragBehavior.draggableMeshes = draggablesMeshes || null;
|
|
88
|
+
this._sixDofDragBehavior.faceCameraOnDragStart = true;
|
|
89
|
+
this._surfaceMagnetismBehavior.attach(ownerMesh, this._scene);
|
|
90
|
+
if (sceneUnderstandingMeshes) {
|
|
91
|
+
this._surfaceMagnetismBehavior.meshes = sceneUnderstandingMeshes;
|
|
92
|
+
}
|
|
93
|
+
// We disable this behavior because we will handle pose changing event manually with sixDofDragBehavior
|
|
94
|
+
this._surfaceMagnetismBehavior.enabled = false;
|
|
95
|
+
};
|
|
96
|
+
/**
|
|
97
|
+
* Detaches the behavior from the mesh
|
|
98
|
+
*/
|
|
99
|
+
DefaultBehavior.prototype.detach = function () {
|
|
100
|
+
this.attachedNode = null;
|
|
101
|
+
this._removeObservables();
|
|
102
|
+
this._followBehavior.detach();
|
|
103
|
+
this._sixDofDragBehavior.detach();
|
|
104
|
+
this._surfaceMagnetismBehavior.detach();
|
|
105
|
+
};
|
|
106
|
+
DefaultBehavior.prototype._addObservables = function () {
|
|
107
|
+
var _this = this;
|
|
108
|
+
this._onBeforeRenderObserver = this._scene.onBeforeRenderObservable.add(function () {
|
|
109
|
+
_this._followBehavior._enabled = !_this._sixDofDragBehavior.isMoving && _this.followBehaviorEnabled;
|
|
110
|
+
});
|
|
111
|
+
this._onDragObserver = this._sixDofDragBehavior.onDragObservable.add(function (event) {
|
|
112
|
+
_this._sixDofDragBehavior.disableMovement = _this._surfaceMagnetismBehavior.findAndUpdateTarget(event.pickInfo);
|
|
113
|
+
});
|
|
114
|
+
};
|
|
115
|
+
DefaultBehavior.prototype._removeObservables = function () {
|
|
116
|
+
this._scene.onBeforeRenderObservable.remove(this._onBeforeRenderObserver);
|
|
117
|
+
this._sixDofDragBehavior.onDragObservable.remove(this._onDragObserver);
|
|
118
|
+
};
|
|
119
|
+
return DefaultBehavior;
|
|
120
|
+
}());
|
|
121
|
+
export { DefaultBehavior };
|
|
122
122
|
//# sourceMappingURL=defaultBehavior.js.map
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { TransformNode } from "@babylonjs/core/Meshes/transformNode.js";
|
|
2
|
-
import { Scene } from "@babylonjs/core/scene.js";
|
|
3
|
-
import { ContentDisplay3D } from "./contentDisplay3D";
|
|
4
|
-
/**
|
|
5
|
-
* Class used as a root to all buttons
|
|
6
|
-
*/
|
|
7
|
-
export declare class AbstractButton3D extends ContentDisplay3D {
|
|
8
|
-
/**
|
|
9
|
-
* Creates a new button
|
|
10
|
-
* @param name defines the control name
|
|
11
|
-
*/
|
|
12
|
-
constructor(name?: string);
|
|
13
|
-
protected _getTypeName(): string;
|
|
14
|
-
protected _createNode(scene: Scene): TransformNode;
|
|
15
|
-
}
|
|
1
|
+
import { TransformNode } from "@babylonjs/core/Meshes/transformNode.js";
|
|
2
|
+
import { Scene } from "@babylonjs/core/scene.js";
|
|
3
|
+
import { ContentDisplay3D } from "./contentDisplay3D";
|
|
4
|
+
/**
|
|
5
|
+
* Class used as a root to all buttons
|
|
6
|
+
*/
|
|
7
|
+
export declare class AbstractButton3D extends ContentDisplay3D {
|
|
8
|
+
/**
|
|
9
|
+
* Creates a new button
|
|
10
|
+
* @param name defines the control name
|
|
11
|
+
*/
|
|
12
|
+
constructor(name?: string);
|
|
13
|
+
protected _getTypeName(): string;
|
|
14
|
+
protected _createNode(scene: Scene): TransformNode;
|
|
15
|
+
}
|
|
@@ -1,26 +1,26 @@
|
|
|
1
|
-
import { __extends } from "tslib";
|
|
2
|
-
import { TransformNode } from "@babylonjs/core/Meshes/transformNode.js";
|
|
3
|
-
import { ContentDisplay3D } from "./contentDisplay3D
|
|
4
|
-
/**
|
|
5
|
-
* Class used as a root to all buttons
|
|
6
|
-
*/
|
|
7
|
-
var AbstractButton3D = /** @class */ (function (_super) {
|
|
8
|
-
__extends(AbstractButton3D, _super);
|
|
9
|
-
/**
|
|
10
|
-
* Creates a new button
|
|
11
|
-
* @param name defines the control name
|
|
12
|
-
*/
|
|
13
|
-
function AbstractButton3D(name) {
|
|
14
|
-
return _super.call(this, name) || this;
|
|
15
|
-
}
|
|
16
|
-
AbstractButton3D.prototype._getTypeName = function () {
|
|
17
|
-
return "AbstractButton3D";
|
|
18
|
-
};
|
|
19
|
-
// Mesh association
|
|
20
|
-
AbstractButton3D.prototype._createNode = function (scene) {
|
|
21
|
-
return new TransformNode("button" + this.name, scene);
|
|
22
|
-
};
|
|
23
|
-
return AbstractButton3D;
|
|
24
|
-
}(ContentDisplay3D));
|
|
25
|
-
export { AbstractButton3D };
|
|
1
|
+
import { __extends } from "tslib";
|
|
2
|
+
import { TransformNode } from "@babylonjs/core/Meshes/transformNode.js";
|
|
3
|
+
import { ContentDisplay3D } from "./contentDisplay3D";
|
|
4
|
+
/**
|
|
5
|
+
* Class used as a root to all buttons
|
|
6
|
+
*/
|
|
7
|
+
var AbstractButton3D = /** @class */ (function (_super) {
|
|
8
|
+
__extends(AbstractButton3D, _super);
|
|
9
|
+
/**
|
|
10
|
+
* Creates a new button
|
|
11
|
+
* @param name defines the control name
|
|
12
|
+
*/
|
|
13
|
+
function AbstractButton3D(name) {
|
|
14
|
+
return _super.call(this, name) || this;
|
|
15
|
+
}
|
|
16
|
+
AbstractButton3D.prototype._getTypeName = function () {
|
|
17
|
+
return "AbstractButton3D";
|
|
18
|
+
};
|
|
19
|
+
// Mesh association
|
|
20
|
+
AbstractButton3D.prototype._createNode = function (scene) {
|
|
21
|
+
return new TransformNode("button" + this.name, scene);
|
|
22
|
+
};
|
|
23
|
+
return AbstractButton3D;
|
|
24
|
+
}(ContentDisplay3D));
|
|
25
|
+
export { AbstractButton3D };
|
|
26
26
|
//# sourceMappingURL=abstractButton3D.js.map
|
|
@@ -1,30 +1,30 @@
|
|
|
1
|
-
import { TransformNode } from "@babylonjs/core/Meshes/transformNode.js";
|
|
2
|
-
import { AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh.js";
|
|
3
|
-
import { Material } from "@babylonjs/core/Materials/material.js";
|
|
4
|
-
import { Scene } from "@babylonjs/core/scene.js";
|
|
5
|
-
import { AbstractButton3D } from "./abstractButton3D";
|
|
6
|
-
import { AdvancedDynamicTexture } from "../../2D/advancedDynamicTexture";
|
|
7
|
-
/**
|
|
8
|
-
* Class used to create a button in 3D
|
|
9
|
-
*/
|
|
10
|
-
export declare class Button3D extends AbstractButton3D {
|
|
11
|
-
/** @hidden */
|
|
12
|
-
protected _currentMaterial: Material;
|
|
13
|
-
/**
|
|
14
|
-
* Creates a new button
|
|
15
|
-
* @param name defines the control name
|
|
16
|
-
*/
|
|
17
|
-
constructor(name?: string);
|
|
18
|
-
/**
|
|
19
|
-
* Apply the facade texture (created from the content property).
|
|
20
|
-
* @param facadeTexture defines the AdvancedDynamicTexture to use
|
|
21
|
-
*/
|
|
22
|
-
protected _applyFacade(facadeTexture: AdvancedDynamicTexture): void;
|
|
23
|
-
protected _getTypeName(): string;
|
|
24
|
-
protected _createNode(scene: Scene): TransformNode;
|
|
25
|
-
protected _affectMaterial(mesh: AbstractMesh): void;
|
|
26
|
-
/**
|
|
27
|
-
* Releases all associated resources
|
|
28
|
-
*/
|
|
29
|
-
dispose(): void;
|
|
30
|
-
}
|
|
1
|
+
import { TransformNode } from "@babylonjs/core/Meshes/transformNode.js";
|
|
2
|
+
import { AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh.js";
|
|
3
|
+
import { Material } from "@babylonjs/core/Materials/material.js";
|
|
4
|
+
import { Scene } from "@babylonjs/core/scene.js";
|
|
5
|
+
import { AbstractButton3D } from "./abstractButton3D";
|
|
6
|
+
import { AdvancedDynamicTexture } from "../../2D/advancedDynamicTexture";
|
|
7
|
+
/**
|
|
8
|
+
* Class used to create a button in 3D
|
|
9
|
+
*/
|
|
10
|
+
export declare class Button3D extends AbstractButton3D {
|
|
11
|
+
/** @hidden */
|
|
12
|
+
protected _currentMaterial: Material;
|
|
13
|
+
/**
|
|
14
|
+
* Creates a new button
|
|
15
|
+
* @param name defines the control name
|
|
16
|
+
*/
|
|
17
|
+
constructor(name?: string);
|
|
18
|
+
/**
|
|
19
|
+
* Apply the facade texture (created from the content property).
|
|
20
|
+
* @param facadeTexture defines the AdvancedDynamicTexture to use
|
|
21
|
+
*/
|
|
22
|
+
protected _applyFacade(facadeTexture: AdvancedDynamicTexture): void;
|
|
23
|
+
protected _getTypeName(): string;
|
|
24
|
+
protected _createNode(scene: Scene): TransformNode;
|
|
25
|
+
protected _affectMaterial(mesh: AbstractMesh): void;
|
|
26
|
+
/**
|
|
27
|
+
* Releases all associated resources
|
|
28
|
+
*/
|
|
29
|
+
dispose(): void;
|
|
30
|
+
}
|