@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.
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,30 +1,30 @@
1
- import { Control } from "../../2D/controls/control";
2
- import { AdvancedDynamicTexture } from "../../2D/advancedDynamicTexture";
3
- import { Control3D } from "./control3D";
4
- /**
5
- * The base class for controls that display content
6
- */
7
- export declare class ContentDisplay3D extends Control3D {
8
- private _content;
9
- private _facadeTexture;
10
- protected _contentResolution: number;
11
- protected _contentScaleRatio: number;
12
- /**
13
- * Gets or sets the GUI 2D content used to display the button's facade
14
- */
15
- get content(): Control;
16
- set content(value: Control);
17
- /**
18
- * Gets or sets the texture resolution used to render content (512 by default)
19
- */
20
- get contentResolution(): number;
21
- set contentResolution(value: number);
22
- protected _disposeFacadeTexture(): void;
23
- protected _resetContent(): void;
24
- /**
25
- * Apply the facade texture (created from the content property).
26
- * This function can be overloaded by child classes
27
- * @param facadeTexture defines the AdvancedDynamicTexture to use
28
- */
29
- protected _applyFacade(facadeTexture: AdvancedDynamicTexture): void;
30
- }
1
+ import { Control } from "../../2D/controls/control";
2
+ import { AdvancedDynamicTexture } from "../../2D/advancedDynamicTexture";
3
+ import { Control3D } from "./control3D";
4
+ /**
5
+ * The base class for controls that display content
6
+ */
7
+ export declare class ContentDisplay3D extends Control3D {
8
+ private _content;
9
+ private _facadeTexture;
10
+ protected _contentResolution: number;
11
+ protected _contentScaleRatio: number;
12
+ /**
13
+ * Gets or sets the GUI 2D content used to display the button's facade
14
+ */
15
+ get content(): Control;
16
+ set content(value: Control);
17
+ /**
18
+ * Gets or sets the texture resolution used to render content (512 by default)
19
+ */
20
+ get contentResolution(): number;
21
+ set contentResolution(value: number);
22
+ protected _disposeFacadeTexture(): void;
23
+ protected _resetContent(): void;
24
+ /**
25
+ * Apply the facade texture (created from the content property).
26
+ * This function can be overloaded by child classes
27
+ * @param facadeTexture defines the AdvancedDynamicTexture to use
28
+ */
29
+ protected _applyFacade(facadeTexture: AdvancedDynamicTexture): void;
30
+ }
@@ -1,80 +1,80 @@
1
- import { __extends } from "tslib";
2
- import { AdvancedDynamicTexture } from "../../2D/advancedDynamicTexture.js";
3
- import { Control3D } from "./control3D.js";
4
- import { Texture } from "@babylonjs/core/Materials/Textures/texture.js";
5
- /**
6
- * The base class for controls that display content
7
- */
8
- var ContentDisplay3D = /** @class */ (function (_super) {
9
- __extends(ContentDisplay3D, _super);
10
- function ContentDisplay3D() {
11
- var _this = _super !== null && _super.apply(this, arguments) || this;
12
- _this._contentResolution = 512;
13
- _this._contentScaleRatio = 2;
14
- return _this;
15
- }
16
- Object.defineProperty(ContentDisplay3D.prototype, "content", {
17
- /**
18
- * Gets or sets the GUI 2D content used to display the button's facade
19
- */
20
- get: function () {
21
- return this._content;
22
- },
23
- set: function (value) {
24
- this._content = value;
25
- if (!value || !this._host || !this._host.utilityLayer) {
26
- return;
27
- }
28
- if (!this._facadeTexture) {
29
- this._facadeTexture = new AdvancedDynamicTexture("Facade", this._contentResolution, this._contentResolution, this._host.utilityLayer.utilityLayerScene, true, Texture.TRILINEAR_SAMPLINGMODE);
30
- this._facadeTexture.rootContainer.scaleX = this._contentScaleRatio;
31
- this._facadeTexture.rootContainer.scaleY = this._contentScaleRatio;
32
- this._facadeTexture.premulAlpha = true;
33
- }
34
- else {
35
- this._facadeTexture.rootContainer.clearControls();
36
- }
37
- this._facadeTexture.addControl(value);
38
- this._applyFacade(this._facadeTexture);
39
- },
40
- enumerable: false,
41
- configurable: true
42
- });
43
- Object.defineProperty(ContentDisplay3D.prototype, "contentResolution", {
44
- /**
45
- * Gets or sets the texture resolution used to render content (512 by default)
46
- */
47
- get: function () {
48
- return this._contentResolution;
49
- },
50
- set: function (value) {
51
- if (this._contentResolution === value) {
52
- return;
53
- }
54
- this._contentResolution = value;
55
- this._resetContent();
56
- },
57
- enumerable: false,
58
- configurable: true
59
- });
60
- ContentDisplay3D.prototype._disposeFacadeTexture = function () {
61
- if (this._facadeTexture) {
62
- this._facadeTexture.dispose();
63
- this._facadeTexture = null;
64
- }
65
- };
66
- ContentDisplay3D.prototype._resetContent = function () {
67
- this._disposeFacadeTexture();
68
- this.content = this._content;
69
- };
70
- /**
71
- * Apply the facade texture (created from the content property).
72
- * This function can be overloaded by child classes
73
- * @param facadeTexture defines the AdvancedDynamicTexture to use
74
- */
75
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
76
- ContentDisplay3D.prototype._applyFacade = function (facadeTexture) { };
77
- return ContentDisplay3D;
78
- }(Control3D));
79
- export { ContentDisplay3D };
1
+ import { __extends } from "tslib";
2
+ import { AdvancedDynamicTexture } from "../../2D/advancedDynamicTexture";
3
+ import { Control3D } from "./control3D";
4
+ import { Texture } from "@babylonjs/core/Materials/Textures/texture.js";
5
+ /**
6
+ * The base class for controls that display content
7
+ */
8
+ var ContentDisplay3D = /** @class */ (function (_super) {
9
+ __extends(ContentDisplay3D, _super);
10
+ function ContentDisplay3D() {
11
+ var _this = _super !== null && _super.apply(this, arguments) || this;
12
+ _this._contentResolution = 512;
13
+ _this._contentScaleRatio = 2;
14
+ return _this;
15
+ }
16
+ Object.defineProperty(ContentDisplay3D.prototype, "content", {
17
+ /**
18
+ * Gets or sets the GUI 2D content used to display the button's facade
19
+ */
20
+ get: function () {
21
+ return this._content;
22
+ },
23
+ set: function (value) {
24
+ this._content = value;
25
+ if (!value || !this._host || !this._host.utilityLayer) {
26
+ return;
27
+ }
28
+ if (!this._facadeTexture) {
29
+ this._facadeTexture = new AdvancedDynamicTexture("Facade", this._contentResolution, this._contentResolution, this._host.utilityLayer.utilityLayerScene, true, Texture.TRILINEAR_SAMPLINGMODE);
30
+ this._facadeTexture.rootContainer.scaleX = this._contentScaleRatio;
31
+ this._facadeTexture.rootContainer.scaleY = this._contentScaleRatio;
32
+ this._facadeTexture.premulAlpha = true;
33
+ }
34
+ else {
35
+ this._facadeTexture.rootContainer.clearControls();
36
+ }
37
+ this._facadeTexture.addControl(value);
38
+ this._applyFacade(this._facadeTexture);
39
+ },
40
+ enumerable: false,
41
+ configurable: true
42
+ });
43
+ Object.defineProperty(ContentDisplay3D.prototype, "contentResolution", {
44
+ /**
45
+ * Gets or sets the texture resolution used to render content (512 by default)
46
+ */
47
+ get: function () {
48
+ return this._contentResolution;
49
+ },
50
+ set: function (value) {
51
+ if (this._contentResolution === value) {
52
+ return;
53
+ }
54
+ this._contentResolution = value;
55
+ this._resetContent();
56
+ },
57
+ enumerable: false,
58
+ configurable: true
59
+ });
60
+ ContentDisplay3D.prototype._disposeFacadeTexture = function () {
61
+ if (this._facadeTexture) {
62
+ this._facadeTexture.dispose();
63
+ this._facadeTexture = null;
64
+ }
65
+ };
66
+ ContentDisplay3D.prototype._resetContent = function () {
67
+ this._disposeFacadeTexture();
68
+ this.content = this._content;
69
+ };
70
+ /**
71
+ * Apply the facade texture (created from the content property).
72
+ * This function can be overloaded by child classes
73
+ * @param facadeTexture defines the AdvancedDynamicTexture to use
74
+ */
75
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
76
+ ContentDisplay3D.prototype._applyFacade = function (facadeTexture) { };
77
+ return ContentDisplay3D;
78
+ }(Control3D));
79
+ export { ContentDisplay3D };
80
80
  //# sourceMappingURL=contentDisplay3D.js.map
