@combeenation/3d-viewer 4.0.0-beta3 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -1
- package/dist/lib-cjs/api/classes/element.d.ts +14 -9
- package/dist/lib-cjs/api/classes/element.js +148 -87
- package/dist/lib-cjs/api/classes/element.js.map +1 -1
- package/dist/lib-cjs/api/classes/event.d.ts +15 -1
- package/dist/lib-cjs/api/classes/event.js +15 -1
- package/dist/lib-cjs/api/classes/event.js.map +1 -1
- package/dist/lib-cjs/api/classes/parameter.d.ts +101 -7
- package/dist/lib-cjs/api/classes/parameter.js +141 -21
- package/dist/lib-cjs/api/classes/parameter.js.map +1 -1
- package/dist/lib-cjs/api/classes/parameterObservable.js +11 -36
- package/dist/lib-cjs/api/classes/parameterObservable.js.map +1 -1
- package/dist/lib-cjs/api/classes/placementAnimation.d.ts +2 -2
- package/dist/lib-cjs/api/classes/placementAnimation.js +11 -0
- package/dist/lib-cjs/api/classes/placementAnimation.js.map +1 -1
- package/dist/lib-cjs/api/classes/variant.d.ts +48 -4
- package/dist/lib-cjs/api/classes/variant.js +320 -46
- package/dist/lib-cjs/api/classes/variant.js.map +1 -1
- package/dist/lib-cjs/api/classes/variantInstance.d.ts +5 -1
- package/dist/lib-cjs/api/classes/variantInstance.js +10 -0
- package/dist/lib-cjs/api/classes/variantInstance.js.map +1 -1
- package/dist/lib-cjs/api/classes/viewer.d.ts +6 -3
- package/dist/lib-cjs/api/classes/viewer.js +140 -59
- package/dist/lib-cjs/api/classes/viewer.js.map +1 -1
- package/dist/lib-cjs/api/internal/sceneSetup.d.ts +5 -1
- package/dist/lib-cjs/api/internal/sceneSetup.js +75 -71
- package/dist/lib-cjs/api/internal/sceneSetup.js.map +1 -1
- package/dist/lib-cjs/api/util/babylonHelper.d.ts +54 -4
- package/dist/lib-cjs/api/util/babylonHelper.js +160 -8
- package/dist/lib-cjs/api/util/babylonHelper.js.map +1 -1
- package/dist/lib-cjs/api/util/globalTypes.d.ts +62 -8
- package/dist/lib-cjs/api/util/resourceHelper.d.ts +13 -8
- package/dist/lib-cjs/api/util/resourceHelper.js +14 -14
- package/dist/lib-cjs/api/util/resourceHelper.js.map +1 -1
- package/dist/lib-cjs/index.d.ts +24 -22
- package/dist/lib-cjs/index.js +42 -38
- package/dist/lib-cjs/index.js.map +1 -1
- package/package.json +5 -5
- package/src/api/classes/element.ts +118 -91
- package/src/api/classes/event.ts +16 -1
- package/src/api/classes/parameter.ts +153 -22
- package/src/api/classes/parameterObservable.ts +9 -31
- package/src/api/classes/{elementParameterizable.ts → parameterizable.ts} +12 -1
- package/src/api/classes/placementAnimation.ts +10 -0
- package/src/api/classes/variant.ts +187 -40
- package/src/api/classes/variantInstance.ts +8 -1
- package/src/api/classes/variantParameterizable.ts +73 -0
- package/src/api/classes/viewer.ts +83 -17
- package/src/api/classes/viewerLight.ts +330 -0
- package/src/api/internal/sceneSetup.ts +99 -109
- package/src/api/util/babylonHelper.ts +173 -10
- package/src/api/util/globalTypes.ts +71 -10
- package/src/api/util/resourceHelper.ts +16 -16
- package/src/api/util/stringHelper.ts +26 -0
- package/src/dev.ts +3 -7
- package/src/index.ts +27 -23
- package/src/pagesconfig.json +4 -0
|
@@ -2,77 +2,77 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.sceneSetup = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
|
-
require("@babylonjs/core/Materials/Textures/Loaders/ddsTextureLoader");
|
|
6
5
|
require("@babylonjs/core/Helpers/sceneHelpers");
|
|
6
|
+
require("@babylonjs/core/Materials/Textures/Loaders/ddsTextureLoader");
|
|
7
7
|
var math_color_1 = require("@babylonjs/core/Maths/math.color");
|
|
8
8
|
var math_vector_1 = require("@babylonjs/core/Maths/math.vector");
|
|
9
|
+
var meshBuilder_1 = require("@babylonjs/core/Meshes/meshBuilder");
|
|
9
10
|
var defaultRenderingPipeline_1 = require("@babylonjs/core/PostProcesses/RenderPipeline/Pipelines/defaultRenderingPipeline");
|
|
10
11
|
var scene_1 = require("@babylonjs/core/scene");
|
|
12
|
+
var lodash_es_1 = require("lodash-es");
|
|
11
13
|
var parameter_1 = require("../classes/parameter");
|
|
12
|
-
|
|
14
|
+
/**
|
|
15
|
+
* @param scene
|
|
16
|
+
* @param name
|
|
17
|
+
* @param definition
|
|
18
|
+
*/
|
|
19
|
+
var processGround = function (scene, name, definition) {
|
|
13
20
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
14
|
-
var defaultSetup, defaultLight;
|
|
15
21
|
return tslib_1.__generator(this, function (_a) {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
22
|
+
return [2 /*return*/, new Promise(function (resolve) {
|
|
23
|
+
var _resolve = function (ground) {
|
|
24
|
+
if (definition.receiveShadows !== undefined) {
|
|
25
|
+
ground.receiveShadows = definition.receiveShadows;
|
|
26
|
+
}
|
|
27
|
+
resolve(ground);
|
|
20
28
|
};
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
29
|
+
switch (definition.type) {
|
|
30
|
+
case 'baked':
|
|
31
|
+
if (!definition.meshId) {
|
|
32
|
+
throw new Error("A baked ground must define a \"meshId\".");
|
|
33
|
+
}
|
|
34
|
+
_resolve(scene.getMeshByID(definition.meshId));
|
|
35
|
+
break;
|
|
36
|
+
case 'ground':
|
|
37
|
+
_resolve(meshBuilder_1.MeshBuilder.CreateGround(name, definition, scene));
|
|
38
|
+
break;
|
|
39
|
+
case 'heightmap':
|
|
40
|
+
if (!definition.url) {
|
|
41
|
+
throw new Error("A heightmap ground must define an \"url\".");
|
|
42
|
+
}
|
|
43
|
+
definition.onReady = function (_ground) {
|
|
44
|
+
_resolve(_ground);
|
|
45
|
+
};
|
|
46
|
+
meshBuilder_1.MeshBuilder.CreateGroundFromHeightMap(name, definition.url, definition, scene);
|
|
47
|
+
break;
|
|
48
|
+
default:
|
|
49
|
+
throw new Error("Ground of type \"" + definition.type + "\" not implemented (yet).");
|
|
41
50
|
}
|
|
42
|
-
|
|
43
|
-
case 1: return [4 /*yield*/, Promise.resolve().then(function () { return require(/* webpackChunkName: "hemispheric-light" */ '@babylonjs/core/Lights/hemisphericLight'); })];
|
|
44
|
-
case 2:
|
|
45
|
-
hemisphericLightModule = _b.sent();
|
|
46
|
-
light = new hemisphericLightModule.HemisphericLight(name, math_vector_1.Vector3.Up(), scene);
|
|
47
|
-
return [3 /*break*/, 5];
|
|
48
|
-
case 3: return [4 /*yield*/, Promise.resolve().then(function () { return require(/* webpackChunkName: "point-light" */ '@babylonjs/core/Lights/pointLight'); })];
|
|
49
|
-
case 4:
|
|
50
|
-
pointLightModule = _b.sent();
|
|
51
|
-
light = new pointLightModule.PointLight(name, math_vector_1.Vector3.Up(), scene);
|
|
52
|
-
return [3 /*break*/, 5];
|
|
53
|
-
case 5: return [2 /*return*/, light];
|
|
54
|
-
}
|
|
51
|
+
})];
|
|
55
52
|
});
|
|
56
53
|
});
|
|
57
54
|
};
|
|
55
|
+
/**
|
|
56
|
+
* @param scene
|
|
57
|
+
*/
|
|
58
58
|
var defaultCamera = function (scene) {
|
|
59
59
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
60
|
-
var cameraSetup, defaultCamera;
|
|
61
60
|
return tslib_1.__generator(this, function (_a) {
|
|
62
61
|
switch (_a.label) {
|
|
63
|
-
case 0:
|
|
64
|
-
cameraSetup = {
|
|
62
|
+
case 0: return [4 /*yield*/, processCamera(scene, 'default_camera', {
|
|
65
63
|
type: 'arc',
|
|
66
64
|
active: true,
|
|
67
|
-
};
|
|
68
|
-
|
|
69
|
-
case 1:
|
|
70
|
-
defaultCamera = _a.sent();
|
|
71
|
-
return [2 /*return*/, defaultCamera];
|
|
65
|
+
})];
|
|
66
|
+
case 1: return [2 /*return*/, _a.sent()];
|
|
72
67
|
}
|
|
73
68
|
});
|
|
74
69
|
});
|
|
75
70
|
};
|
|
71
|
+
/**
|
|
72
|
+
* @param scene
|
|
73
|
+
* @param name
|
|
74
|
+
* @param cameraSetup
|
|
75
|
+
*/
|
|
76
76
|
var processCamera = function (scene, name, cameraSetup) {
|
|
77
77
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
78
78
|
var camera, target, _a, arcCameraModule;
|
|
@@ -111,51 +111,55 @@ var processCamera = function (scene, name, cameraSetup) {
|
|
|
111
111
|
});
|
|
112
112
|
});
|
|
113
113
|
};
|
|
114
|
+
/**
|
|
115
|
+
* @param engine
|
|
116
|
+
* @param sceneJson
|
|
117
|
+
*/
|
|
114
118
|
var sceneSetup = function (engine, sceneJson) {
|
|
115
119
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
116
|
-
var scene, cameras,
|
|
120
|
+
var scene, cameras, cameraDefinitions, _a, _b, _i, cameraName, _c, _d, camera, groundDefinitions, _e, _f, _g, groundName, defaultPipeline, module_1;
|
|
117
121
|
return tslib_1.__generator(this, function (_h) {
|
|
118
122
|
switch (_h.label) {
|
|
119
123
|
case 0:
|
|
120
124
|
scene = new scene_1.Scene(engine);
|
|
121
125
|
scene.clearColor = new math_color_1.Color4(0, 0, 0, 0);
|
|
122
126
|
cameras = [];
|
|
123
|
-
|
|
124
|
-
return [
|
|
125
|
-
case 1:
|
|
126
|
-
camera = _h.sent();
|
|
127
|
-
cameras.push(camera);
|
|
128
|
-
return [3 /*break*/, 6];
|
|
129
|
-
case 2:
|
|
127
|
+
cameraDefinitions = lodash_es_1.get(sceneJson.scene, 'cameras');
|
|
128
|
+
if (!!lodash_es_1.isEmpty(cameraDefinitions)) return [3 /*break*/, 5];
|
|
130
129
|
_a = [];
|
|
131
|
-
for (_b in
|
|
130
|
+
for (_b in cameraDefinitions)
|
|
132
131
|
_a.push(_b);
|
|
133
132
|
_i = 0;
|
|
134
|
-
_h.label =
|
|
135
|
-
case
|
|
136
|
-
if (!(_i < _a.length)) return [3 /*break*/,
|
|
137
|
-
|
|
133
|
+
_h.label = 1;
|
|
134
|
+
case 1:
|
|
135
|
+
if (!(_i < _a.length)) return [3 /*break*/, 4];
|
|
136
|
+
cameraName = _a[_i];
|
|
138
137
|
_d = (_c = cameras).push;
|
|
139
|
-
return [4 /*yield*/, processCamera(scene,
|
|
140
|
-
case
|
|
138
|
+
return [4 /*yield*/, processCamera(scene, cameraName, cameraDefinitions[cameraName])];
|
|
139
|
+
case 2:
|
|
141
140
|
_d.apply(_c, [_h.sent()]);
|
|
142
|
-
_h.label =
|
|
143
|
-
case
|
|
141
|
+
_h.label = 3;
|
|
142
|
+
case 3:
|
|
144
143
|
_i++;
|
|
145
|
-
return [3 /*break*/,
|
|
144
|
+
return [3 /*break*/, 1];
|
|
145
|
+
case 4: return [3 /*break*/, 7];
|
|
146
|
+
case 5: return [4 /*yield*/, defaultCamera(scene)];
|
|
146
147
|
case 6:
|
|
147
|
-
|
|
148
|
-
|
|
148
|
+
camera = _h.sent();
|
|
149
|
+
cameras.push(camera);
|
|
150
|
+
_h.label = 7;
|
|
149
151
|
case 7:
|
|
152
|
+
groundDefinitions = lodash_es_1.get(sceneJson.scene, 'grounds');
|
|
153
|
+
if (!!lodash_es_1.isEmpty(groundDefinitions)) return [3 /*break*/, 11];
|
|
150
154
|
_e = [];
|
|
151
|
-
for (_f in
|
|
155
|
+
for (_f in groundDefinitions)
|
|
152
156
|
_e.push(_f);
|
|
153
157
|
_g = 0;
|
|
154
158
|
_h.label = 8;
|
|
155
159
|
case 8:
|
|
156
160
|
if (!(_g < _e.length)) return [3 /*break*/, 11];
|
|
157
|
-
|
|
158
|
-
return [4 /*yield*/,
|
|
161
|
+
groundName = _e[_g];
|
|
162
|
+
return [4 /*yield*/, processGround(scene, groundName, groundDefinitions[groundName])];
|
|
159
163
|
case 9:
|
|
160
164
|
_h.sent();
|
|
161
165
|
_h.label = 10;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sceneSetup.js","sourceRoot":"","sources":["../../../../src/api/internal/sceneSetup.ts"],"names":[],"mappings":";;;;AAEA,uEAAqE;AACrE
|
|
1
|
+
{"version":3,"file":"sceneSetup.js","sourceRoot":"","sources":["../../../../src/api/internal/sceneSetup.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,18 @@
|
|
|
1
1
|
import { HighlightLayer } from '@babylonjs/core/Layers/highlightLayer';
|
|
2
|
+
import { ShadowGenerator } from '@babylonjs/core/Lights/Shadows/shadowGenerator';
|
|
2
3
|
import { Material } from '@babylonjs/core/Materials/material';
|
|
3
4
|
import { Color3 } from '@babylonjs/core/Maths/math.color';
|
|
5
|
+
import { Vector3 } from '@babylonjs/core/Maths/math.vector';
|
|
4
6
|
import { AbstractMesh } from '@babylonjs/core/Meshes/abstractMesh';
|
|
5
7
|
import { TransformNode } from '@babylonjs/core/Meshes/transformNode';
|
|
6
8
|
import { Node } from '@babylonjs/core/node';
|
|
7
9
|
import { Scene } from '@babylonjs/core/scene';
|
|
8
10
|
import { DottedPath } from '../classes/dottedPath';
|
|
11
|
+
/**
|
|
12
|
+
* @param node
|
|
13
|
+
* @return Node
|
|
14
|
+
*/
|
|
15
|
+
declare const getRootNode: (node: Node) => Node;
|
|
9
16
|
/**
|
|
10
17
|
* @param nodes
|
|
11
18
|
* @param predicate
|
|
@@ -16,15 +23,18 @@ declare const mapToDottedNodes: <T>(nodes: Node[], predicate?: ((node: Node) =>
|
|
|
16
23
|
* @param node
|
|
17
24
|
* @return DottedPath
|
|
18
25
|
*/
|
|
19
|
-
declare const
|
|
26
|
+
declare const getDottedPathForNode: (node: Node) => DottedPath;
|
|
20
27
|
/**
|
|
21
|
-
*
|
|
22
28
|
* @param node
|
|
23
29
|
* @param predicate
|
|
24
30
|
* @param deep
|
|
25
31
|
* @return TransformNode | null
|
|
26
32
|
*/
|
|
27
33
|
declare const cloneTransformNode: (node: TransformNode, predicate?: ((node: TransformNode) => boolean) | undefined, deep?: boolean) => TransformNode | null;
|
|
34
|
+
/**
|
|
35
|
+
* @param node
|
|
36
|
+
*/
|
|
37
|
+
declare const cloneNodeWithParents: (node: Node | null) => Node | null;
|
|
28
38
|
/**
|
|
29
39
|
* @param node
|
|
30
40
|
* @param deep
|
|
@@ -37,7 +47,7 @@ declare const cloneTransformNodeMaterial: (node: TransformNode, prefix?: DottedP
|
|
|
37
47
|
* @param deep
|
|
38
48
|
* @param metadata
|
|
39
49
|
*/
|
|
40
|
-
declare const
|
|
50
|
+
declare const injectNodeMetadata: (node: Node, metadata: {}, deep?: boolean) => void;
|
|
41
51
|
/**
|
|
42
52
|
* @param node
|
|
43
53
|
* @param assertCallable
|
|
@@ -55,6 +65,28 @@ declare const activateTransformNode: (node: TransformNode, deep?: boolean) => vo
|
|
|
55
65
|
* @param deep
|
|
56
66
|
*/
|
|
57
67
|
declare const deactivateTransformNode: (node: TransformNode, deep?: boolean) => void;
|
|
68
|
+
/**
|
|
69
|
+
* @param node
|
|
70
|
+
*/
|
|
71
|
+
declare const enableNodeWithParents: (node: Node) => void;
|
|
72
|
+
/**
|
|
73
|
+
* @param node
|
|
74
|
+
*/
|
|
75
|
+
declare const disableNodeWithParents: (node: Node) => void;
|
|
76
|
+
/**
|
|
77
|
+
* Attention: this function mutates the position of a node. Keep in mind that there are dependencies to other
|
|
78
|
+
* functions moving nodes around.
|
|
79
|
+
* @param node
|
|
80
|
+
* @param rotation
|
|
81
|
+
*/
|
|
82
|
+
declare const rotateTransformNode: (node: TransformNode, rotation: Vector3) => TransformNode;
|
|
83
|
+
/**
|
|
84
|
+
* Attention: this function mutates the position of a node. Keep in mind that there are dependencies to other
|
|
85
|
+
* functions moving nodes around.
|
|
86
|
+
* @param node
|
|
87
|
+
* @param distance
|
|
88
|
+
*/
|
|
89
|
+
declare const moveTransformNode: (node: TransformNode, distance: Vector3) => TransformNode;
|
|
58
90
|
/**
|
|
59
91
|
* @param node
|
|
60
92
|
* @param material
|
|
@@ -115,6 +147,24 @@ declare const addToHighlightLayer: (layer: HighlightLayer, color: Color3, node:
|
|
|
115
147
|
* @param deep
|
|
116
148
|
*/
|
|
117
149
|
declare const removeFromHighlightLayer: (layer: HighlightLayer, node: TransformNode, deep?: boolean) => void;
|
|
150
|
+
/**
|
|
151
|
+
* @param node
|
|
152
|
+
* @param receiveShadows
|
|
153
|
+
* @param deep
|
|
154
|
+
*/
|
|
155
|
+
declare const setReceiveShadows: (node: TransformNode, receiveShadows: boolean, deep?: boolean) => void;
|
|
156
|
+
/**
|
|
157
|
+
* @param node
|
|
158
|
+
* @param generator
|
|
159
|
+
* @param deep
|
|
160
|
+
*/
|
|
161
|
+
declare const addToShadowGenerator: (generator: ShadowGenerator, node: TransformNode, deep?: boolean) => void;
|
|
162
|
+
/**
|
|
163
|
+
* @param node
|
|
164
|
+
* @param generator
|
|
165
|
+
* @param deep
|
|
166
|
+
*/
|
|
167
|
+
declare const removeFromShadowGenerator: (generator: ShadowGenerator, node: TransformNode, deep?: boolean) => void;
|
|
118
168
|
/**
|
|
119
169
|
* https://forum.babylonjs.com/t/get-mesh-bounding-box-position-and-size-in-2d-screen-coordinates/1058/3
|
|
120
170
|
* @param mesh
|
|
@@ -122,4 +172,4 @@ declare const removeFromHighlightLayer: (layer: HighlightLayer, node: TransformN
|
|
|
122
172
|
* @param canvas
|
|
123
173
|
*/
|
|
124
174
|
declare const getClientRectFromMesh: (mesh: AbstractMesh, scene: Scene, canvas: HTMLCanvasElement) => ClientRect;
|
|
125
|
-
export { mapToDottedNodes,
|
|
175
|
+
export { getRootNode, mapToDottedNodes, getDottedPathForNode, cloneTransformNode, cloneNodeWithParents, cloneTransformNodeMaterial, injectNodeMetadata, assertTransformNode, activateTransformNode, deactivateTransformNode, enableNodeWithParents, disableNodeWithParents, rotateTransformNode, moveTransformNode, setMaterial, setSourceNodeMaterial, setMaterialColor, setMaterialTexture, setMaterialMetallness, setMaterialRoughness, addToHighlightLayer, removeFromHighlightLayer, setReceiveShadows, addToShadowGenerator, removeFromShadowGenerator, getClientRectFromMesh };
|
|
@@ -1,12 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getClientRectFromMesh = exports.removeFromHighlightLayer = exports.addToHighlightLayer = exports.setMaterialRoughness = exports.setMaterialMetallness = exports.setMaterialTexture = exports.setMaterialColor = exports.setSourceNodeMaterial = exports.setMaterial = exports.deactivateTransformNode = exports.activateTransformNode = exports.assertTransformNode = exports.
|
|
3
|
+
exports.getClientRectFromMesh = exports.removeFromShadowGenerator = exports.addToShadowGenerator = exports.setReceiveShadows = exports.removeFromHighlightLayer = exports.addToHighlightLayer = exports.setMaterialRoughness = exports.setMaterialMetallness = exports.setMaterialTexture = exports.setMaterialColor = exports.setSourceNodeMaterial = exports.setMaterial = exports.moveTransformNode = exports.rotateTransformNode = exports.disableNodeWithParents = exports.enableNodeWithParents = exports.deactivateTransformNode = exports.activateTransformNode = exports.assertTransformNode = exports.injectNodeMetadata = exports.cloneTransformNodeMaterial = exports.cloneNodeWithParents = exports.cloneTransformNode = exports.getDottedPathForNode = exports.mapToDottedNodes = exports.getRootNode = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
|
+
var light_1 = require("@babylonjs/core/Lights/light");
|
|
6
|
+
var math_axis_1 = require("@babylonjs/core/Maths/math.axis");
|
|
5
7
|
var math_vector_1 = require("@babylonjs/core/Maths/math.vector");
|
|
6
8
|
var abstractMesh_1 = require("@babylonjs/core/Meshes/abstractMesh");
|
|
7
9
|
var instancedMesh_1 = require("@babylonjs/core/Meshes/instancedMesh");
|
|
10
|
+
var transformNode_1 = require("@babylonjs/core/Meshes/transformNode");
|
|
8
11
|
var lodash_es_1 = require("lodash-es");
|
|
9
12
|
var dottedPath_1 = require("../classes/dottedPath");
|
|
13
|
+
/**
|
|
14
|
+
* @param node
|
|
15
|
+
* @return Node
|
|
16
|
+
*/
|
|
17
|
+
var getRootNode = function (node) {
|
|
18
|
+
var _node = node;
|
|
19
|
+
while (_node.parent) {
|
|
20
|
+
_node = _node.parent;
|
|
21
|
+
}
|
|
22
|
+
return _node;
|
|
23
|
+
};
|
|
24
|
+
exports.getRootNode = getRootNode;
|
|
10
25
|
/**
|
|
11
26
|
* @param nodes
|
|
12
27
|
* @param predicate
|
|
@@ -32,7 +47,7 @@ exports.mapToDottedNodes = mapToDottedNodes;
|
|
|
32
47
|
* @param node
|
|
33
48
|
* @return DottedPath
|
|
34
49
|
*/
|
|
35
|
-
var
|
|
50
|
+
var getDottedPathForNode = function (node) {
|
|
36
51
|
var dottedPath = dottedPath_1.DottedPath.create(node.name);
|
|
37
52
|
var _parent = node;
|
|
38
53
|
while (_parent.parent) {
|
|
@@ -41,9 +56,8 @@ var getDottedPathForTransformNode = function (node) {
|
|
|
41
56
|
}
|
|
42
57
|
return dottedPath;
|
|
43
58
|
};
|
|
44
|
-
exports.
|
|
59
|
+
exports.getDottedPathForNode = getDottedPathForNode;
|
|
45
60
|
/**
|
|
46
|
-
*
|
|
47
61
|
* @param node
|
|
48
62
|
* @param predicate
|
|
49
63
|
* @param deep
|
|
@@ -70,6 +84,23 @@ var cloneTransformNode = function (node, predicate, deep) {
|
|
|
70
84
|
return clone;
|
|
71
85
|
};
|
|
72
86
|
exports.cloneTransformNode = cloneTransformNode;
|
|
87
|
+
/**
|
|
88
|
+
* @param node
|
|
89
|
+
*/
|
|
90
|
+
var cloneNodeWithParents = function (node) {
|
|
91
|
+
var clone = null;
|
|
92
|
+
if (node instanceof transformNode_1.TransformNode) {
|
|
93
|
+
clone = node.clone(node.name, cloneNodeWithParents(node.parent), true);
|
|
94
|
+
}
|
|
95
|
+
else if (node instanceof light_1.Light) {
|
|
96
|
+
clone = node.clone(node.name, cloneNodeWithParents(node.parent));
|
|
97
|
+
}
|
|
98
|
+
else if (node) {
|
|
99
|
+
throw new Error("Cloning of \"" + (node === null || node === void 0 ? void 0 : node.constructor.name) + "\" is not implemented (yet).");
|
|
100
|
+
}
|
|
101
|
+
return clone;
|
|
102
|
+
};
|
|
103
|
+
exports.cloneNodeWithParents = cloneNodeWithParents;
|
|
73
104
|
/**
|
|
74
105
|
* @param node
|
|
75
106
|
* @param deep
|
|
@@ -98,15 +129,15 @@ exports.cloneTransformNodeMaterial = cloneTransformNodeMaterial;
|
|
|
98
129
|
* @param deep
|
|
99
130
|
* @param metadata
|
|
100
131
|
*/
|
|
101
|
-
var
|
|
132
|
+
var injectNodeMetadata = function (node, metadata, deep) {
|
|
102
133
|
if (deep === void 0) { deep = true; }
|
|
103
134
|
node.metadata = lodash_es_1.merge({}, node.metadata, metadata);
|
|
104
|
-
if (deep) {
|
|
135
|
+
if (deep && node instanceof transformNode_1.TransformNode) {
|
|
105
136
|
var children = node.getChildTransformNodes(true);
|
|
106
|
-
children.forEach(function (child) { return
|
|
137
|
+
children.forEach(function (child) { return injectNodeMetadata(child, metadata, deep); });
|
|
107
138
|
}
|
|
108
139
|
};
|
|
109
|
-
exports.
|
|
140
|
+
exports.injectNodeMetadata = injectNodeMetadata;
|
|
110
141
|
/**
|
|
111
142
|
* @param node
|
|
112
143
|
* @param assertCallable
|
|
@@ -159,6 +190,80 @@ var deactivateTransformNode = function (node, deep) {
|
|
|
159
190
|
}
|
|
160
191
|
};
|
|
161
192
|
exports.deactivateTransformNode = deactivateTransformNode;
|
|
193
|
+
/**
|
|
194
|
+
* @param node
|
|
195
|
+
*/
|
|
196
|
+
var enableNodeWithParents = function (node) {
|
|
197
|
+
node.setEnabled(true);
|
|
198
|
+
if (node.parent) {
|
|
199
|
+
enableNodeWithParents(node.parent);
|
|
200
|
+
}
|
|
201
|
+
};
|
|
202
|
+
exports.enableNodeWithParents = enableNodeWithParents;
|
|
203
|
+
/**
|
|
204
|
+
* @param node
|
|
205
|
+
*/
|
|
206
|
+
var disableNodeWithParents = function (node) {
|
|
207
|
+
node.setEnabled(false);
|
|
208
|
+
if (node.parent) {
|
|
209
|
+
disableNodeWithParents(node.parent);
|
|
210
|
+
}
|
|
211
|
+
};
|
|
212
|
+
exports.disableNodeWithParents = disableNodeWithParents;
|
|
213
|
+
/**
|
|
214
|
+
* Attention: this function mutates the position of a node. Keep in mind that there are dependencies to other
|
|
215
|
+
* functions moving nodes around.
|
|
216
|
+
* @param node
|
|
217
|
+
* @param rotation
|
|
218
|
+
*/
|
|
219
|
+
var rotateTransformNode = function (node, rotation) {
|
|
220
|
+
// remember absolute rotation and reset it before translating
|
|
221
|
+
if (!lodash_es_1.has(node.metadata, 'rotation.initial')) {
|
|
222
|
+
var rotationQuaternion = node.rotationQuaternion;
|
|
223
|
+
if (!rotationQuaternion) {
|
|
224
|
+
rotationQuaternion = math_vector_1.Quaternion.RotationYawPitchRoll(node.rotation.x, node.rotation.y, node.rotation.z);
|
|
225
|
+
}
|
|
226
|
+
injectNodeMetadata(node, { 'rotation.initial': rotationQuaternion.asArray() }, false);
|
|
227
|
+
}
|
|
228
|
+
if (!lodash_es_1.has(node.metadata, 'rotation.position') || lodash_es_1.get(node.metadata, 'position.dirty')) {
|
|
229
|
+
var rotationPosition = node.absolutePosition.clone();
|
|
230
|
+
if (lodash_es_1.has(node.metadata, 'rotation.offset')) {
|
|
231
|
+
rotationPosition = rotationPosition.subtract(lodash_es_1.get(node.metadata, 'rotation.offset'));
|
|
232
|
+
}
|
|
233
|
+
injectNodeMetadata(node, { 'rotation.position': rotationPosition }, false);
|
|
234
|
+
injectNodeMetadata(node, { 'position.dirty': false }, false);
|
|
235
|
+
}
|
|
236
|
+
node.setAbsolutePosition(lodash_es_1.get(node.metadata, 'rotation.position'));
|
|
237
|
+
node.rotationQuaternion = math_vector_1.Quaternion.FromArray(lodash_es_1.get(node.metadata, 'rotation.initial'));
|
|
238
|
+
node.rotateAround(math_vector_1.Vector3.Zero(), math_axis_1.Axis.X, rotation.x);
|
|
239
|
+
node.rotateAround(math_vector_1.Vector3.Zero(), math_axis_1.Axis.Y, rotation.y);
|
|
240
|
+
node.rotateAround(math_vector_1.Vector3.Zero(), math_axis_1.Axis.Z, rotation.z);
|
|
241
|
+
node.computeWorldMatrix(true);
|
|
242
|
+
var rotationOffset = node.absolutePosition.subtract(lodash_es_1.get(node.metadata, 'rotation.position'));
|
|
243
|
+
injectNodeMetadata(node, { 'rotation.offset': rotationOffset }, false);
|
|
244
|
+
return node;
|
|
245
|
+
};
|
|
246
|
+
exports.rotateTransformNode = rotateTransformNode;
|
|
247
|
+
/**
|
|
248
|
+
* Attention: this function mutates the position of a node. Keep in mind that there are dependencies to other
|
|
249
|
+
* functions moving nodes around.
|
|
250
|
+
* @param node
|
|
251
|
+
* @param distance
|
|
252
|
+
*/
|
|
253
|
+
var moveTransformNode = function (node, distance) {
|
|
254
|
+
// remember absolute position and reset it before translating
|
|
255
|
+
if (!lodash_es_1.has(node.metadata, 'position.initial')) {
|
|
256
|
+
injectNodeMetadata(node, { 'position.initial': node.absolutePosition.clone() }, false);
|
|
257
|
+
}
|
|
258
|
+
var position = lodash_es_1.get(node.metadata, 'position.initial');
|
|
259
|
+
if (lodash_es_1.has(node.metadata, 'rotation.offset')) {
|
|
260
|
+
position = position.add(lodash_es_1.get(node.metadata, 'rotation.offset'));
|
|
261
|
+
}
|
|
262
|
+
node.setAbsolutePosition(position.add(distance));
|
|
263
|
+
injectNodeMetadata(node, { 'position.dirty': true }, false);
|
|
264
|
+
return node;
|
|
265
|
+
};
|
|
266
|
+
exports.moveTransformNode = moveTransformNode;
|
|
162
267
|
/**
|
|
163
268
|
* @param node
|
|
164
269
|
* @param material
|
|
@@ -330,6 +435,53 @@ var removeFromHighlightLayer = function (layer, node, deep) {
|
|
|
330
435
|
}
|
|
331
436
|
};
|
|
332
437
|
exports.removeFromHighlightLayer = removeFromHighlightLayer;
|
|
438
|
+
/**
|
|
439
|
+
* @param node
|
|
440
|
+
* @param receiveShadows
|
|
441
|
+
* @param deep
|
|
442
|
+
*/
|
|
443
|
+
var setReceiveShadows = function (node, receiveShadows, deep) {
|
|
444
|
+
if (deep === void 0) { deep = true; }
|
|
445
|
+
if (node instanceof abstractMesh_1.AbstractMesh) {
|
|
446
|
+
node.receiveShadows = receiveShadows;
|
|
447
|
+
}
|
|
448
|
+
if (deep) {
|
|
449
|
+
node.getChildTransformNodes(true).forEach(function (child) { return setReceiveShadows(child, receiveShadows, deep); });
|
|
450
|
+
}
|
|
451
|
+
};
|
|
452
|
+
exports.setReceiveShadows = setReceiveShadows;
|
|
453
|
+
/**
|
|
454
|
+
* @param node
|
|
455
|
+
* @param generator
|
|
456
|
+
* @param deep
|
|
457
|
+
*/
|
|
458
|
+
var addToShadowGenerator = function (generator, node, deep) {
|
|
459
|
+
if (deep === void 0) { deep = true; }
|
|
460
|
+
if (node instanceof abstractMesh_1.AbstractMesh) {
|
|
461
|
+
// We have to remove the node because there's no duplicate check in babylon
|
|
462
|
+
generator.removeShadowCaster(node, false);
|
|
463
|
+
generator.addShadowCaster(node, false);
|
|
464
|
+
}
|
|
465
|
+
if (deep) {
|
|
466
|
+
node.getChildTransformNodes(true).forEach(function (child) { return addToShadowGenerator(generator, child, deep); });
|
|
467
|
+
}
|
|
468
|
+
};
|
|
469
|
+
exports.addToShadowGenerator = addToShadowGenerator;
|
|
470
|
+
/**
|
|
471
|
+
* @param node
|
|
472
|
+
* @param generator
|
|
473
|
+
* @param deep
|
|
474
|
+
*/
|
|
475
|
+
var removeFromShadowGenerator = function (generator, node, deep) {
|
|
476
|
+
if (deep === void 0) { deep = true; }
|
|
477
|
+
if (node instanceof abstractMesh_1.AbstractMesh) {
|
|
478
|
+
generator.removeShadowCaster(node, false);
|
|
479
|
+
}
|
|
480
|
+
if (deep) {
|
|
481
|
+
node.getChildTransformNodes(true).forEach(function (child) { return removeFromShadowGenerator(generator, child, deep); });
|
|
482
|
+
}
|
|
483
|
+
};
|
|
484
|
+
exports.removeFromShadowGenerator = removeFromShadowGenerator;
|
|
333
485
|
/**
|
|
334
486
|
* https://forum.babylonjs.com/t/get-mesh-bounding-box-position-and-size-in-2d-screen-coordinates/1058/3
|
|
335
487
|
* @param mesh
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"babylonHelper.js","sourceRoot":"","sources":["../../../../src/api/util/babylonHelper.ts"],"names":[],"mappings":";;;;AAKA,iEAA4D;AAC5D,oEAAmE;AACnE,sEAAqE;AAKrE,uCAA6C;AAC7C,oDAAmD;AAEnD;;;;GAIG;AACH,IAAM,gBAAgB,GAAG,UAAc,KAAa,EACb,SAAqC;IAC3E,IAAM,GAAG,GAAG,IAAI,GAAG,EAAiB,CAAC;IACrC,IAAM,QAAQ,GAAG,UAAU,KAAW;QACrC,IAAI,SAAS,IAAI,SAAS,CAAE,KAAK,CAAE,EAAG;YACrC,GAAG,CAAC,GAAG,CAAE,KAAK,CAAC,QAAQ,CAAC,UAAU,EAAE,KAAY,CAAE,CAAC;SACnD;QACD,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAE,UAAA,KAAK;YACjC,QAAQ,CAAE,KAAK,CAAE,CAAC;QACnB,CAAC,CAAE,CAAC;IACL,CAAC,CAAC;IACF,KAAK,CAAC,OAAO,CAAE,UAAA,IAAI;QAClB,QAAQ,CAAE,IAAI,CAAE,CAAC;IAClB,CAAC,CAAE,CAAC;IACJ,OAAO,GAAG,CAAC;AACZ,CAAC,CAAC;AAmVD,4CAAgB;AAjVjB;;;GAGG;AACH,IAAM,6BAA6B,GAAG,UAAU,IAAmB;IAClE,IAAM,UAAU,GAAG,uBAAU,CAAC,MAAM,CAAE,IAAI,CAAC,IAAI,CAAE,CAAC;IAClD,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,OAAO,OAAO,CAAC,MAAM,EAAG;QACvB,OAAO,GAAG,OAAO,CAAC,MAAuB,CAAC;QAC1C,UAAU,CAAC,WAAW,CAAE,OAAO,CAAC,IAAI,CAAE,CAAC;KACvC;IACD,OAAO,UAAU,CAAC;AACnB,CAAC,CAAC;AAsUD,sEAA6B;AApU9B;;;;;;GAMG;AACH,IAAM,kBAAkB,GAAG,UAAU,IAAmB,EACnB,SAA8C,EAC9C,IAAoB;IAApB,qBAAA,EAAA,WAAoB;IACxD,IAAI,SAAS,IAAI,CAAC,SAAS,CAAE,IAAI,CAAE,EAAG;QACrC,OAAO,IAAI,CAAC;KACZ;IACD,IAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAE,CAAC;IACzD,IAAI,KAAK,EAAG;QACX,KAAK,CAAC,QAAQ,GAAG,qBAAS,CAAE,IAAI,CAAC,QAAQ,CAAE,CAAC;KAC5C;IACD,IAAI,IAAI,EAAG;QACV,IAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAE,IAAI,CAAE,CAAC;QACrD,QAAQ,CAAC,OAAO,CAAE,UAAA,KAAK;YACtB,IAAM,WAAW,GAAG,kBAAkB,CAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAE,CAAC;YACjE,IAAI,WAAW,EAAG;gBACjB,WAAW,CAAC,MAAM,GAAG,KAAK,CAAC;aAC3B;QACF,CAAC,CAAE,CAAC;KACJ;IACD,OAAO,KAAK,CAAC;AACd,CAAC,CAAC;AA0SD,gDAAkB;AAxSnB;;;;;GAKG;AACH,IAAM,0BAA0B,GAAG,UAAU,IAAmB,EACnB,MAA+B,EAC/B,IAAoB;IADpB,uBAAA,EAAA,WAA+B;IAC/B,qBAAA,EAAA,WAAoB;IAChE,IAAI,IAAI,YAAY,2BAAY,IAAI,IAAI,CAAC,QAAQ,EAAG;QACnD,IAAM,OAAO,GAAG,uBAAU,CAAC,MAAM,CAAE,MAAM,CAAE,CAAC,QAAQ,CAAC;YACpD,MAAM;YACN,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE;SACxB,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAE,OAAO,CAAC,IAAI,CAAE,CAAC;KACpD;IACD,IAAI,IAAI,EAAG;QACV,IAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAE,IAAI,CAAE,CAAC;QACrD,QAAQ,CAAC,OAAO,CAAE,UAAA,KAAK,IAAI,OAAA,0BAA0B,CAAE,KAAK,EAAE,MAAM,EAAE,IAAI,CAAE,EAAjD,CAAiD,CAAE,CAAC;KAC/E;IACD,OAAO,IAAI,CAAC;AACb,CAAC,CAAC;AAoRD,gEAA0B;AAlR3B;;;;GAIG;AACH,IAAM,2BAA2B,GAAG,UAAU,IAAmB,EAAE,QAAY,EAAE,IAAoB;IAApB,qBAAA,EAAA,WAAoB;IACpG,IAAI,CAAC,QAAQ,GAAG,iBAAK,CAAE,EAAE,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAE,CAAC;IACrD,IAAI,IAAI,EAAG;QACV,IAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAE,IAAI,CAAE,CAAC;QACrD,QAAQ,CAAC,OAAO,CAAE,UAAA,KAAK,IAAI,OAAA,2BAA2B,CAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAE,EAApD,CAAoD,CAAE,CAAC;KAClF;AACF,CAAC,CAAC;AAwQD,kEAA2B;AAtQ5B;;;;;GAKG;AACH,IAAM,mBAAmB,GAAG,UAAU,IAAmB,EACnB,cAAgC,EAChC,kBAA8B,EAC9B,IAAoB;IADpB,mCAAA,EAAA,uBAA8B;IAC9B,qBAAA,EAAA,WAAoB;IACzD,cAAc,uCAAC,IAAI,GAAK,kBAAkB,GAAE;IAC5C,IAAI,IAAI,EAAG;QACV,IAAM,QAAQ,GAAG,IAAI,CAAC,sBAAsB,CAAE,IAAI,CAAE,CAAC;QACrD,QAAQ,CAAC,OAAO,CAAE,UAAA,KAAK,IAAI,OAAA,mBAAmB,CAAE,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,IAAI,CAAE,EAAtE,CAAsE,CAAE,CAAC;KACpG;AACF,CAAC,CAAC;AAwPD,kDAAmB;AAtPpB;;;GAGG;AACH,IAAM,qBAAqB,GAAG,UAAU,IAAmB,EAAE,IAAoB;IAApB,qBAAA,EAAA,WAAoB;IAChF,IAAI,CAAC,UAAU,CAAE,IAAI,CAAE,CAAC;IACxB;;;;;MAKE;IACF,IAAI,IAAI,EAAG;QACV,IAAI,CAAC,sBAAsB,CAAE,IAAI,CAAE,CAAC,OAAO,CAAE,UAAA,KAAK,IAAI,OAAA,qBAAqB,CAAE,KAAK,EAAE,IAAI,CAAE,EAApC,CAAoC,CAAE,CAAC;KAC7F;AACF,CAAC,CAAC;AAwOD,sDAAqB;AAtOtB;;;GAGG;AACH,IAAM,uBAAuB,GAAG,UAAU,IAAmB,EAAE,IAAoB;IAApB,qBAAA,EAAA,WAAoB;IAClF,IAAI,CAAC,UAAU,CAAE,KAAK,CAAE,CAAC;IACzB;;;;;MAKE;IACF,IAAI,IAAI,EAAG;QACV,IAAI,CAAC,sBAAsB,CAAE,IAAI,CAAE,CAAC,OAAO,CAAE,UAAA,KAAK,IAAI,OAAA,uBAAuB,CAAE,KAAK,EAAE,IAAI,CAAE,EAAtC,CAAsC,CAAE,CAAC;KAC/F;AACF,CAAC,CAAC;AAwND,0DAAuB;AAtNxB;;;;GAIG;AACH,IAAM,WAAW,GAAG,UAAU,IAAmB,EAAE,QAAkB,EAAE,IAAoB;IAApB,qBAAA,EAAA,WAAoB;IAC1F,IAAI,IAAI,YAAY,2BAAY,EAAG;QAClC,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;KACzB;IACD,IAAI,IAAI,EAAG;QACV,IAAI,CAAC,sBAAsB,CAAE,IAAI,CAAE,CAAC,OAAO,CAAE,UAAA,KAAK,IAAI,OAAA,WAAW,CAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAE,EAApC,CAAoC,CAAE,CAAC;KAC7F;AACF,CAAC,CAAC;AA2MD,kCAAW;AAzMZ;;;;;;;;;;;;;;;GAeG;AACH,IAAM,qBAAqB,GAAG,UAAU,IAAmB,EAAE,QAAkB,EAAE,IAAoB;IAApB,qBAAA,EAAA,WAAoB;IACpG,IAAM,IAAI,GAAG,mQAEmB,CAAC;IACjC,OAAO,CAAC,IAAI,CAAC,sBAAoB,IAAM,CAAC,CAAC;IAEzC,IAAI,IAAI,YAAY,6BAAa,EAAG;QACnC,IAAI,CAAC,UAAU,CAAC,QAAQ,GAAG,QAAQ,CAAC;KACpC;IACD,IAAI,IAAI,EAAG;QACV,IAAI,CAAC,sBAAsB,CAAE,IAAI,CAAE,CAAC,OAAO,CAAE,UAAA,KAAK,IAAI,OAAA,qBAAqB,CAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAE,EAA9C,CAA8C,CAAE,CAAC;KACvG;AACF,CAAC,CAAC;AA8KD,sDAAqB;AA5KtB;;;;GAIG;AACH,IAAM,gBAAgB,GAAG,UAAU,IAAmB,EAAE,KAAa,EAAE,IAAoB;IAApB,qBAAA,EAAA,WAAoB;IAC1F,IAAI,IAAI,YAAY,2BAAY,IAAI,IAAI,CAAC,QAAQ,EAAG;QACnD,IAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;QACjD,QAAQ,WAAW,EAAG;YACrB,KAAK,aAAa;gBAChB,IAAI,CAAC,QAAwB,CAAC,WAAW,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC;gBACnE,MAAM;YACP,KAAK,kBAAkB;gBACrB,IAAI,CAAC,QAA6B,CAAC,YAAY,GAAG,KAAK,CAAC;gBACzD,MAAM;YACP;gBACC,MAAM,IAAI,KAAK,CAAE,8CAA2C,WAAW,8BAA0B,CAAE,CAAC;SACrG;KACD;IACD,IAAI,IAAI,EAAG;QACV,IAAI,CAAC,sBAAsB,CAAE,IAAI,CAAE,CAAC,OAAO,CAAE,UAAA,KAAK,IAAI,OAAA,gBAAgB,CAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAE,EAAtC,CAAsC,CAAE,CAAC;KAC/F;AACF,CAAC,CAAC;AAuJD,4CAAgB;AArJjB;;;;GAIG;AACH,IAAM,kBAAkB,GAAG,UAAU,IAAmB,EAAE,OAAgB,EAAE,IAAoB;IAApB,qBAAA,EAAA,WAAoB;IAC/F,IAAI,IAAI,YAAY,2BAAY,IAAI,IAAI,CAAC,QAAQ,EAAG;QACnD,IAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;QACjD,QAAQ,WAAW,EAAG;YACrB,KAAK,aAAa;gBAChB,IAAI,CAAC,QAAwB,CAAC,aAAa,GAAG,OAAO,CAAC;gBACvD,MAAM;YACP,KAAK,kBAAkB;gBACrB,IAAI,CAAC,QAA6B,CAAC,cAAc,GAAG,OAAO,CAAC;gBAC7D,MAAM;YACP;gBACC,MAAM,IAAI,KAAK,CAAE,gDAA6C,WAAW,8BAA0B,CAAE,CAAC;SACvG;KACD;IACD,IAAI,IAAI,EAAG;QACV,IAAI,CAAC,sBAAsB,CAAE,IAAI,CAAE,CAAC,OAAO,CAAE,UAAA,KAAK,IAAI,OAAA,kBAAkB,CAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAE,EAA1C,CAA0C,CAAE,CAAC;KACnG;AACF,CAAC,CAAC;AAgID,gDAAkB;AA9HnB;;;;GAIG;AACH,IAAM,qBAAqB,GAAG,UAAU,IAAmB,EAAE,UAAkB,EAAE,IAAoB;IAApB,qBAAA,EAAA,WAAoB;IACpG,IAAI,IAAI,YAAY,2BAAY,IAAI,IAAI,CAAC,QAAQ,EAAG;QACnD,IAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;QACjD,QAAQ,WAAW,EAAG;YACrB,KAAK,aAAa;gBAChB,IAAI,CAAC,QAAwB,CAAC,QAAQ,GAAG,UAAU,CAAC;gBACrD,MAAM;YACP;gBACC,MAAM,IAAI,KAAK,CAAE,mDAAgD,WAAW,8BAA0B,CAAE,CAAC;SAC1G;KACD;IACD,IAAI,IAAI,EAAG;QACV,IAAI,CAAC,sBAAsB,CAAE,IAAI,CAAE,CAAC,OAAO,CAAE,UAAA,KAAK,IAAI,OAAA,qBAAqB,CAAE,KAAK,EAAE,UAAU,EAAE,IAAI,CAAE,EAAhD,CAAgD,CAAE,CAAC;KACzG;AACF,CAAC,CAAC;AA4GD,sDAAqB;AA1GtB;;;;GAIG;AACH,IAAM,oBAAoB,GAAG,UAAU,IAAmB,EAAE,SAAiB,EAAE,IAAoB;IAApB,qBAAA,EAAA,WAAoB;IAClG,IAAI,IAAI,YAAY,2BAAY,IAAI,IAAI,CAAC,QAAQ,EAAG;QACnD,IAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;QACjD,QAAQ,WAAW,EAAG;YACrB,KAAK,aAAa;gBAChB,IAAI,CAAC,QAAwB,CAAC,SAAS,GAAG,SAAS,CAAC;gBACrD,MAAM;YACP,KAAK,kBAAkB;gBACrB,IAAI,CAAC,QAA6B,CAAC,SAAS,GAAG,SAAS,CAAC;gBAC1D,MAAM;YACP;gBACC,MAAM,IAAI,KAAK,CAAE,kDAA+C,WAAW,8BAA0B,CAAE,CAAC;SACzG;KACD;IACD,IAAI,IAAI,EAAG;QACV,IAAI,CAAC,sBAAsB,CAAE,IAAI,CAAE,CAAC,OAAO,CAAE,UAAA,KAAK,IAAI,OAAA,oBAAoB,CAAE,KAAK,EAAE,SAAS,EAAE,IAAI,CAAE,EAA9C,CAA8C,CAAE,CAAC;KACvG;AACF,CAAC,CAAC;AAqFD,oDAAoB;AAnFrB;;;;;GAKG;AACH,IAAM,mBAAmB,GAAG,UAAU,KAAqB,EAAE,KAAa,EAAE,IAAmB,EAAE,IAAoB;IAApB,qBAAA,EAAA,WAAoB;IACpH,IAAI,IAAI,YAAY,2BAAY,EAAG;QAClC,KAAK,CAAC,OAAO,CAAG,IAAa,EAAE,KAAK,CAAE,CAAC;KACvC;IACD,IAAI,IAAI,EAAG;QACV,IAAI,CAAC,sBAAsB,CAAE,IAAI,CAAE,CAAC,OAAO,CAC1C,UAAA,KAAK,IAAI,OAAA,mBAAmB,CAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAE,EAAhD,CAAgD,CACzD,CAAC;KACF;AACF,CAAC,CAAC;AAqED,kDAAmB;AAnEpB;;;;GAIG;AACH,IAAM,wBAAwB,GAAG,UAAU,KAAqB,EAAE,IAAmB,EAAE,IAAoB;IAApB,qBAAA,EAAA,WAAoB;IAC1G,IAAI,IAAI,YAAY,2BAAY,EAAG;QAClC,KAAK,CAAC,UAAU,CAAG,IAAa,CAAE,CAAC;KACnC;IACD,IAAI,IAAI,EAAG;QACV,IAAI,CAAC,sBAAsB,CAAE,IAAI,CAAE,CAAC,OAAO,CAC1C,UAAA,KAAK,IAAI,OAAA,wBAAwB,CAAE,KAAK,EAAE,KAAK,EAAE,IAAI,CAAE,EAA9C,CAA8C,CACvD,CAAC;KACF;AACF,CAAC,CAAC;AAsDD,4DAAwB;AApDzB;;;;;GAKG;AACH,IAAM,qBAAqB,GAAG,UAAU,IAAkB,EAAE,KAAY,EAAE,MAAyB;IAClG,+BAA+B;IAC/B,IAAM,WAAW,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC;IAC/D,4EAA4E;IAC5E,IAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1C,IAAM,eAAe,GAAG,KAAK,CAAC,kBAAkB,EAAE,CAAC;IACnD,IAAM,QAAQ,GAAG,KAAK,CAAC,YAAa,CAAC,QAAQ,CAAC;IAC9C,+GAA+G;IAC/G,IAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAE,UAAA,MAAM;QAC1C,IAAM,UAAU,GAAG,qBAAO,CAAC,OAAO,CAAE,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,QAAQ,CAAE,CAAC;QACrF,UAAU,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC;QACjD,UAAU,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,GAAG,MAAM,CAAC,YAAY,CAAC;QAClD,OAAO,UAAU,CAAC;IACnB,CAAC,CAAE,CAAC;IACJ,mGAAmG;IACnG,IAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAE,IAAI,EAAE,WAAW,CAAC,GAAG,CAAE,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,CAAC,EAAH,CAAG,CAAE,CAAE,CAAC;IACjE,IAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAE,IAAI,EAAE,WAAW,CAAC,GAAG,CAAE,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,CAAC,EAAH,CAAG,CAAE,CAAE,CAAC;IACjE,IAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAE,IAAI,EAAE,WAAW,CAAC,GAAG,CAAE,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,CAAC,EAAH,CAAG,CAAE,CAAE,CAAC;IACjE,IAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAE,IAAI,EAAE,WAAW,CAAC,GAAG,CAAE,UAAA,CAAC,IAAI,OAAA,CAAC,CAAC,CAAC,EAAH,CAAG,CAAE,CAAE,CAAC;IACjE,gCAAgC;IAChC,OAAO;QACN,KAAK,EAAE,IAAI,GAAG,IAAI;QAClB,MAAM,EAAE,IAAI,GAAG,IAAI;QACnB,IAAI,EAAE,IAAI;QACV,GAAG,EAAE,IAAI;QACT,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,IAAI;KACE,CAAC;AACjB,CAAC,CAAC;AAmBD,sDAAqB"}
|
|
1
|
+
{"version":3,"file":"babylonHelper.js","sourceRoot":"","sources":["../../../../src/api/util/babylonHelper.ts"],"names":[],"mappings":"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"}
|