@babylonjs/gui 5.0.0-rc.7 → 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.
Files changed (203) hide show
  1. package/2D/adtInstrumentation.d.ts +52 -52
  2. package/2D/adtInstrumentation.js +126 -126
  3. package/2D/advancedDynamicTexture.d.ts +448 -448
  4. package/2D/advancedDynamicTexture.js +1318 -1318
  5. package/2D/controls/button.d.ts +135 -135
  6. package/2D/controls/button.js +276 -276
  7. package/2D/controls/checkbox.d.ts +59 -59
  8. package/2D/controls/checkbox.js +188 -188
  9. package/2D/controls/colorpicker.d.ts +103 -103
  10. package/2D/controls/colorpicker.js +1417 -1417
  11. package/2D/controls/container.d.ts +175 -175
  12. package/2D/controls/container.js +570 -570
  13. package/2D/controls/control.d.ts +866 -866
  14. package/2D/controls/control.js +2433 -2433
  15. package/2D/controls/displayGrid.d.ts +53 -53
  16. package/2D/controls/displayGrid.js +245 -245
  17. package/2D/controls/ellipse.d.ts +21 -21
  18. package/2D/controls/ellipse.js +85 -85
  19. package/2D/controls/focusableButton.d.ts +59 -59
  20. package/2D/controls/focusableButton.js +99 -99
  21. package/2D/controls/focusableControl.d.ts +34 -34
  22. package/2D/controls/focusableControl.js +1 -1
  23. package/2D/controls/grid.d.ts +139 -139
  24. package/2D/controls/grid.js +529 -529
  25. package/2D/controls/image.d.ts +204 -204
  26. package/2D/controls/image.js +887 -887
  27. package/2D/controls/index.d.ts +29 -29
  28. package/2D/controls/index.js +29 -29
  29. package/2D/controls/inputPassword.d.ts +8 -8
  30. package/2D/controls/inputPassword.js +25 -25
  31. package/2D/controls/inputText.d.ts +201 -201
  32. package/2D/controls/inputText.js +1119 -1119
  33. package/2D/controls/line.d.ts +66 -66
  34. package/2D/controls/line.js +271 -271
  35. package/2D/controls/multiLine.d.ts +75 -75
  36. package/2D/controls/multiLine.js +262 -262
  37. package/2D/controls/radioButton.d.ts +49 -49
  38. package/2D/controls/radioButton.js +205 -205
  39. package/2D/controls/rectangle.d.ts +29 -29
  40. package/2D/controls/rectangle.js +150 -150
  41. package/2D/controls/scrollViewers/scrollViewer.d.ts +182 -182
  42. package/2D/controls/scrollViewers/scrollViewer.js +677 -677
  43. package/2D/controls/scrollViewers/scrollViewerWindow.d.ts +57 -57
  44. package/2D/controls/scrollViewers/scrollViewerWindow.js +278 -278
  45. package/2D/controls/selector.d.ts +263 -263
  46. package/2D/controls/selector.js +692 -692
  47. package/2D/controls/sliders/baseSlider.d.ts +82 -82
  48. package/2D/controls/sliders/baseSlider.js +347 -347
  49. package/2D/controls/sliders/imageBasedSlider.d.ts +49 -49
  50. package/2D/controls/sliders/imageBasedSlider.js +192 -192
  51. package/2D/controls/sliders/imageScrollBar.d.ts +65 -65
  52. package/2D/controls/sliders/imageScrollBar.js +263 -263
  53. package/2D/controls/sliders/scrollBar.d.ts +38 -38
  54. package/2D/controls/sliders/scrollBar.js +143 -143
  55. package/2D/controls/sliders/slider.d.ts +35 -35
  56. package/2D/controls/sliders/slider.js +271 -271
  57. package/2D/controls/stackPanel.d.ts +64 -64
  58. package/2D/controls/stackPanel.js +246 -246
  59. package/2D/controls/statics.d.ts +6 -6
  60. package/2D/controls/statics.js +49 -49
  61. package/2D/controls/textBlock.d.ts +175 -175
  62. package/2D/controls/textBlock.js +603 -603
  63. package/2D/controls/textWrapper.d.ts +13 -13
  64. package/2D/controls/textWrapper.js +101 -101
  65. package/2D/controls/toggleButton.d.ts +117 -117
  66. package/2D/controls/toggleButton.js +268 -268
  67. package/2D/controls/virtualKeyboard.d.ts +96 -96
  68. package/2D/controls/virtualKeyboard.js +256 -256
  69. package/2D/index.d.ts +9 -9
  70. package/2D/index.js +9 -9
  71. package/2D/math2D.d.ts +117 -117
  72. package/2D/math2D.js +221 -221
  73. package/2D/measure.d.ts +77 -77
  74. package/2D/measure.js +139 -139
  75. package/2D/multiLinePoint.d.ts +47 -47
  76. package/2D/multiLinePoint.js +127 -127
  77. package/2D/style.d.ts +46 -46
  78. package/2D/style.js +97 -97
  79. package/2D/valueAndUnit.d.ts +89 -89
  80. package/2D/valueAndUnit.js +226 -226
  81. package/2D/xmlLoader.d.ts +60 -60
  82. package/2D/xmlLoader.js +348 -348
  83. package/3D/behaviors/defaultBehavior.d.ts +73 -73
  84. package/3D/behaviors/defaultBehavior.js +121 -121
  85. package/3D/controls/abstractButton3D.d.ts +15 -15
  86. package/3D/controls/abstractButton3D.js +25 -25
  87. package/3D/controls/button3D.d.ts +30 -30
  88. package/3D/controls/button3D.js +93 -93
  89. package/3D/controls/container3D.d.ts +72 -72
  90. package/3D/controls/container3D.js +139 -139
  91. package/3D/controls/contentDisplay3D.d.ts +30 -30
  92. package/3D/controls/contentDisplay3D.js +79 -79
  93. package/3D/controls/control3D.d.ts +201 -201
  94. package/3D/controls/control3D.js +445 -445
  95. package/3D/controls/cylinderPanel.d.ts +17 -17
  96. package/3D/controls/cylinderPanel.js +66 -66
  97. package/3D/controls/handMenu.d.ts +28 -28
  98. package/3D/controls/handMenu.js +47 -47
  99. package/3D/controls/holographicBackplate.d.ts +49 -49
  100. package/3D/controls/holographicBackplate.js +120 -120
  101. package/3D/controls/holographicButton.d.ts +84 -84
  102. package/3D/controls/holographicButton.js +339 -339
  103. package/3D/controls/holographicSlate.d.ts +131 -131
  104. package/3D/controls/holographicSlate.js +431 -431
  105. package/3D/controls/index.d.ts +21 -21
  106. package/3D/controls/index.js +21 -21
  107. package/3D/controls/meshButton3D.d.ts +21 -21
  108. package/3D/controls/meshButton3D.js +62 -62
  109. package/3D/controls/nearMenu.d.ts +44 -44
  110. package/3D/controls/nearMenu.js +114 -114
  111. package/3D/controls/planePanel.d.ts +9 -9
  112. package/3D/controls/planePanel.js +36 -36
  113. package/3D/controls/scatterPanel.d.ts +18 -18
  114. package/3D/controls/scatterPanel.js +108 -108
  115. package/3D/controls/slider3D.d.ts +81 -81
  116. package/3D/controls/slider3D.js +268 -268
  117. package/3D/controls/spherePanel.d.ts +17 -17
  118. package/3D/controls/spherePanel.js +67 -67
  119. package/3D/controls/stackPanel3D.d.ts +22 -22
  120. package/3D/controls/stackPanel3D.js +107 -107
  121. package/3D/controls/touchButton3D.d.ts +80 -80
  122. package/3D/controls/touchButton3D.js +233 -233
  123. package/3D/controls/touchHolographicButton.d.ts +110 -110
  124. package/3D/controls/touchHolographicButton.js +445 -445
  125. package/3D/controls/touchHolographicMenu.d.ts +61 -61
  126. package/3D/controls/touchHolographicMenu.js +149 -149
  127. package/3D/controls/touchMeshButton3D.d.ts +21 -21
  128. package/3D/controls/touchMeshButton3D.js +62 -62
  129. package/3D/controls/volumeBasedPanel.d.ts +53 -53
  130. package/3D/controls/volumeBasedPanel.js +174 -174
  131. package/3D/gizmos/gizmoHandle.d.ts +108 -108
  132. package/3D/gizmos/gizmoHandle.js +209 -209
  133. package/3D/gizmos/index.d.ts +2 -2
  134. package/3D/gizmos/index.js +2 -2
  135. package/3D/gizmos/slateGizmo.d.ts +57 -57
  136. package/3D/gizmos/slateGizmo.js +369 -369
  137. package/3D/gui3DManager.d.ts +94 -94
  138. package/3D/gui3DManager.js +257 -257
  139. package/3D/index.d.ts +5 -5
  140. package/3D/index.js +5 -5
  141. package/3D/materials/fluent/fluentMaterial.d.ts +90 -90
  142. package/3D/materials/fluent/fluentMaterial.js +292 -292
  143. package/3D/materials/fluent/index.d.ts +1 -1
  144. package/3D/materials/fluent/index.js +1 -1
  145. package/3D/materials/fluent/shaders/fluent.fragment.d.ts +5 -5
  146. package/3D/materials/fluent/shaders/fluent.fragment.js +8 -8
  147. package/3D/materials/fluent/shaders/fluent.vertex.d.ts +5 -5
  148. package/3D/materials/fluent/shaders/fluent.vertex.js +8 -8
  149. package/3D/materials/fluentBackplate/fluentBackplateMaterial.d.ts +154 -154
  150. package/3D/materials/fluentBackplate/fluentBackplateMaterial.js +469 -469
  151. package/3D/materials/fluentBackplate/index.d.ts +1 -1
  152. package/3D/materials/fluentBackplate/index.js +1 -1
  153. package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.d.ts +5 -5
  154. package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.js +8 -8
  155. package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.d.ts +5 -5
  156. package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.js +8 -8
  157. package/3D/materials/fluentButton/fluentButtonMaterial.d.ts +189 -189
  158. package/3D/materials/fluentButton/fluentButtonMaterial.js +539 -539
  159. package/3D/materials/fluentButton/index.d.ts +1 -1
  160. package/3D/materials/fluentButton/index.js +1 -1
  161. package/3D/materials/fluentButton/shaders/fluentButton.fragment.d.ts +5 -5
  162. package/3D/materials/fluentButton/shaders/fluentButton.fragment.js +8 -8
  163. package/3D/materials/fluentButton/shaders/fluentButton.vertex.d.ts +5 -5
  164. package/3D/materials/fluentButton/shaders/fluentButton.vertex.js +8 -8
  165. package/3D/materials/fluentMaterial.d.ts +4 -4
  166. package/3D/materials/fluentMaterial.js +4 -4
  167. package/3D/materials/handle/handleMaterial.d.ts +68 -68
  168. package/3D/materials/handle/handleMaterial.js +126 -126
  169. package/3D/materials/handle/index.d.ts +1 -1
  170. package/3D/materials/handle/index.js +1 -1
  171. package/3D/materials/handle/shaders/handle.fragment.d.ts +5 -5
  172. package/3D/materials/handle/shaders/handle.fragment.js +8 -8
  173. package/3D/materials/handle/shaders/handle.vertex.d.ts +5 -5
  174. package/3D/materials/handle/shaders/handle.vertex.js +8 -8
  175. package/3D/materials/index.d.ts +5 -5
  176. package/3D/materials/index.js +5 -5
  177. package/3D/materials/mrdl/index.d.ts +3 -3
  178. package/3D/materials/mrdl/index.js +3 -3
  179. package/3D/materials/mrdl/mrdlBackplateMaterial.d.ts +147 -147
  180. package/3D/materials/mrdl/mrdlBackplateMaterial.js +436 -436
  181. package/3D/materials/mrdl/mrdlSliderBarMaterial.d.ts +333 -333
  182. package/3D/materials/mrdl/mrdlSliderBarMaterial.js +851 -851
  183. package/3D/materials/mrdl/mrdlSliderThumbMaterial.d.ts +333 -333
  184. package/3D/materials/mrdl/mrdlSliderThumbMaterial.js +851 -851
  185. package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.d.ts +5 -5
  186. package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.js +8 -8
  187. package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.d.ts +5 -5
  188. package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.js +8 -8
  189. package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.d.ts +5 -5
  190. package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.js +8 -8
  191. package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.d.ts +5 -5
  192. package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.js +8 -8
  193. package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.d.ts +5 -5
  194. package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.js +8 -8
  195. package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.d.ts +5 -5
  196. package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.js +8 -8
  197. package/3D/vector3WithInfo.d.ts +16 -16
  198. package/3D/vector3WithInfo.js +23 -23
  199. package/index.d.ts +2 -2
  200. package/index.js +2 -2
  201. package/legacy/legacy.d.ts +1 -1
  202. package/legacy/legacy.js +13 -13
  203. package/package.json +2 -2
