@combeenation/3d-viewer 19.1.0 → 20.0.0-alpha1
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/dist/lib-cjs/buildinfo.json +1 -1
- package/dist/lib-cjs/commonjs.tsconfig.tsbuildinfo +1 -1
- package/dist/lib-cjs/index.d.ts +1 -1
- package/dist/lib-cjs/index.js +1 -1
- package/dist/lib-cjs/index.js.map +1 -1
- package/dist/lib-cjs/internal/animation-helper.d.ts +2 -0
- package/dist/lib-cjs/internal/animation-helper.js +16 -0
- package/dist/lib-cjs/internal/animation-helper.js.map +1 -0
- package/dist/lib-cjs/internal/cloning-helper.js +4 -2
- package/dist/lib-cjs/internal/cloning-helper.js.map +1 -1
- package/dist/lib-cjs/internal/export-helper.js +1 -1
- package/dist/lib-cjs/internal/export-helper.js.map +1 -1
- package/dist/lib-cjs/internal/math-helper.d.ts +9 -0
- package/dist/lib-cjs/internal/math-helper.js +43 -0
- package/dist/lib-cjs/internal/math-helper.js.map +1 -0
- package/dist/lib-cjs/internal/{paintable-helper.d.ts → parameter/paintable-parameter-helper.d.ts} +3 -3
- package/dist/lib-cjs/internal/{paintable-helper.js → parameter/paintable-parameter-helper.js} +26 -26
- package/dist/lib-cjs/internal/parameter/paintable-parameter-helper.js.map +1 -0
- package/dist/lib-cjs/internal/parameter/parameter-helper.d.ts +2 -0
- package/dist/lib-cjs/internal/parameter/parameter-helper.js +214 -0
- package/dist/lib-cjs/internal/parameter/parameter-helper.js.map +1 -0
- package/dist/lib-cjs/internal/{texture-parameter-helper.d.ts → parameter/texture-parameter-helper.d.ts} +1 -2
- package/dist/lib-cjs/internal/{texture-parameter-helper.js → parameter/texture-parameter-helper.js} +15 -16
- package/dist/lib-cjs/internal/parameter/texture-parameter-helper.js.map +1 -0
- package/dist/lib-cjs/manager/camera-manager.js +2 -9
- package/dist/lib-cjs/manager/camera-manager.js.map +1 -1
- package/dist/lib-cjs/manager/debug-manager.d.ts +5 -1
- package/dist/lib-cjs/manager/debug-manager.js +21 -5
- package/dist/lib-cjs/manager/debug-manager.js.map +1 -1
- package/dist/lib-cjs/manager/model-manager.d.ts +35 -4
- package/dist/lib-cjs/manager/model-manager.js +50 -8
- package/dist/lib-cjs/manager/model-manager.js.map +1 -1
- package/dist/lib-cjs/manager/parameter-manager.d.ts +37 -20
- package/dist/lib-cjs/manager/parameter-manager.js +109 -204
- package/dist/lib-cjs/manager/parameter-manager.js.map +1 -1
- package/dist/lib-cjs/utils/viewer-utils.d.ts +35 -0
- package/dist/lib-cjs/utils/viewer-utils.js +112 -0
- package/dist/lib-cjs/utils/viewer-utils.js.map +1 -0
- package/dist/lib-cjs/viewer.d.ts +13 -1
- package/dist/lib-cjs/viewer.js +24 -0
- package/dist/lib-cjs/viewer.js.map +1 -1
- package/package.json +13 -12
- package/src/index.ts +1 -1
- package/src/internal/animation-helper.ts +18 -0
- package/src/internal/cloning-helper.ts +4 -2
- package/src/internal/export-helper.ts +1 -2
- package/src/internal/math-helper.ts +46 -0
- package/src/internal/{paintable-helper.ts → parameter/paintable-parameter-helper.ts} +35 -35
- package/src/internal/parameter/parameter-helper.ts +263 -0
- package/src/internal/{texture-parameter-helper.ts → parameter/texture-parameter-helper.ts} +13 -3
- package/src/manager/camera-manager.ts +2 -10
- package/src/manager/debug-manager.ts +35 -6
- package/src/manager/model-manager.ts +81 -13
- package/src/manager/parameter-manager.ts +138 -232
- package/src/utils/viewer-utils.ts +149 -0
- package/src/viewer.ts +29 -1
- package/dist/lib-cjs/internal/paintable-helper.js.map +0 -1
- package/dist/lib-cjs/internal/texture-parameter-helper.js.map +0 -1
- package/dist/lib-cjs/utils/node-utils.d.ts +0 -17
- package/dist/lib-cjs/utils/node-utils.js +0 -92
- package/dist/lib-cjs/utils/node-utils.js.map +0 -1
- package/src/utils/node-utils.ts +0 -112
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parameter-manager.js","sourceRoot":"","sources":["../../../src/manager/parameter-manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"parameter-manager.js","sourceRoot":"","sources":["../../../src/manager/parameter-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { FloatArray, Geometry, Mesh, MorphTarget, MorphTargetManager, TransformNode, Vector3, Viewer } from '../index';
|
|
2
|
+
export declare type BakeGeometrySettings = {
|
|
3
|
+
keepTransformation?: boolean;
|
|
4
|
+
};
|
|
5
|
+
export declare type CreateTransformNodeSettings = {
|
|
6
|
+
parentNode?: TransformNode;
|
|
7
|
+
position?: Vector3;
|
|
8
|
+
rotation?: Vector3;
|
|
9
|
+
scaling?: Vector3;
|
|
10
|
+
};
|
|
11
|
+
export declare class ViewerUtils {
|
|
12
|
+
protected viewer: Viewer;
|
|
13
|
+
/** @internal */
|
|
14
|
+
constructor(viewer: Viewer);
|
|
15
|
+
/**
|
|
16
|
+
* Removes transformation data from the mesh and stores it in the geometry, which is called "baking".
|
|
17
|
+
* Also considers the geometry change from morph targets and skeletons.
|
|
18
|
+
*
|
|
19
|
+
* @param settings Optionally avoid baking the transformation, as this only works conveniently if the parent structure
|
|
20
|
+
* is baked as well. Baking morph targets only is a use case when preparing a mesh for CSG operations,
|
|
21
|
+
* which doesn't consider morph targets (yet).
|
|
22
|
+
*/
|
|
23
|
+
bakeGeometryOfMesh(mesh: Mesh, settings?: BakeGeometrySettings): void;
|
|
24
|
+
/**
|
|
25
|
+
* Get a `TransformNode` by name or create one if not already available.\
|
|
26
|
+
* Optionally set a parent node for the new `TransformNode` right away.
|
|
27
|
+
*/
|
|
28
|
+
getOrCreateTransformNode(nodeName: string, settings?: CreateTransformNodeSettings): TransformNode;
|
|
29
|
+
/**
|
|
30
|
+
* @param kind morph targets can affect various vertices kinds, whereas "position" is the most common one
|
|
31
|
+
* still other kinds (like normals or tangents) can be affected as well and can be provided on this input
|
|
32
|
+
*/
|
|
33
|
+
protected _bakeMorphTargetManagerIntoVertices(kind: string, morphTargetManager: MorphTargetManager, geometry: Geometry): void;
|
|
34
|
+
protected _getVerticesDataFromMorphTarget(kind: string, morphTarget: MorphTarget): FloatArray | null;
|
|
35
|
+
}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ViewerUtils = void 0;
|
|
4
|
+
const index_1 = require("../index");
|
|
5
|
+
class ViewerUtils {
|
|
6
|
+
/** @internal */
|
|
7
|
+
constructor(viewer) {
|
|
8
|
+
this.viewer = viewer;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Removes transformation data from the mesh and stores it in the geometry, which is called "baking".
|
|
12
|
+
* Also considers the geometry change from morph targets and skeletons.
|
|
13
|
+
*
|
|
14
|
+
* @param settings Optionally avoid baking the transformation, as this only works conveniently if the parent structure
|
|
15
|
+
* is baked as well. Baking morph targets only is a use case when preparing a mesh for CSG operations,
|
|
16
|
+
* which doesn't consider morph targets (yet).
|
|
17
|
+
*/
|
|
18
|
+
bakeGeometryOfMesh(mesh, settings) {
|
|
19
|
+
const { keepTransformation } = settings !== null && settings !== void 0 ? settings : {};
|
|
20
|
+
if (!mesh.geometry) {
|
|
21
|
+
// no geometry available, nothing to do
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
// geometries can be shared across multiple meshes, first make them unique to avoid side-effects
|
|
25
|
+
mesh.makeGeometryUnique();
|
|
26
|
+
// Babylon.js already provides a function for baking the current skeleton changes into the geometry
|
|
27
|
+
if (mesh.skeleton) {
|
|
28
|
+
mesh.applySkeleton(mesh.skeleton);
|
|
29
|
+
mesh.skeleton = null;
|
|
30
|
+
}
|
|
31
|
+
// NOTE: in difference to skeletons and transformations there is no baking function for morph targets (yet)
|
|
32
|
+
// however another approach could be to re-apply the position and normals data, as there are nice functions for it
|
|
33
|
+
// - `getPositionData(applySkeleton: boolean = false, applyMorph: boolean = false)`
|
|
34
|
+
// - `getNormalsData(applySkeleton: boolean = false, applyMorph: boolean = false)`
|
|
35
|
+
// you can decide if skeletons and morph targets can be added, which is exactly what we want
|
|
36
|
+
// I'm still hesitant to use it because "tangent" and "UV" kinds are not supported, whereas I'm not sure if it's
|
|
37
|
+
// required
|
|
38
|
+
// => try it out when there is enough time for detailed regression tests!
|
|
39
|
+
const morphTargetManager = mesh.morphTargetManager;
|
|
40
|
+
const geometry = mesh.geometry;
|
|
41
|
+
if (morphTargetManager === null || morphTargetManager === void 0 ? void 0 : morphTargetManager.numTargets) {
|
|
42
|
+
// apply morph target vertices data to mesh geometry
|
|
43
|
+
// mostly only the "PositionKind" is implemented
|
|
44
|
+
this._bakeMorphTargetManagerIntoVertices(index_1.VertexBuffer.PositionKind, morphTargetManager, geometry);
|
|
45
|
+
this._bakeMorphTargetManagerIntoVertices(index_1.VertexBuffer.NormalKind, morphTargetManager, geometry);
|
|
46
|
+
this._bakeMorphTargetManagerIntoVertices(index_1.VertexBuffer.TangentKind, morphTargetManager, geometry);
|
|
47
|
+
this._bakeMorphTargetManagerIntoVertices(index_1.VertexBuffer.UVKind, morphTargetManager, geometry);
|
|
48
|
+
// remove morph target manager with all it's morph targets
|
|
49
|
+
mesh.morphTargetManager = null;
|
|
50
|
+
}
|
|
51
|
+
// bake the transformation data in the mesh geometry, fortunately there is already a help function from Babylon.js
|
|
52
|
+
if (!keepTransformation) {
|
|
53
|
+
mesh.bakeCurrentTransformIntoVertices();
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Get a `TransformNode` by name or create one if not already available.\
|
|
58
|
+
* Optionally set a parent node for the new `TransformNode` right away.
|
|
59
|
+
*/
|
|
60
|
+
getOrCreateTransformNode(nodeName, settings) {
|
|
61
|
+
const { parentNode, position, rotation, scaling } = settings !== null && settings !== void 0 ? settings : {};
|
|
62
|
+
const scene = this.viewer.scene;
|
|
63
|
+
let node = scene.getTransformNodeByName(nodeName);
|
|
64
|
+
if (!node) {
|
|
65
|
+
node = new index_1.TransformNode(nodeName, scene);
|
|
66
|
+
}
|
|
67
|
+
node.parent = parentNode !== null && parentNode !== void 0 ? parentNode : null;
|
|
68
|
+
node.position = position !== null && position !== void 0 ? position : index_1.Vector3.Zero();
|
|
69
|
+
node.rotation = rotation !== null && rotation !== void 0 ? rotation : index_1.Vector3.Zero();
|
|
70
|
+
node.scaling = scaling !== null && scaling !== void 0 ? scaling : index_1.Vector3.One();
|
|
71
|
+
return node;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* @param kind morph targets can affect various vertices kinds, whereas "position" is the most common one
|
|
75
|
+
* still other kinds (like normals or tangents) can be affected as well and can be provided on this input
|
|
76
|
+
*/
|
|
77
|
+
_bakeMorphTargetManagerIntoVertices(kind, morphTargetManager, geometry) {
|
|
78
|
+
const origVerticesData = geometry.getVerticesData(kind);
|
|
79
|
+
if (!origVerticesData) {
|
|
80
|
+
// no vertices data for this kind availabe on the mesh geometry
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
let verticesData = [...origVerticesData];
|
|
84
|
+
for (let i = 0; i < morphTargetManager.numTargets; i++) {
|
|
85
|
+
const target = morphTargetManager.getTarget(i);
|
|
86
|
+
const targetVerticesData = this._getVerticesDataFromMorphTarget(kind, target);
|
|
87
|
+
if (targetVerticesData) {
|
|
88
|
+
// vertices data of this kind are implemented on the morph target
|
|
89
|
+
// add the influence of this morph target to the vertices data
|
|
90
|
+
// formula is taken from: https://doc.babylonjs.com/features/featuresDeepDive/mesh/morphTargets#basics
|
|
91
|
+
verticesData = verticesData.map((oldVal, idx) => oldVal + (targetVerticesData[idx] - origVerticesData[idx]) * target.influence);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
// apply the updated vertices data
|
|
95
|
+
geometry.setVerticesData(kind, verticesData);
|
|
96
|
+
}
|
|
97
|
+
_getVerticesDataFromMorphTarget(kind, morphTarget) {
|
|
98
|
+
switch (kind) {
|
|
99
|
+
case index_1.VertexBuffer.PositionKind:
|
|
100
|
+
return morphTarget.getPositions();
|
|
101
|
+
case index_1.VertexBuffer.NormalKind:
|
|
102
|
+
return morphTarget.getNormals();
|
|
103
|
+
case index_1.VertexBuffer.TangentKind:
|
|
104
|
+
return morphTarget.getTangents();
|
|
105
|
+
case index_1.VertexBuffer.UVKind:
|
|
106
|
+
return morphTarget.getUVs();
|
|
107
|
+
}
|
|
108
|
+
return null;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
exports.ViewerUtils = ViewerUtils;
|
|
112
|
+
//# sourceMappingURL=viewer-utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewer-utils.js","sourceRoot":"","sources":["../../../src/utils/viewer-utils.ts"],"names":[],"mappings":"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"}
|
package/dist/lib-cjs/viewer.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as Index from './index';
|
|
2
|
-
import { AbstractEngine, CameraManager, DebugManager, DefaultSceneSettings, DimensionLineManager, EngineOptions, EventManager, ExportManager, HtmlAnchorManager, MaterialManager, ModelManager, NodeParameterSubject, ParameterManager, Scene, SceneManager, TagParameterSubject, TextureManager, TransformNode } from './index';
|
|
2
|
+
import { AbstractEngine, CameraManager, DebugManager, DefaultSceneSettings, DimensionLineManager, EngineOptions, EventManager, ExportManager, HtmlAnchorManager, MaterialManager, ModelManager, NodeParameterSubject, ParameterManager, Scene, SceneManager, TagParameterSubject, TextureManager, TransformNode, ViewerUtils } from './index';
|
|
3
3
|
/**
|
|
4
4
|
* Use this type to select nodes directly or via node or tag name.\
|
|
5
5
|
* This pattern is used for excluding nodes from autofocus, GLB export, etc.
|
|
@@ -60,8 +60,10 @@ export declare class Viewer {
|
|
|
60
60
|
protected _parameterManager: ParameterManager;
|
|
61
61
|
protected _sceneManager: SceneManager;
|
|
62
62
|
protected _textureManager: TextureManager;
|
|
63
|
+
protected _utils: ViewerUtils;
|
|
63
64
|
protected _viewerSettings: ViewerSettings;
|
|
64
65
|
protected _isRenderLoopPaused: boolean;
|
|
66
|
+
protected _isBlurred: boolean;
|
|
65
67
|
get scene(): Scene;
|
|
66
68
|
get engine(): AbstractEngine;
|
|
67
69
|
get cameraManager(): CameraManager;
|
|
@@ -77,6 +79,7 @@ export declare class Viewer {
|
|
|
77
79
|
get sceneManager(): SceneManager;
|
|
78
80
|
/** @internal */
|
|
79
81
|
get textureManager(): TextureManager;
|
|
82
|
+
get utils(): ViewerUtils;
|
|
80
83
|
get viewerSettings(): ViewerSettings;
|
|
81
84
|
/**
|
|
82
85
|
* Returns all modules which are exported by the viewers index file.\
|
|
@@ -100,6 +103,15 @@ export declare class Viewer {
|
|
|
100
103
|
* Resume render loop when paused by {@link pauseRendering} function
|
|
101
104
|
*/
|
|
102
105
|
resumeRendering(): void;
|
|
106
|
+
/**
|
|
107
|
+
* Blurs viewer to hide certain actions like loading assets, changing material or redrawing the scene.\
|
|
108
|
+
* Blur depth can be changed via input parameter and defaults to 3px.
|
|
109
|
+
*/
|
|
110
|
+
applyBlur(blurDepth?: number): void;
|
|
111
|
+
/**
|
|
112
|
+
* Removes blur, as set by `applyBlur` function
|
|
113
|
+
*/
|
|
114
|
+
removeBlur(): void;
|
|
103
115
|
/**
|
|
104
116
|
* Destroys this viewer instance and disposes Babylon.js engine and all scene content
|
|
105
117
|
*/
|
package/dist/lib-cjs/viewer.js
CHANGED
|
@@ -69,6 +69,7 @@ class Viewer {
|
|
|
69
69
|
useParallelShaderCompile: true,
|
|
70
70
|
};
|
|
71
71
|
this._isRenderLoopPaused = false;
|
|
72
|
+
this._isBlurred = false;
|
|
72
73
|
(0, lodash_es_1.merge)(this._viewerSettings, viewerSettings);
|
|
73
74
|
this._init(defaultSceneSettings);
|
|
74
75
|
}
|
|
@@ -113,6 +114,9 @@ class Viewer {
|
|
|
113
114
|
get textureManager() {
|
|
114
115
|
return this._textureManager;
|
|
115
116
|
}
|
|
117
|
+
get utils() {
|
|
118
|
+
return this._utils;
|
|
119
|
+
}
|
|
116
120
|
get viewerSettings() {
|
|
117
121
|
return this._viewerSettings;
|
|
118
122
|
}
|
|
@@ -137,6 +141,25 @@ class Viewer {
|
|
|
137
141
|
resumeRendering() {
|
|
138
142
|
this._isRenderLoopPaused = false;
|
|
139
143
|
}
|
|
144
|
+
/**
|
|
145
|
+
* Blurs viewer to hide certain actions like loading assets, changing material or redrawing the scene.\
|
|
146
|
+
* Blur depth can be changed via input parameter and defaults to 3px.
|
|
147
|
+
*/
|
|
148
|
+
applyBlur(blurDepth = 3) {
|
|
149
|
+
if (this.canvas && !this._isBlurred) {
|
|
150
|
+
this.canvas.style.filter = `blur(${blurDepth}px)`;
|
|
151
|
+
this._isBlurred = true;
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Removes blur, as set by `applyBlur` function
|
|
156
|
+
*/
|
|
157
|
+
removeBlur() {
|
|
158
|
+
if (this.canvas && this._isBlurred) {
|
|
159
|
+
this.canvas.style.filter = '';
|
|
160
|
+
this._isBlurred = false;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
140
163
|
/**
|
|
141
164
|
* Destroys this viewer instance and disposes Babylon.js engine and all scene content
|
|
142
165
|
*/
|
|
@@ -186,6 +209,7 @@ class Viewer {
|
|
|
186
209
|
this._parameterManager = new index_1.ParameterManager(this);
|
|
187
210
|
this._sceneManager = new index_1.SceneManager(this, defaultSceneSettings);
|
|
188
211
|
this._textureManager = new index_1.TextureManager(this);
|
|
212
|
+
this._utils = new index_1.ViewerUtils(this);
|
|
189
213
|
// creates black cube
|
|
190
214
|
// this model is not based on an URL and can be targeted by the Combeenation backend as fallback model
|
|
191
215
|
this._modelManager.createFallbackModel();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"viewer.js","sourceRoot":"","sources":["../../src/viewer.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,sEAAyC;AACzC,+CAAiC;AACjC,
|
|
1
|
+
{"version":3,"file":"viewer.js","sourceRoot":"","sources":["../../src/viewer.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@combeenation/3d-viewer",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "20.0.0-alpha1",
|
|
4
4
|
"description": "Combeenation 3D Viewer",
|
|
5
5
|
"homepage": "https://github.com/Combeenation/3d-viewer#readme",
|
|
6
6
|
"bugs": {
|
|
@@ -49,10 +49,10 @@
|
|
|
49
49
|
},
|
|
50
50
|
"prettier": "@combeenation/prettier-config",
|
|
51
51
|
"dependencies": {
|
|
52
|
-
"@babylonjs/core": "8.
|
|
53
|
-
"@babylonjs/gui": "8.
|
|
54
|
-
"@babylonjs/loaders": "8.
|
|
55
|
-
"@babylonjs/serializers": "8.
|
|
52
|
+
"@babylonjs/core": "8.54.0",
|
|
53
|
+
"@babylonjs/gui": "8.54.0",
|
|
54
|
+
"@babylonjs/loaders": "8.54.0",
|
|
55
|
+
"@babylonjs/serializers": "8.54.0",
|
|
56
56
|
"dxf-writer": "1.18.4",
|
|
57
57
|
"eventemitter3": "4.0.7",
|
|
58
58
|
"html2canvas": "1.4.1",
|
|
@@ -86,18 +86,19 @@
|
|
|
86
86
|
"webpack-merge": "5.8.0"
|
|
87
87
|
},
|
|
88
88
|
"optionalDependencies": {
|
|
89
|
-
"@babylonjs/addons": "8.
|
|
90
|
-
"@babylonjs/gui-editor": "8.
|
|
89
|
+
"@babylonjs/addons": "8.54.0",
|
|
90
|
+
"@babylonjs/gui-editor": "8.54.0",
|
|
91
91
|
"@babylonjs/inspector": "8.10.0",
|
|
92
|
-
"@babylonjs/materials": "8.
|
|
93
|
-
"@babylonjs/node-editor": "8.
|
|
94
|
-
"@babylonjs/node-geometry-editor": "8.
|
|
92
|
+
"@babylonjs/materials": "8.54.0",
|
|
93
|
+
"@babylonjs/node-editor": "8.54.0",
|
|
94
|
+
"@babylonjs/node-geometry-editor": "8.54.0"
|
|
95
95
|
},
|
|
96
96
|
"dependenciesComments": {
|
|
97
|
-
"@babylonjs": "Latest version 8.
|
|
97
|
+
"@babylonjs": "Latest version 8.54.0 fixes babylon file parsing issue (see https://forum.babylonjs.com/t/loadassetcontainerasync-doesnt-work-for-babylon-files/62651)"
|
|
98
98
|
},
|
|
99
99
|
"optionalDependenciesComments": {
|
|
100
|
-
"@babylonjs": "Defining the inspector package (and it's dependencies) as optional is required to omit these packages in the production build of the CBN react-app (see CB-9269)"
|
|
100
|
+
"@babylonjs": "Defining the inspector package (and it's dependencies) as optional is required to omit these packages in the production build of the CBN react-app (see CB-9269)",
|
|
101
|
+
"@babylonjs/inspector": "Inspector integration from version 8.54.0 doesn't work out of the box, therefore we still go with the legacy one ATM (see CB-11276)"
|
|
101
102
|
},
|
|
102
103
|
"scriptsComments": {
|
|
103
104
|
"test-delayed": "Didn't manage to wait 5 seconds for starting up the asset server as an individual VS Code task, therefore it's solved as npm script"
|
package/src/index.ts
CHANGED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { AnimationGroup } from '../index';
|
|
2
|
+
|
|
3
|
+
export function playAnimationGroupOnce(
|
|
4
|
+
animationGroup: AnimationGroup,
|
|
5
|
+
framesPerSec: number,
|
|
6
|
+
durationMs: number
|
|
7
|
+
): Promise<void> {
|
|
8
|
+
// animation is created for 1 second (100 frames), adjust speed ratio according to desired movement time
|
|
9
|
+
const speedRatio = 1000 / durationMs;
|
|
10
|
+
|
|
11
|
+
return new Promise<void>(resolve => {
|
|
12
|
+
animationGroup.onAnimationGroupEndObservable.addOnce(() => {
|
|
13
|
+
animationGroup.dispose();
|
|
14
|
+
resolve();
|
|
15
|
+
});
|
|
16
|
+
animationGroup.start(false, speedRatio, 0, framesPerSec);
|
|
17
|
+
});
|
|
18
|
+
}
|
|
@@ -19,10 +19,12 @@ import {
|
|
|
19
19
|
import { cloneTags, getTagsAsStrArr, setTagsAsStrArr } from './tags-helper';
|
|
20
20
|
|
|
21
21
|
const _defaultNodeNamingStrategy: NodeNamingStrategy = (node: TransformNode, clonedObjectId: string): string => {
|
|
22
|
-
|
|
22
|
+
// Do not rename cloned nodes (anymore)
|
|
23
|
+
// Babylon.js allows it and in praxis cloned node names are not targetted anyway
|
|
24
|
+
// Having shorter node names heavily improves the readability of the node structure via the inspector
|
|
25
|
+
return node.name;
|
|
23
26
|
};
|
|
24
27
|
const _defaultTagNamingStrategy: TagNamingStrategy = (tag: string, clonedObjectId: string): string => {
|
|
25
|
-
// don't rename tags by default
|
|
26
28
|
return tag;
|
|
27
29
|
};
|
|
28
30
|
|
|
@@ -5,7 +5,6 @@ import {
|
|
|
5
5
|
Mesh,
|
|
6
6
|
Node,
|
|
7
7
|
NodeDescription,
|
|
8
|
-
NodeUtils,
|
|
9
8
|
RenderTargetTexture,
|
|
10
9
|
TransformNode,
|
|
11
10
|
Vector3,
|
|
@@ -67,7 +66,7 @@ export async function exportPreProcess(viewer: Viewer, settings?: ExportPreProce
|
|
|
67
66
|
// bake transformation of all meshes, so that no negative scalings are left
|
|
68
67
|
// it's important that this is done AFTER instanced meshes have been converted (`_prepareNodeForExport`)
|
|
69
68
|
nodesForExport.forEach(node => {
|
|
70
|
-
if (node instanceof Mesh)
|
|
69
|
+
if (node instanceof Mesh) viewer.utils.bakeGeometryOfMesh(node);
|
|
71
70
|
});
|
|
72
71
|
|
|
73
72
|
// reset transformation of all "TransformNodes", as transform nodes are not considered by the `_bakeGeometryOfMesh`
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { Matrix, Quaternion, TransformNode, Vector3 } from '..';
|
|
2
|
+
|
|
3
|
+
const _CONVERT_HANDEDNESS_MATRIX = Matrix.Compose(new Vector3(-1, 1, 1), Quaternion.Identity(), Vector3.Zero());
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Evaluates if the absolute scaling of the node represents a left or right handed coordinate system
|
|
7
|
+
*/
|
|
8
|
+
export function nodeHasLeftHandedScaling(node: TransformNode): boolean {
|
|
9
|
+
// update world matrix is required to get absolute scaling
|
|
10
|
+
node.computeWorldMatrix(true);
|
|
11
|
+
|
|
12
|
+
let cntNeg = 0;
|
|
13
|
+
if (node.absoluteScaling.x < 0) {
|
|
14
|
+
cntNeg++;
|
|
15
|
+
}
|
|
16
|
+
if (node.absoluteScaling.y < 0) {
|
|
17
|
+
cntNeg++;
|
|
18
|
+
}
|
|
19
|
+
if (node.absoluteScaling.z < 0) {
|
|
20
|
+
cntNeg++;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
// flipping scaling values by an odd amount of directions also flips the coordinate system mode.
|
|
24
|
+
// given that Babylon.js is left handed by default, we can say that even is left handed and odd is right handed
|
|
25
|
+
const isLeftHanded = cntNeg % 2 === 0;
|
|
26
|
+
|
|
27
|
+
return isLeftHanded;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Multiplies the nodes world matrix with the conversion matrix (-1 in x scaling) to flip the handedness.
|
|
32
|
+
*/
|
|
33
|
+
export function flipHandednessOfNode(node: TransformNode): void {
|
|
34
|
+
const world = node.getWorldMatrix().clone();
|
|
35
|
+
world.multiplyToRef(_CONVERT_HANDEDNESS_MATRIX, world);
|
|
36
|
+
|
|
37
|
+
const scaling = new Vector3();
|
|
38
|
+
const rotation = new Quaternion();
|
|
39
|
+
const position = new Vector3();
|
|
40
|
+
|
|
41
|
+
world.decompose(scaling, rotation, position);
|
|
42
|
+
|
|
43
|
+
node.scaling = scaling;
|
|
44
|
+
node.rotationQuaternion = rotation;
|
|
45
|
+
node.position = position;
|
|
46
|
+
}
|
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
import {
|
|
2
2
|
DynamicTexture,
|
|
3
|
+
LegacyParameter,
|
|
3
4
|
Material,
|
|
4
5
|
PBRMaterial,
|
|
6
|
+
ParameterManager,
|
|
5
7
|
ParameterValue,
|
|
6
8
|
Scene,
|
|
7
9
|
StandardMaterial,
|
|
8
10
|
Texture,
|
|
9
11
|
ViewerError,
|
|
10
12
|
ViewerErrorIds,
|
|
11
|
-
} from '
|
|
12
|
-
import { embedAssets } from '
|
|
13
|
+
} from '../..';
|
|
14
|
+
import { embedAssets } from '../svg-helper';
|
|
13
15
|
import isSvg from 'is-svg';
|
|
14
16
|
import { isString } from 'lodash-es';
|
|
15
17
|
|
|
@@ -26,44 +28,42 @@ type PaintableOptions = {
|
|
|
26
28
|
};
|
|
27
29
|
|
|
28
30
|
/**
|
|
29
|
-
*
|
|
31
|
+
* Creates observer for "paintable" parameter.
|
|
30
32
|
* Basically creates a dynamic texture from the source image and assigns it as albedo (or diffuse) texture.
|
|
31
33
|
*/
|
|
32
|
-
export
|
|
33
|
-
newValue
|
|
34
|
-
|
|
35
|
-
scene: Scene
|
|
36
|
-
): Promise<void> {
|
|
37
|
-
const paintable = parsePaintable(newValue);
|
|
34
|
+
export function createPaintableParameter(parameterManager: ParameterManager, scene: Scene): void {
|
|
35
|
+
parameterManager.setParameterObserver(LegacyParameter.Paintable, async ({ newValue, materials }) => {
|
|
36
|
+
const paintable = parsePaintable(newValue);
|
|
38
37
|
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
38
|
+
// check if value is svg or image source, do the conversion accordingly
|
|
39
|
+
const srcIsSvg = isSvg(paintable.src);
|
|
40
|
+
if (!srcIsSvg && paintable.src.includes('<svg') && paintable.src.includes('</svg>')) {
|
|
41
|
+
// seems like the user tried to use a SVG string, as <svg> tags are used
|
|
42
|
+
// inform the user that this is not a valid SVG string
|
|
43
|
+
throw new ViewerError({
|
|
44
|
+
id: ViewerErrorIds.InvalidParameterValue,
|
|
45
|
+
message: `Invalid value for parameter "paintable" given:\nsource string is no valid SVG string\nGiven value: ${paintable.src}`,
|
|
46
|
+
});
|
|
47
|
+
}
|
|
49
48
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
49
|
+
let imageSource: CanvasImageSource;
|
|
50
|
+
try {
|
|
51
|
+
imageSource = srcIsSvg ? await _createImageFromSvg(paintable.src) : await _createImageFromImgSrc(paintable.src);
|
|
52
|
+
} catch {
|
|
53
|
+
// SVG might be invalid, even if it passes `isSvg` check
|
|
54
|
+
// in this case the image can't be created and will throw an error, which should be handled by the viewer and
|
|
55
|
+
// Combeenation viewer control
|
|
56
|
+
throw new ViewerError({
|
|
57
|
+
id: ViewerErrorIds.InvalidParameterValue,
|
|
58
|
+
message: `Invalid value for parameter "paintable" given:\nimage can't be created from source string\nGiven value: ${paintable.src}`,
|
|
59
|
+
});
|
|
60
|
+
}
|
|
62
61
|
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
62
|
+
// apply image source on desired material(s)
|
|
63
|
+
for (const material of materials) {
|
|
64
|
+
_drawPaintableOnMaterial(material, imageSource, scene, paintable.options);
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
67
|
}
|
|
68
68
|
|
|
69
69
|
/**
|