@@ -1,201 +1,201 @@
1
- import { Nullable } from "@babylonjs/core/types.js";
2
- import { Observable } from "@babylonjs/core/Misc/observable.js";
3
- import { Vector3 } from "@babylonjs/core/Maths/math.vector.js";
4
- import { TransformNode } from "@babylonjs/core/Meshes/transformNode.js";
5
- import { AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh.js";
6
- import { IBehaviorAware, Behavior } from "@babylonjs/core/Behaviors/behavior.js";
7
- import { IDisposable, Scene } from "@babylonjs/core/scene.js";
8
- import { GUI3DManager } from "../gui3DManager";
9
- import { Vector3WithInfo } from "../vector3WithInfo";
10
- import { Container3D } from "./container3D";
11
- /**
12
- * Class used as base class for controls
13
- */
14
- export declare class Control3D implements IDisposable, IBehaviorAware<Control3D> {
15
- /** Defines the control name */
16
- name?: string | undefined;
17
- /** @hidden */
18
- _host: GUI3DManager;
19
- private _node;
20
- private _downCount;
21
- private _enterCount;
22
- private _downPointerIds;
23
- private _isVisible;
24
- /** @hidden */
25
- _isScaledByManager: boolean;
26
- /** Gets or sets the control position in world space */
27
- get position(): Vector3;
28
- set position(value: Vector3);
29
- /** Gets or sets the control scaling in world space */
30
- get scaling(): Vector3;
31
- set scaling(value: Vector3);
32
- /** Callback used to start pointer enter animation */
33
- pointerEnterAnimation: () => void;
34
- /** Callback used to start pointer out animation */
35
- pointerOutAnimation: () => void;
36
- /** Callback used to start pointer down animation */
37
- pointerDownAnimation: () => void;
38
- /** Callback used to start pointer up animation */
39
- pointerUpAnimation: () => void;
40
- /**
41
- * An event triggered when the pointer moves over the control
42
- */
43
- onPointerMoveObservable: Observable<Vector3>;
44
- /**
45
- * An event triggered when the pointer moves out of the control
46
- */
47
- onPointerOutObservable: Observable<Control3D>;
48
- /**
49
- * An event triggered when the pointer taps the control
50
- */
51
- onPointerDownObservable: Observable<Vector3WithInfo>;
52
- /**
53
- * An event triggered when pointer is up
54
- */
55
- onPointerUpObservable: Observable<Vector3WithInfo>;
56
- /**
57
- * An event triggered when a control is clicked on (with a mouse)
58
- */
59
- onPointerClickObservable: Observable<Vector3WithInfo>;
60
- /**
61
- * An event triggered when pointer enters the control
62
- */
63
- onPointerEnterObservable: Observable<Control3D>;
64
- /**
65
- * Gets or sets the parent container
66
- */
67
- parent: Nullable<Container3D>;
68
- private _behaviors;
69
- /**
70
- * Gets the list of attached behaviors
71
- * @see https://doc.babylonjs.com/features/behaviour
72
- */
73
- get behaviors(): Behavior<Control3D>[];
74
- /**
75
- * Attach a behavior to the control
76
- * @see https://doc.babylonjs.com/features/behaviour
77
- * @param behavior defines the behavior to attach
78
- * @returns the current control
79
- */
80
- addBehavior(behavior: Behavior<Control3D>): Control3D;
81
- /**
82
- * Remove an attached behavior
83
- * @see https://doc.babylonjs.com/features/behaviour
84
- * @param behavior defines the behavior to attach
85
- * @returns the current control
86
- */
87
- removeBehavior(behavior: Behavior<Control3D>): Control3D;
88
- /**
89
- * Gets an attached behavior by name
90
- * @param name defines the name of the behavior to look for
91
- * @see https://doc.babylonjs.com/features/behaviour
92
- * @returns null if behavior was not found else the requested behavior
93
- */
94
- getBehaviorByName(name: string): Nullable<Behavior<Control3D>>;
95
- /** Gets or sets a boolean indicating if the control is visible */
96
- get isVisible(): boolean;
97
- set isVisible(value: boolean);
98
- /**
99
- * Creates a new control
100
- * @param name defines the control name
101
- */
102
- constructor(
103
- /** Defines the control name */
104
- name?: string | undefined);
105
- /**
106
- * Gets a string representing the class name
107
- */
108
- get typeName(): string;
109
- /**
110
- * Get the current class name of the control.
111
- * @returns current class name
112
- */
113
- getClassName(): string;
114
- protected _getTypeName(): string;
115
- /**
116
- * Gets the transform node used by this control
117
- */
118
- get node(): Nullable<TransformNode>;
119
- /**
120
- * Gets the mesh used to render this control
121
- */
122
- get mesh(): Nullable<AbstractMesh>;
123
- /**
124
- * Link the control as child of the given node
125
- * @param node defines the node to link to. Use null to unlink the control
126
- * @returns the current control
127
- */
128
- linkToTransformNode(node: Nullable<TransformNode>): Control3D;
129
- /**
130
- * @param scene
131
- * @hidden*
132
- */
133
- _prepareNode(scene: Scene): void;
134
- protected _injectGUI3DReservedDataStore(node: TransformNode): any;
135
- /**
136
- * Node creation.
137
- * Can be overriden by children
138
- * @param scene defines the scene where the node must be attached
139
- * @returns the attached node or null if none. Must return a Mesh or AbstractMesh if there is an attached visible object
140
- */
141
- protected _createNode(scene: Scene): Nullable<TransformNode>;
142
- /**
143
- * Affect a material to the given mesh
144
- * @param mesh defines the mesh which will represent the control
145
- */
146
- protected _affectMaterial(mesh: AbstractMesh): void;
147
- private _isTouchButton3D;
148
- /**
149
- * @param target
150
- * @param coordinates
151
- * @hidden
152
- */
153
- _onPointerMove(target: Control3D, coordinates: Vector3): void;
154
- /**
155
- * @param target
156
- * @hidden
157
- */
158
- _onPointerEnter(target: Control3D): boolean;
159
- /**
160
- * @param target
161
- * @hidden
162
- */
163
- _onPointerOut(target: Control3D): void;
164
- /**
165
- * @param target
166
- * @param coordinates
167
- * @param pointerId
168
- * @param buttonIndex
169
- * @hidden
170
- */
171
- _onPointerDown(target: Control3D, coordinates: Vector3, pointerId: number, buttonIndex: number): boolean;
172
- /**
173
- * @param target
174
- * @param coordinates
175
- * @param pointerId
176
- * @param buttonIndex
177
- * @param notifyClick
178
- * @hidden
179
- */
180
- _onPointerUp(target: Control3D, coordinates: Vector3, pointerId: number, buttonIndex: number, notifyClick: boolean): void;
181
- /**
182
- * @param pointerId
183
- * @hidden
184
- */
185
- forcePointerUp(pointerId?: Nullable<number>): void;
186
- /**
187
- * @param type
188
- * @param pickedPoint
189
- * @param originMeshPosition
190
- * @param pointerId
191
- * @param buttonIndex
192
- * @hidden
193
- */
194
- _processObservables(type: number, pickedPoint: Vector3, originMeshPosition: Nullable<Vector3>, pointerId: number, buttonIndex: number): boolean;
195
- /** @hidden */
196
- _disposeNode(): void;
197
- /**
198
- * Releases all associated resources
199
- */
200
- dispose(): void;
201
- }
1
+ import { Nullable } from "@babylonjs/core/types.js";
2
+ import { Observable } from "@babylonjs/core/Misc/observable.js";
3
+ import { Vector3 } from "@babylonjs/core/Maths/math.vector.js";
4
+ import { TransformNode } from "@babylonjs/core/Meshes/transformNode.js";
5
+ import { AbstractMesh } from "@babylonjs/core/Meshes/abstractMesh.js";
6
+ import { IBehaviorAware, Behavior } from "@babylonjs/core/Behaviors/behavior.js";
7
+ import { IDisposable, Scene } from "@babylonjs/core/scene.js";
8
+ import { GUI3DManager } from "../gui3DManager";
9
+ import { Vector3WithInfo } from "../vector3WithInfo";
10
+ import { Container3D } from "./container3D";
11
+ /**
12
+ * Class used as base class for controls
13
+ */
14
+ export declare class Control3D implements IDisposable, IBehaviorAware<Control3D> {
15
+ /** Defines the control name */
16
+ name?: string | undefined;
17
+ /** @hidden */
18
+ _host: GUI3DManager;
19
+ private _node;
20
+ private _downCount;
21
+ private _enterCount;
22
+ private _downPointerIds;
23
+ private _isVisible;
24
+ /** @hidden */
25
+ _isScaledByManager: boolean;
26
+ /** Gets or sets the control position in world space */
27
+ get position(): Vector3;
28
+ set position(value: Vector3);
29
+ /** Gets or sets the control scaling in world space */
30
+ get scaling(): Vector3;
31
+ set scaling(value: Vector3);
32
+ /** Callback used to start pointer enter animation */
33
+ pointerEnterAnimation: () => void;
34
+ /** Callback used to start pointer out animation */
35
+ pointerOutAnimation: () => void;
36
+ /** Callback used to start pointer down animation */
37
+ pointerDownAnimation: () => void;
38
+ /** Callback used to start pointer up animation */
39
+ pointerUpAnimation: () => void;
40
+ /**
41
+ * An event triggered when the pointer moves over the control
42
+ */
43
+ onPointerMoveObservable: Observable<Vector3>;
44
+ /**
45
+ * An event triggered when the pointer moves out of the control
46
+ */
47
+ onPointerOutObservable: Observable<Control3D>;
48
+ /**
49
+ * An event triggered when the pointer taps the control
50
+ */
51
+ onPointerDownObservable: Observable<Vector3WithInfo>;
52
+ /**
53
+ * An event triggered when pointer is up
54
+ */
55
+ onPointerUpObservable: Observable<Vector3WithInfo>;
56
+ /**
57
+ * An event triggered when a control is clicked on (with a mouse)
58
+ */
59
+ onPointerClickObservable: Observable<Vector3WithInfo>;
60
+ /**
61
+ * An event triggered when pointer enters the control
62
+ */
63
+ onPointerEnterObservable: Observable<Control3D>;
64
+ /**
65
+ * Gets or sets the parent container
66
+ */
67
+ parent: Nullable<Container3D>;
68
+ private _behaviors;
69
+ /**
70
+ * Gets the list of attached behaviors
71
+ * @see https://doc.babylonjs.com/features/behaviour
72
+ */
73
+ get behaviors(): Behavior<Control3D>[];
74
+ /**
75
+ * Attach a behavior to the control
76
+ * @see https://doc.babylonjs.com/features/behaviour
77
+ * @param behavior defines the behavior to attach
78
+ * @returns the current control
79
+ */
80
+ addBehavior(behavior: Behavior<Control3D>): Control3D;
81
+ /**
82
+ * Remove an attached behavior
83
+ * @see https://doc.babylonjs.com/features/behaviour
84
+ * @param behavior defines the behavior to attach
85
+ * @returns the current control
86
+ */
87
+ removeBehavior(behavior: Behavior<Control3D>): Control3D;
88
+ /**
89
+ * Gets an attached behavior by name
90
+ * @param name defines the name of the behavior to look for
91
+ * @see https://doc.babylonjs.com/features/behaviour
92
+ * @returns null if behavior was not found else the requested behavior
93
+ */
94
+ getBehaviorByName(name: string): Nullable<Behavior<Control3D>>;
95
+ /** Gets or sets a boolean indicating if the control is visible */
96
+ get isVisible(): boolean;
97
+ set isVisible(value: boolean);
98
+ /**
99
+ * Creates a new control
100
+ * @param name defines the control name
101
+ */
102
+ constructor(
103
+ /** Defines the control name */
104
+ name?: string | undefined);
105
+ /**
106
+ * Gets a string representing the class name
107
+ */
108
+ get typeName(): string;
109
+ /**
110
+ * Get the current class name of the control.
111
+ * @returns current class name
112
+ */
113
+ getClassName(): string;
114
+ protected _getTypeName(): string;
115
+ /**
116
+ * Gets the transform node used by this control
117
+ */
118
+ get node(): Nullable<TransformNode>;
119
+ /**
120
+ * Gets the mesh used to render this control
121
+ */
122
+ get mesh(): Nullable<AbstractMesh>;
123
+ /**
124
+ * Link the control as child of the given node
125
+ * @param node defines the node to link to. Use null to unlink the control
126
+ * @returns the current control
127
+ */
128
+ linkToTransformNode(node: Nullable<TransformNode>): Control3D;
129
+ /**
130
+ * @param scene
131
+ * @hidden*
132
+ */
133
+ _prepareNode(scene: Scene): void;
134
+ protected _injectGUI3DReservedDataStore(node: TransformNode): any;
135
+ /**
136
+ * Node creation.
137
+ * Can be overriden by children
138
+ * @param scene defines the scene where the node must be attached
139
+ * @returns the attached node or null if none. Must return a Mesh or AbstractMesh if there is an attached visible object
140
+ */
141
+ protected _createNode(scene: Scene): Nullable<TransformNode>;
142
+ /**
143
+ * Affect a material to the given mesh
144
+ * @param mesh defines the mesh which will represent the control
145
+ */
146
+ protected _affectMaterial(mesh: AbstractMesh): void;
147
+ private _isTouchButton3D;
148
+ /**
149
+ * @param target
150
+ * @param coordinates
151
+ * @hidden
152
+ */
153
+ _onPointerMove(target: Control3D, coordinates: Vector3): void;
154
+ /**
155
+ * @param target
156
+ * @hidden
157
+ */
158
+ _onPointerEnter(target: Control3D): boolean;
159
+ /**
160
+ * @param target
161
+ * @hidden
162
+ */
163
+ _onPointerOut(target: Control3D): void;
164
+ /**
165
+ * @param target
166
+ * @param coordinates
167
+ * @param pointerId
168
+ * @param buttonIndex
169
+ * @hidden
170
+ */
171
+ _onPointerDown(target: Control3D, coordinates: Vector3, pointerId: number, buttonIndex: number): boolean;
172
+ /**
173
+ * @param target
174
+ * @param coordinates
175
+ * @param pointerId
176
+ * @param buttonIndex
177
+ * @param notifyClick
178
+ * @hidden
179
+ */
180
+ _onPointerUp(target: Control3D, coordinates: Vector3, pointerId: number, buttonIndex: number, notifyClick: boolean): void;
181
+ /**
182
+ * @param pointerId
183
+ * @hidden
184
+ */
185
+ forcePointerUp(pointerId?: Nullable<number>): void;
186
+ /**
187
+ * @param type
188
+ * @param pickedPoint
189
+ * @param originMeshPosition
190
+ * @param pointerId
191
+ * @param buttonIndex
192
+ * @hidden
193
+ */
194
+ _processObservables(type: number, pickedPoint: Vector3, originMeshPosition: Nullable<Vector3>, pointerId: number, buttonIndex: number): boolean;
195
+ /** @hidden */
196
+ _disposeNode(): void;
197
+ /**
198
+ * Releases all associated resources
199
+ */
200
+ dispose(): void;
201
+ }