@@ -1,17 +1,17 @@
1
- import { Vector3 } from "@babylonjs/core/Maths/math.vector.js";
2
- import { float } from "@babylonjs/core/types.js";
3
- import { VolumeBasedPanel } from "./volumeBasedPanel";
4
- import { Control3D } from "./control3D";
5
- /**
6
- * Class used to create a container panel deployed on the surface of a cylinder
7
- */
8
- export declare class CylinderPanel extends VolumeBasedPanel {
9
- private _radius;
10
- /**
11
- * Gets or sets the radius of the cylinder where to project controls (5 by default)
12
- */
13
- get radius(): float;
14
- set radius(value: float);
15
- protected _mapGridNode(control: Control3D, nodePosition: Vector3): void;
16
- private _cylindricalMapping;
17
- }
1
+ import { Vector3 } from "@babylonjs/core/Maths/math.vector.js";
2
+ import { float } from "@babylonjs/core/types.js";
3
+ import { VolumeBasedPanel } from "./volumeBasedPanel";
4
+ import { Control3D } from "./control3D";
5
+ /**
6
+ * Class used to create a container panel deployed on the surface of a cylinder
7
+ */
8
+ export declare class CylinderPanel extends VolumeBasedPanel {
9
+ private _radius;
10
+ /**
11
+ * Gets or sets the radius of the cylinder where to project controls (5 by default)
12
+ */
13
+ get radius(): float;
14
+ set radius(value: float);
15
+ protected _mapGridNode(control: Control3D, nodePosition: Vector3): void;
16
+ private _cylindricalMapping;
17
+ }
@@ -1,67 +1,67 @@
1
- import { __extends } from "tslib";
2
- import { Tools } from "@babylonjs/core/Misc/tools.js";
3
- import { Matrix, TmpVectors, Vector3 } from "@babylonjs/core/Maths/math.vector.js";
4
- import { VolumeBasedPanel } from "./volumeBasedPanel.js";
5
- import { Container3D } from "./container3D.js";
6
- import { Axis, Space } from "@babylonjs/core/Maths/math.axis.js";
7
- /**
8
- * Class used to create a container panel deployed on the surface of a cylinder
9
- */
10
- var CylinderPanel = /** @class */ (function (_super) {
11
- __extends(CylinderPanel, _super);
12
- function CylinderPanel() {
13
- var _this = _super !== null && _super.apply(this, arguments) || this;
14
- _this._radius = 5.0;
15
- return _this;
16
- }
17
- Object.defineProperty(CylinderPanel.prototype, "radius", {
18
- /**
19
- * Gets or sets the radius of the cylinder where to project controls (5 by default)
20
- */
21
- get: function () {
22
- return this._radius;
23
- },
24
- set: function (value) {
25
- var _this = this;
26
- if (this._radius === value) {
27
- return;
28
- }
29
- this._radius = value;
30
- Tools.SetImmediate(function () {
31
- _this._arrangeChildren();
32
- });
33
- },
34
- enumerable: false,
35
- configurable: true
36
- });
37
- CylinderPanel.prototype._mapGridNode = function (control, nodePosition) {
38
- var mesh = control.mesh;
39
- if (!mesh) {
40
- return;
41
- }
42
- var newPos = this._cylindricalMapping(nodePosition);
43
- control.position = newPos;
44
- switch (this.orientation) {
45
- case Container3D.FACEORIGIN_ORIENTATION:
46
- mesh.lookAt(new Vector3(2 * newPos.x, newPos.y, 2 * newPos.z));
47
- break;
48
- case Container3D.FACEORIGINREVERSED_ORIENTATION:
49
- mesh.lookAt(new Vector3(-newPos.x, newPos.y, -newPos.z));
50
- break;
51
- case Container3D.FACEFORWARD_ORIENTATION:
52
- break;
53
- case Container3D.FACEFORWARDREVERSED_ORIENTATION:
54
- mesh.rotate(Axis.Y, Math.PI, Space.LOCAL);
55
- break;
56
- }
57
- };
58
- CylinderPanel.prototype._cylindricalMapping = function (source) {
59
- var newPos = new Vector3(0, source.y, this._radius);
60
- var yAngle = source.x / this._radius;
61
- Matrix.RotationYawPitchRollToRef(yAngle, 0, 0, TmpVectors.Matrix[0]);
62
- return Vector3.TransformNormal(newPos, TmpVectors.Matrix[0]);
63
- };
64
- return CylinderPanel;
65
- }(VolumeBasedPanel));
66
- export { CylinderPanel };
1
+ import { __extends } from "tslib";
2
+ import { Tools } from "@babylonjs/core/Misc/tools.js";
3
+ import { Matrix, TmpVectors, Vector3 } from "@babylonjs/core/Maths/math.vector.js";
4
+ import { VolumeBasedPanel } from "./volumeBasedPanel";
5
+ import { Container3D } from "./container3D";
6
+ import { Axis, Space } from "@babylonjs/core/Maths/math.axis.js";
7
+ /**
8
+ * Class used to create a container panel deployed on the surface of a cylinder
9
+ */
10
+ var CylinderPanel = /** @class */ (function (_super) {
11
+ __extends(CylinderPanel, _super);
12
+ function CylinderPanel() {
13
+ var _this = _super !== null && _super.apply(this, arguments) || this;
14
+ _this._radius = 5.0;
15
+ return _this;
16
+ }
17
+ Object.defineProperty(CylinderPanel.prototype, "radius", {
18
+ /**
19
+ * Gets or sets the radius of the cylinder where to project controls (5 by default)
20
+ */
21
+ get: function () {
22
+ return this._radius;
23
+ },
24
+ set: function (value) {
25
+ var _this = this;
26
+ if (this._radius === value) {
27
+ return;
28
+ }
29
+ this._radius = value;
30
+ Tools.SetImmediate(function () {
31
+ _this._arrangeChildren();
32
+ });
33
+ },
34
+ enumerable: false,
35
+ configurable: true
36
+ });
37
+ CylinderPanel.prototype._mapGridNode = function (control, nodePosition) {
38
+ var mesh = control.mesh;
39
+ if (!mesh) {
40
+ return;
41
+ }
42
+ var newPos = this._cylindricalMapping(nodePosition);
43
+ control.position = newPos;
44
+ switch (this.orientation) {
45
+ case Container3D.FACEORIGIN_ORIENTATION:
46
+ mesh.lookAt(new Vector3(2 * newPos.x, newPos.y, 2 * newPos.z));
47
+ break;
48
+ case Container3D.FACEORIGINREVERSED_ORIENTATION:
49
+ mesh.lookAt(new Vector3(-newPos.x, newPos.y, -newPos.z));
50
+ break;
51
+ case Container3D.FACEFORWARD_ORIENTATION:
52
+ break;
53
+ case Container3D.FACEFORWARDREVERSED_ORIENTATION:
54
+ mesh.rotate(Axis.Y, Math.PI, Space.LOCAL);
55
+ break;
56
+ }
57
+ };
58
+ CylinderPanel.prototype._cylindricalMapping = function (source) {
59
+ var newPos = new Vector3(0, source.y, this._radius);
60
+ var yAngle = source.x / this._radius;
61
+ Matrix.RotationYawPitchRollToRef(yAngle, 0, 0, TmpVectors.Matrix[0]);
62
+ return Vector3.TransformNormal(newPos, TmpVectors.Matrix[0]);
63
+ };
64
+ return CylinderPanel;
65
+ }(VolumeBasedPanel));
66
+ export { CylinderPanel };
67
67
  //# sourceMappingURL=cylinderPanel.js.map
@@ -1,28 +1,28 @@
1
- import { Scene } from "@babylonjs/core/scene.js";
2
- import { TransformNode } from "@babylonjs/core/Meshes/transformNode.js";
3
- import { Nullable } from "@babylonjs/core/types.js";
4
- import { TouchHolographicMenu } from "./touchHolographicMenu";
5
- import { HandConstraintBehavior } from "@babylonjs/core/Behaviors/Meshes/handConstraintBehavior.js";
6
- import { WebXRExperienceHelper } from "@babylonjs/core/XR/webXRExperienceHelper.js";
7
- /**
8
- * Hand menu that displays buttons and floats around the hand.
9
- * @since 5.0.0
10
- */
11
- export declare class HandMenu extends TouchHolographicMenu {
12
- private _handConstraintBehavior;
13
- /**
14
- * The hand constraint behavior setting the transformation of this node
15
- */
16
- get handConstraintBehavior(): HandConstraintBehavior;
17
- protected _createNode(scene: Scene): Nullable<TransformNode>;
18
- /**
19
- * Creates a hand menu GUI 3D control
20
- * @param xr the WebXRExperienceHelper used to link this control to the enabled WebXRHandTracking feature
21
- * @param name name of the hand menu
22
- */
23
- constructor(xr: WebXRExperienceHelper, name?: string);
24
- /**
25
- * Disposes the hand menu
26
- */
27
- dispose(): void;
28
- }
1
+ import { Scene } from "@babylonjs/core/scene.js";
2
+ import { TransformNode } from "@babylonjs/core/Meshes/transformNode.js";
3
+ import { Nullable } from "@babylonjs/core/types.js";
4
+ import { TouchHolographicMenu } from "./touchHolographicMenu";
5
+ import { HandConstraintBehavior } from "@babylonjs/core/Behaviors/Meshes/handConstraintBehavior.js";
6
+ import { WebXRExperienceHelper } from "@babylonjs/core/XR/webXRExperienceHelper.js";
7
+ /**
8
+ * Hand menu that displays buttons and floats around the hand.
9
+ * @since 5.0.0
10
+ */
11
+ export declare class HandMenu extends TouchHolographicMenu {
12
+ private _handConstraintBehavior;
13
+ /**
14
+ * The hand constraint behavior setting the transformation of this node
15
+ */
16
+ get handConstraintBehavior(): HandConstraintBehavior;
17
+ protected _createNode(scene: Scene): Nullable<TransformNode>;
18
+ /**
19
+ * Creates a hand menu GUI 3D control
20
+ * @param xr the WebXRExperienceHelper used to link this control to the enabled WebXRHandTracking feature
21
+ * @param name name of the hand menu
22
+ */
23
+ constructor(xr: WebXRExperienceHelper, name?: string);
24
+ /**
25
+ * Disposes the hand menu
26
+ */
27
+ dispose(): void;
28
+ }
@@ -1,48 +1,48 @@
1
- import { __extends } from "tslib";
2
- import { TouchHolographicMenu } from "./touchHolographicMenu.js";
3
- import { HandConstraintBehavior } from "@babylonjs/core/Behaviors/Meshes/handConstraintBehavior.js";
4
- /**
5
- * Hand menu that displays buttons and floats around the hand.
6
- * @since 5.0.0
7
- */
8
- var HandMenu = /** @class */ (function (_super) {
9
- __extends(HandMenu, _super);
10
- /**
11
- * Creates a hand menu GUI 3D control
12
- * @param xr the WebXRExperienceHelper used to link this control to the enabled WebXRHandTracking feature
13
- * @param name name of the hand menu
14
- */
15
- function HandMenu(xr, name) {
16
- var _this = _super.call(this, name) || this;
17
- _this._handConstraintBehavior = new HandConstraintBehavior();
18
- _this._handConstraintBehavior.linkToXRExperience(xr);
19
- _this.backPlateMargin = 0.15;
20
- _this.rows = 3;
21
- return _this;
22
- }
23
- Object.defineProperty(HandMenu.prototype, "handConstraintBehavior", {
24
- /**
25
- * The hand constraint behavior setting the transformation of this node
26
- */
27
- get: function () {
28
- return this._handConstraintBehavior;
29
- },
30
- enumerable: false,
31
- configurable: true
32
- });
33
- HandMenu.prototype._createNode = function (scene) {
34
- var node = _super.prototype._createNode.call(this, scene);
35
- this._handConstraintBehavior.attach(node);
36
- return node;
37
- };
38
- /**
39
- * Disposes the hand menu
40
- */
41
- HandMenu.prototype.dispose = function () {
42
- _super.prototype.dispose.call(this);
43
- this._handConstraintBehavior.detach();
44
- };
45
- return HandMenu;
46
- }(TouchHolographicMenu));
47
- export { HandMenu };
1
+ import { __extends } from "tslib";
2
+ import { TouchHolographicMenu } from "./touchHolographicMenu";
3
+ import { HandConstraintBehavior } from "@babylonjs/core/Behaviors/Meshes/handConstraintBehavior.js";
4
+ /**
5
+ * Hand menu that displays buttons and floats around the hand.
6
+ * @since 5.0.0
7
+ */
8
+ var HandMenu = /** @class */ (function (_super) {
9
+ __extends(HandMenu, _super);
10
+ /**
11
+ * Creates a hand menu GUI 3D control
12
+ * @param xr the WebXRExperienceHelper used to link this control to the enabled WebXRHandTracking feature
13
+ * @param name name of the hand menu
14
+ */
15
+ function HandMenu(xr, name) {
16
+ var _this = _super.call(this, name) || this;
17
+ _this._handConstraintBehavior = new HandConstraintBehavior();
18
+ _this._handConstraintBehavior.linkToXRExperience(xr);
19
+ _this.backPlateMargin = 0.15;
20
+ _this.rows = 3;
21
+ return _this;
22
+ }
23
+ Object.defineProperty(HandMenu.prototype, "handConstraintBehavior", {
24
+ /**
25
+ * The hand constraint behavior setting the transformation of this node
26
+ */
27
+ get: function () {
28
+ return this._handConstraintBehavior;
29
+ },
30
+ enumerable: false,
31
+ configurable: true
32
+ });
33
+ HandMenu.prototype._createNode = function (scene) {
34
+ var node = _super.prototype._createNode.call(this, scene);
35
+ this._handConstraintBehavior.attach(node);
36
+ return node;
37
+ };
38
+ /**
39
+ * Disposes the hand menu
40
+ */
41
+ HandMenu.prototype.dispose = function () {
42
+ _super.prototype.dispose.call(this);
43
+ this._handConstraintBehavior.detach();
44
+ };
45
+ return HandMenu;
46
+ }(TouchHolographicMenu));
47
+ export { HandMenu };
48
48
  //# sourceMappingURL=handMenu.js.map
@@ -1,49 +1,49 @@
1
- import { TransformNode } from "@babylonjs/core/Meshes/transformNode.js";
2
- import { Mesh } from "@babylonjs/core/Meshes/mesh.js";
3
- import { Scene } from "@babylonjs/core/scene.js";
4
- import { FluentBackplateMaterial } from "../materials/fluentBackplate/fluentBackplateMaterial";
5
- import { Control3D } from "./control3D";
6
- /**
7
- * Class used to create a holographic backplate in 3D
8
- * @since 5.0.0
9
- */
10
- export declare class HolographicBackplate extends Control3D {
11
- private _shareMaterials;
12
- /**
13
- * Base Url for the button model.
14
- */
15
- static MODEL_BASE_URL: string;
16
- /**
17
- * File name for the button model.
18
- */
19
- static MODEL_FILENAME: string;
20
- private _model;
21
- private _material;
22
- /**
23
- * Rendering ground id of the backplate mesh.
24
- */
25
- set renderingGroupId(id: number);
26
- get renderingGroupId(): number;
27
- /**
28
- * Gets the material used by the backplate
29
- */
30
- get material(): FluentBackplateMaterial;
31
- /**
32
- * Gets a boolean indicating if this backplate shares its material with other HolographicBackplates
33
- */
34
- get shareMaterials(): boolean;
35
- /**
36
- * Creates a new holographic backplate
37
- * @param name defines the control name
38
- * @param _shareMaterials
39
- */
40
- constructor(name?: string, _shareMaterials?: boolean);
41
- protected _getTypeName(): string;
42
- protected _createNode(scene: Scene): TransformNode;
43
- private _createMaterial;
44
- protected _affectMaterial(mesh: Mesh): void;
45
- /**
46
- * Releases all associated resources
47
- */
48
- dispose(): void;
49
- }
1
+ import { TransformNode } from "@babylonjs/core/Meshes/transformNode.js";
2
+ import { Mesh } from "@babylonjs/core/Meshes/mesh.js";
3
+ import { Scene } from "@babylonjs/core/scene.js";
4
+ import { FluentBackplateMaterial } from "../materials/fluentBackplate/fluentBackplateMaterial";
5
+ import { Control3D } from "./control3D";
6
+ /**
7
+ * Class used to create a holographic backplate in 3D
8
+ * @since 5.0.0
9
+ */
10
+ export declare class HolographicBackplate extends Control3D {
11
+ private _shareMaterials;
12
+ /**
13
+ * Base Url for the button model.
14
+ */
15
+ static MODEL_BASE_URL: string;
16
+ /**
17
+ * File name for the button model.
18
+ */
19
+ static MODEL_FILENAME: string;
20
+ private _model;
21
+ private _material;
22
+ /**
23
+ * Rendering ground id of the backplate mesh.
24
+ */
25
+ set renderingGroupId(id: number);
26
+ get renderingGroupId(): number;
27
+ /**
28
+ * Gets the material used by the backplate
29
+ */
30
+ get material(): FluentBackplateMaterial;
31
+ /**
32
+ * Gets a boolean indicating if this backplate shares its material with other HolographicBackplates
33
+ */
34
+ get shareMaterials(): boolean;
35
+ /**
36
+ * Creates a new holographic backplate
37
+ * @param name defines the control name
38
+ * @param _shareMaterials
39
+ */
40
+ constructor(name?: string, _shareMaterials?: boolean);
41
+ protected _getTypeName(): string;
42
+ protected _createNode(scene: Scene): TransformNode;
43
+ private _createMaterial;
44
+ protected _affectMaterial(mesh: Mesh): void;
45
+ /**
46
+ * Releases all associated resources
47
+ */
48
+ dispose(): void;
49
+ }
@@ -1,121 +1,121 @@
1
- import { __extends } from "tslib";
2
- import { CreateBox } from "@babylonjs/core/Meshes/Builders/boxBuilder.js";
3
- import { FluentBackplateMaterial } from "../materials/fluentBackplate/fluentBackplateMaterial.js";
4
- import { Control3D } from "./control3D.js";
5
- import { SceneLoader } from "@babylonjs/core/Loading/sceneLoader.js";
6
- /**
7
- * Class used to create a holographic backplate in 3D
8
- * @since 5.0.0
9
- */
10
- var HolographicBackplate = /** @class */ (function (_super) {
11
- __extends(HolographicBackplate, _super);
12
- /**
13
- * Creates a new holographic backplate
14
- * @param name defines the control name
15
- * @param _shareMaterials
16
- */
17
- function HolographicBackplate(name, _shareMaterials) {
18
- if (_shareMaterials === void 0) { _shareMaterials = true; }
19
- var _this = _super.call(this, name) || this;
20
- _this._shareMaterials = _shareMaterials;
21
- return _this;
22
- }
23
- Object.defineProperty(HolographicBackplate.prototype, "renderingGroupId", {
24
- get: function () {
25
- return this._model.renderingGroupId;
26
- },
27
- /**
28
- * Rendering ground id of the backplate mesh.
29
- */
30
- set: function (id) {
31
- this._model.renderingGroupId = id;
32
- },
33
- enumerable: false,
34
- configurable: true
35
- });
36
- Object.defineProperty(HolographicBackplate.prototype, "material", {
37
- /**
38
- * Gets the material used by the backplate
39
- */
40
- get: function () {
41
- return this._material;
42
- },
43
- enumerable: false,
44
- configurable: true
45
- });
46
- Object.defineProperty(HolographicBackplate.prototype, "shareMaterials", {
47
- /**
48
- * Gets a boolean indicating if this backplate shares its material with other HolographicBackplates
49
- */
50
- get: function () {
51
- return this._shareMaterials;
52
- },
53
- enumerable: false,
54
- configurable: true
55
- });
56
- HolographicBackplate.prototype._getTypeName = function () {
57
- return "HolographicBackplate";
58
- };
59
- // Mesh association
60
- HolographicBackplate.prototype._createNode = function (scene) {
61
- var _this = this;
62
- var _a;
63
- var collisionMesh = CreateBox(((_a = this.name) !== null && _a !== void 0 ? _a : "HolographicBackplate") + "_CollisionMesh", {
64
- width: 1.0,
65
- height: 1.0,
66
- depth: 1.0,
67
- }, scene);
68
- collisionMesh.isPickable = true;
69
- collisionMesh.visibility = 0;
70
- SceneLoader.ImportMeshAsync(undefined, HolographicBackplate.MODEL_BASE_URL, HolographicBackplate.MODEL_FILENAME, scene).then(function (result) {
71
- var importedModel = result.meshes[1];
72
- importedModel.name = "".concat(_this.name, "_frontPlate");
73
- importedModel.isPickable = false;
74
- importedModel.parent = collisionMesh;
75
- if (_this._material) {
76
- importedModel.material = _this._material;
77
- }
78
- _this._model = importedModel;
79
- });
80
- return collisionMesh;
81
- };
82
- HolographicBackplate.prototype._createMaterial = function (mesh) {
83
- this._material = new FluentBackplateMaterial(this.name + " Material", mesh.getScene());
84
- };
85
- HolographicBackplate.prototype._affectMaterial = function (mesh) {
86
- // Back
87
- if (this._shareMaterials) {
88
- if (!this._host._touchSharedMaterials["fluentBackplateMaterial"]) {
89
- this._createMaterial(mesh);
90
- this._host._touchSharedMaterials["fluentBackplateMaterial"] = this._material;
91
- }
92
- else {
93
- this._material = this._host._touchSharedMaterials["fluentBackplateMaterial"];
94
- }
95
- }
96
- else {
97
- this._createMaterial(mesh);
98
- }
99
- };
100
- /**
101
- * Releases all associated resources
102
- */
103
- HolographicBackplate.prototype.dispose = function () {
104
- _super.prototype.dispose.call(this); // will dispose main mesh ie. back plate
105
- if (!this.shareMaterials) {
106
- this._material.dispose();
107
- }
108
- this._model.dispose();
109
- };
110
- /**
111
- * Base Url for the button model.
112
- */
113
- HolographicBackplate.MODEL_BASE_URL = "https://assets.babylonjs.com/meshes/MRTK/";
114
- /**
115
- * File name for the button model.
116
- */
117
- HolographicBackplate.MODEL_FILENAME = "mrtk-fluent-backplate.glb";
118
- return HolographicBackplate;
119
- }(Control3D));
120
- export { HolographicBackplate };
1
+ import { __extends } from "tslib";
2
+ import { CreateBox } from "@babylonjs/core/Meshes/Builders/boxBuilder.js";
3
+ import { FluentBackplateMaterial } from "../materials/fluentBackplate/fluentBackplateMaterial";
4
+ import { Control3D } from "./control3D";
5
+ import { SceneLoader } from "@babylonjs/core/Loading/sceneLoader.js";
6
+ /**
7
+ * Class used to create a holographic backplate in 3D
8
+ * @since 5.0.0
9
+ */
10
+ var HolographicBackplate = /** @class */ (function (_super) {
11
+ __extends(HolographicBackplate, _super);
12
+ /**
13
+ * Creates a new holographic backplate
14
+ * @param name defines the control name
15
+ * @param _shareMaterials
16
+ */
17
+ function HolographicBackplate(name, _shareMaterials) {
18
+ if (_shareMaterials === void 0) { _shareMaterials = true; }
19
+ var _this = _super.call(this, name) || this;
20
+ _this._shareMaterials = _shareMaterials;
21
+ return _this;
22
+ }
23
+ Object.defineProperty(HolographicBackplate.prototype, "renderingGroupId", {
24
+ get: function () {
25
+ return this._model.renderingGroupId;
26
+ },
27
+ /**
28
+ * Rendering ground id of the backplate mesh.
29
+ */
30
+ set: function (id) {
31
+ this._model.renderingGroupId = id;
32
+ },
33
+ enumerable: false,
34
+ configurable: true
35
+ });
36
+ Object.defineProperty(HolographicBackplate.prototype, "material", {
37
+ /**
38
+ * Gets the material used by the backplate
39
+ */
40
+ get: function () {
41
+ return this._material;
42
+ },
43
+ enumerable: false,
44
+ configurable: true
45
+ });
46
+ Object.defineProperty(HolographicBackplate.prototype, "shareMaterials", {
47
+ /**
48
+ * Gets a boolean indicating if this backplate shares its material with other HolographicBackplates
49
+ */
50
+ get: function () {
51
+ return this._shareMaterials;
52
+ },
53
+ enumerable: false,
54
+ configurable: true
55
+ });
56
+ HolographicBackplate.prototype._getTypeName = function () {
57
+ return "HolographicBackplate";
58
+ };
59
+ // Mesh association
60
+ HolographicBackplate.prototype._createNode = function (scene) {
61
+ var _this = this;
62
+ var _a;
63
+ var collisionMesh = CreateBox(((_a = this.name) !== null && _a !== void 0 ? _a : "HolographicBackplate") + "_CollisionMesh", {
64
+ width: 1.0,
65
+ height: 1.0,
66
+ depth: 1.0,
67
+ }, scene);
68
+ collisionMesh.isPickable = true;
69
+ collisionMesh.visibility = 0;
70
+ SceneLoader.ImportMeshAsync(undefined, HolographicBackplate.MODEL_BASE_URL, HolographicBackplate.MODEL_FILENAME, scene).then(function (result) {
71
+ var importedModel = result.meshes[1];
72
+ importedModel.name = "".concat(_this.name, "_frontPlate");
73
+ importedModel.isPickable = false;
74
+ importedModel.parent = collisionMesh;
75
+ if (_this._material) {
76
+ importedModel.material = _this._material;
77
+ }
78
+ _this._model = importedModel;
79
+ });
80
+ return collisionMesh;
81
+ };
82
+ HolographicBackplate.prototype._createMaterial = function (mesh) {
83
+ this._material = new FluentBackplateMaterial(this.name + " Material", mesh.getScene());
84
+ };
85
+ HolographicBackplate.prototype._affectMaterial = function (mesh) {
86
+ // Back
87
+ if (this._shareMaterials) {
88
+ if (!this._host._touchSharedMaterials["fluentBackplateMaterial"]) {
89
+ this._createMaterial(mesh);
90
+ this._host._touchSharedMaterials["fluentBackplateMaterial"] = this._material;
91
+ }
92
+ else {
93
+ this._material = this._host._touchSharedMaterials["fluentBackplateMaterial"];
94
+ }
95
+ }
96
+ else {
97
+ this._createMaterial(mesh);
98
+ }
99
+ };
100
+ /**
101
+ * Releases all associated resources
102
+ */
103
+ HolographicBackplate.prototype.dispose = function () {
104
+ _super.prototype.dispose.call(this); // will dispose main mesh ie. back plate
105
+ if (!this.shareMaterials) {
106
+ this._material.dispose();
107
+ }
108
+ this._model.dispose();
109
+ };
110
+ /**
111
+ * Base Url for the button model.
112
+ */
113
+ HolographicBackplate.MODEL_BASE_URL = "https://assets.babylonjs.com/meshes/MRTK/";
114
+ /**
115
+ * File name for the button model.
116
+ */
117
+ HolographicBackplate.MODEL_FILENAME = "mrtk-fluent-backplate.glb";
118
+ return HolographicBackplate;
119
+ }(Control3D));
120
+ export { HolographicBackplate };
121
121
  //# sourceMappingURL=holographicBackplate.js.map