@combeenation/3d-viewer 17.0.0 → 17.1.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/dist/lib-cjs/buildinfo.json +1 -1
- package/dist/lib-cjs/commonjs.tsconfig.tsbuildinfo +1 -1
- package/dist/lib-cjs/internal/cbn-custom-babylon-loader-plugin.js +1 -1
- package/dist/lib-cjs/internal/cbn-custom-babylon-loader-plugin.js.map +1 -1
- package/dist/lib-cjs/internal/cloning-helper.js +4 -4
- package/dist/lib-cjs/internal/cloning-helper.js.map +1 -1
- package/dist/lib-cjs/internal/geometry-helper.d.ts +1 -1
- package/dist/lib-cjs/internal/geometry-helper.js +1 -2
- package/dist/lib-cjs/internal/geometry-helper.js.map +1 -1
- package/dist/lib-cjs/internal/metadata-helper.js +8 -3
- package/dist/lib-cjs/internal/metadata-helper.js.map +1 -1
- package/dist/lib-cjs/internal/paintable-helper.js +4 -1
- package/dist/lib-cjs/internal/paintable-helper.js.map +1 -1
- package/dist/lib-cjs/internal/tags-helper.d.ts +3 -4
- package/dist/lib-cjs/internal/tags-helper.js +6 -10
- package/dist/lib-cjs/internal/tags-helper.js.map +1 -1
- package/dist/lib-cjs/internal/texture-parameter-helper.js +9 -3
- package/dist/lib-cjs/internal/texture-parameter-helper.js.map +1 -1
- package/dist/lib-cjs/manager/camera-manager.js +8 -2
- package/dist/lib-cjs/manager/camera-manager.js.map +1 -1
- package/dist/lib-cjs/manager/gltf-export-manager.d.ts +1 -2
- package/dist/lib-cjs/manager/gltf-export-manager.js +3 -19
- package/dist/lib-cjs/manager/gltf-export-manager.js.map +1 -1
- package/dist/lib-cjs/manager/model-manager.js +13 -1
- package/dist/lib-cjs/manager/model-manager.js.map +1 -1
- package/dist/lib-cjs/manager/parameter-manager.d.ts +13 -4
- package/dist/lib-cjs/manager/parameter-manager.js +97 -25
- package/dist/lib-cjs/manager/parameter-manager.js.map +1 -1
- package/dist/lib-cjs/viewer-error.d.ts +2 -1
- package/dist/lib-cjs/viewer-error.js +2 -1
- package/dist/lib-cjs/viewer-error.js.map +1 -1
- package/package.json +11 -11
- package/src/internal/cbn-custom-babylon-loader-plugin.ts +2 -2
- package/src/internal/cloning-helper.ts +5 -5
- package/src/internal/geometry-helper.ts +3 -3
- package/src/internal/metadata-helper.ts +8 -6
- package/src/internal/paintable-helper.ts +4 -1
- package/src/internal/tags-helper.ts +4 -8
- package/src/internal/texture-parameter-helper.ts +9 -3
- package/src/manager/camera-manager.ts +10 -2
- package/src/manager/gltf-export-manager.ts +8 -27
- package/src/manager/model-manager.ts +15 -1
- package/src/manager/parameter-manager.ts +108 -29
- package/src/viewer-error.ts +2 -1
|
@@ -12,6 +12,7 @@ export declare const BuiltInParameter: {
|
|
|
12
12
|
Color: string;
|
|
13
13
|
Roughness: string;
|
|
14
14
|
Metallic: string;
|
|
15
|
+
Influence: string;
|
|
15
16
|
/**
|
|
16
17
|
* Texture parameters are always a combination of the channel (e.g. `albedoTexture`) and a sub parameter
|
|
17
18
|
* (e.g. `uScale`). Use this function to create the parameter accordingly
|
|
@@ -24,8 +25,12 @@ export declare const BuiltInParameter: {
|
|
|
24
25
|
export declare const LegacyParameter: {
|
|
25
26
|
Paintable: string;
|
|
26
27
|
};
|
|
28
|
+
export declare type MorphTargetParameterValue = {
|
|
29
|
+
name: string;
|
|
30
|
+
value: number;
|
|
31
|
+
};
|
|
27
32
|
export declare type ParameterName = string;
|
|
28
|
-
export declare type ParameterValue = string | number | boolean;
|
|
33
|
+
export declare type ParameterValue = string | number | boolean | Vector3 | Color3 | MorphTargetParameterValue;
|
|
29
34
|
export declare type TagParameterSubject = {
|
|
30
35
|
tagName: string;
|
|
31
36
|
nodeName?: never;
|
|
@@ -100,17 +105,21 @@ export declare class ParameterManager {
|
|
|
100
105
|
*/
|
|
101
106
|
static parseString(value: ParameterValue): string;
|
|
102
107
|
/**
|
|
103
|
-
* Parses a string of format "(x,y,z)"" to a "Vector3"
|
|
108
|
+
* Parses a string of format "(x,y,z)"" to a "Vector3".\
|
|
109
|
+
* Passing a Vector3 object directly is also valid.
|
|
104
110
|
*/
|
|
105
111
|
static parseVector(value: ParameterValue): Vector3;
|
|
106
112
|
/**
|
|
107
|
-
* Parses a string of format `'(x,y,z)'` with angular degrees to a `Vector3` with rotation information in radians
|
|
113
|
+
* Parses a string of format `'(x,y,z)'` with angular degrees to a `Vector3` with rotation information in radians.\
|
|
114
|
+
* Passing a Vector3 object directly is also valid, in this case no degrees to radians conversion is made.
|
|
108
115
|
*/
|
|
109
116
|
static parseRotation(value: ParameterValue): Vector3;
|
|
110
117
|
/**
|
|
111
|
-
* Parses a string of format `'#rrggbb'` or `'(r,g,b)'` to a `Color3
|
|
118
|
+
* Parses a string of format `'#rrggbb'` or `'(r,g,b)'` to a `Color3`.\
|
|
119
|
+
* Passing a Color3 object directly is also valid.
|
|
112
120
|
*/
|
|
113
121
|
static parseColor(value: ParameterValue): Color3;
|
|
122
|
+
static parseMorphTarget(value: ParameterValue): MorphTargetParameterValue;
|
|
114
123
|
protected _parameterEntries: ParameterEntry[];
|
|
115
124
|
protected _parameterObserver: {
|
|
116
125
|
[parameterName: ParameterName]: ParameterObserver;
|
|
@@ -28,6 +28,7 @@ exports.BuiltInParameter = {
|
|
|
28
28
|
Color: 'color',
|
|
29
29
|
Roughness: 'roughness',
|
|
30
30
|
Metallic: 'metallic',
|
|
31
|
+
Influence: 'influence',
|
|
31
32
|
/**
|
|
32
33
|
* Texture parameters are always a combination of the channel (e.g. `albedoTexture`) and a sub parameter
|
|
33
34
|
* (e.g. `uScale`). Use this function to create the parameter accordingly
|
|
@@ -71,7 +72,14 @@ class ParameterManager {
|
|
|
71
72
|
* Parses and converts input to a number value
|
|
72
73
|
*/
|
|
73
74
|
static parseNumber(value) {
|
|
74
|
-
|
|
75
|
+
const parsedNumber = parseFloat(value.toString());
|
|
76
|
+
if (isNaN(parsedNumber)) {
|
|
77
|
+
throw new index_1.ViewerError({
|
|
78
|
+
id: index_1.ViewerErrorIds.InvalidParameterValue,
|
|
79
|
+
message: `Unable to parse "${value}" to a number`,
|
|
80
|
+
});
|
|
81
|
+
}
|
|
82
|
+
return parsedNumber;
|
|
75
83
|
}
|
|
76
84
|
/**
|
|
77
85
|
* Parses and converts input to a string value
|
|
@@ -79,11 +87,14 @@ class ParameterManager {
|
|
|
79
87
|
static parseString(value) {
|
|
80
88
|
return value.toString();
|
|
81
89
|
}
|
|
82
|
-
// TODO WTT: enable setting Vector3 on the input directly
|
|
83
90
|
/**
|
|
84
|
-
* Parses a string of format "(x,y,z)"" to a "Vector3"
|
|
91
|
+
* Parses a string of format "(x,y,z)"" to a "Vector3".\
|
|
92
|
+
* Passing a Vector3 object directly is also valid.
|
|
85
93
|
*/
|
|
86
94
|
static parseVector(value) {
|
|
95
|
+
if (value instanceof index_1.Vector3) {
|
|
96
|
+
return value.clone();
|
|
97
|
+
}
|
|
87
98
|
if (!(0, lodash_es_1.isString)(value)) {
|
|
88
99
|
throw new index_1.ViewerError({
|
|
89
100
|
id: index_1.ViewerErrorIds.InvalidParameterValue,
|
|
@@ -103,25 +114,33 @@ class ParameterManager {
|
|
|
103
114
|
});
|
|
104
115
|
}
|
|
105
116
|
}
|
|
106
|
-
// TODO WTT: enable setting Vector3 on the input directly (maybe quaternion as well)
|
|
107
117
|
/**
|
|
108
|
-
* Parses a string of format `'(x,y,z)'` with angular degrees to a `Vector3` with rotation information in radians
|
|
118
|
+
* Parses a string of format `'(x,y,z)'` with angular degrees to a `Vector3` with rotation information in radians.\
|
|
119
|
+
* Passing a Vector3 object directly is also valid, in this case no degrees to radians conversion is made.
|
|
109
120
|
*/
|
|
110
121
|
static parseRotation(value) {
|
|
111
122
|
const rotation = ParameterManager.parseVector(value);
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
123
|
+
if ((0, lodash_es_1.isString)(value)) {
|
|
124
|
+
const deg2rad = (deg) => {
|
|
125
|
+
return (deg * Math.PI) / 180;
|
|
126
|
+
};
|
|
127
|
+
return rotation.set(deg2rad(rotation.x), deg2rad(rotation.y), deg2rad(rotation.z));
|
|
128
|
+
}
|
|
129
|
+
else {
|
|
130
|
+
return rotation;
|
|
131
|
+
}
|
|
116
132
|
}
|
|
117
|
-
// TODO WTT: enable setting Color3 on the input directly
|
|
118
133
|
/**
|
|
119
|
-
* Parses a string of format `'#rrggbb'` or `'(r,g,b)'` to a `Color3
|
|
134
|
+
* Parses a string of format `'#rrggbb'` or `'(r,g,b)'` to a `Color3`.\
|
|
135
|
+
* Passing a Color3 object directly is also valid.
|
|
120
136
|
*/
|
|
121
137
|
static parseColor(value) {
|
|
138
|
+
if (value instanceof index_1.Color3) {
|
|
139
|
+
return value.clone();
|
|
140
|
+
}
|
|
122
141
|
const cleanedValue = value.toString().split(' ').join('');
|
|
123
142
|
if (cleanedValue.startsWith('#')) {
|
|
124
|
-
return index_1.Color3.FromHexString(
|
|
143
|
+
return index_1.Color3.FromHexString(cleanedValue);
|
|
125
144
|
}
|
|
126
145
|
if (cleanedValue.startsWith('(') && cleanedValue.endsWith(')')) {
|
|
127
146
|
const rgb = cleanedValue.substring(1, cleanedValue.length - 1);
|
|
@@ -137,6 +156,32 @@ class ParameterManager {
|
|
|
137
156
|
message: `Unable to parse "${value}" to a color: expected "#rrggbb", "(r,g,b)" or any human readable (e.g. Red) property implemented in Color3`,
|
|
138
157
|
});
|
|
139
158
|
}
|
|
159
|
+
static parseMorphTarget(value) {
|
|
160
|
+
let objValue;
|
|
161
|
+
if ((0, lodash_es_1.isString)(value)) {
|
|
162
|
+
try {
|
|
163
|
+
objValue = JSON.parse(value);
|
|
164
|
+
}
|
|
165
|
+
catch (_a) {
|
|
166
|
+
throw new index_1.ViewerError({
|
|
167
|
+
id: index_1.ViewerErrorIds.InvalidParameterValue,
|
|
168
|
+
message: `Unable to parse "${value}" to a morph target parameter value: not a parseable string`,
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
else {
|
|
173
|
+
objValue = value;
|
|
174
|
+
}
|
|
175
|
+
if ((0, lodash_es_1.isString)(objValue.name) && (0, lodash_es_1.isNumber)(objValue.value)) {
|
|
176
|
+
return { name: objValue.name, value: objValue.value };
|
|
177
|
+
}
|
|
178
|
+
else {
|
|
179
|
+
throw new index_1.ViewerError({
|
|
180
|
+
id: index_1.ViewerErrorIds.InvalidParameterValue,
|
|
181
|
+
message: `Unable to parse "${value}" to a morph target parameter value: wrong format`,
|
|
182
|
+
});
|
|
183
|
+
}
|
|
184
|
+
}
|
|
140
185
|
/**
|
|
141
186
|
* Set parameter value for a certain node and calls the corresponding observer if the value has changed
|
|
142
187
|
*
|
|
@@ -253,7 +298,7 @@ class ParameterManager {
|
|
|
253
298
|
*/
|
|
254
299
|
applyParameterValuesToMaterial(material) {
|
|
255
300
|
return __awaiter(this, void 0, void 0, function* () {
|
|
256
|
-
const tags = (0, tags_helper_1.
|
|
301
|
+
const tags = (0, tags_helper_1.getTagsAsStrArr)(material);
|
|
257
302
|
const parameterEntriesToApply = [];
|
|
258
303
|
tags.forEach(tagName => {
|
|
259
304
|
const tagParamEntries = this._getEntriesOfSubject({ tagName });
|
|
@@ -276,7 +321,7 @@ class ParameterManager {
|
|
|
276
321
|
*/
|
|
277
322
|
applyTextureSettingsParameter(material, channel) {
|
|
278
323
|
return __awaiter(this, void 0, void 0, function* () {
|
|
279
|
-
const tags = (0, tags_helper_1.
|
|
324
|
+
const tags = (0, tags_helper_1.getTagsAsStrArr)(material);
|
|
280
325
|
const parameterEntriesToApply = [];
|
|
281
326
|
tags.forEach(tagName => {
|
|
282
327
|
const tagParamEntries = this._getEntriesOfSubject({ tagName });
|
|
@@ -305,7 +350,7 @@ class ParameterManager {
|
|
|
305
350
|
if (nodeParamValue !== undefined) {
|
|
306
351
|
return nodeParamValue;
|
|
307
352
|
}
|
|
308
|
-
const tags = (0, tags_helper_1.
|
|
353
|
+
const tags = (0, tags_helper_1.getTagsAsStrArr)(node);
|
|
309
354
|
const tagParamValue = tags.reduce((accValue, curTag) => {
|
|
310
355
|
// NOTE: it is possible that values are available for multiple tags
|
|
311
356
|
// in this case the resulting parameter value is quite "random" as the last tag in the tag string of the node has
|
|
@@ -327,7 +372,7 @@ class ParameterManager {
|
|
|
327
372
|
if (materialParamValue !== undefined) {
|
|
328
373
|
return materialParamValue;
|
|
329
374
|
}
|
|
330
|
-
const tags = (0, tags_helper_1.
|
|
375
|
+
const tags = (0, tags_helper_1.getTagsAsStrArr)(material);
|
|
331
376
|
const tagParamValue = tags.reduce((accValue, curTag) => {
|
|
332
377
|
const tagParamValue = this.getParameterValue({ tagName: curTag }, parameterName);
|
|
333
378
|
return accValue !== null && accValue !== void 0 ? accValue : tagParamValue;
|
|
@@ -364,6 +409,12 @@ class ParameterManager {
|
|
|
364
409
|
this.setParameterObserver(exports.BuiltInParameter.Material, ({ nodes, newValue }) => __awaiter(this, void 0, void 0, function* () {
|
|
365
410
|
const material = ParameterManager.parseString(newValue);
|
|
366
411
|
for (const node of nodes) {
|
|
412
|
+
if (!(node instanceof index_1.AbstractMesh)) {
|
|
413
|
+
throw new index_1.ViewerError({
|
|
414
|
+
id: index_1.ViewerErrorIds.InvalidParameterSubject,
|
|
415
|
+
message: `Material can't be set, as the target node "${node.name}" is not a mesh`,
|
|
416
|
+
});
|
|
417
|
+
}
|
|
367
418
|
// NOTE: don't use node.isEnabled() as visibility observer is probably called in same cycle but later
|
|
368
419
|
// however the parameter value is already correct at this stage
|
|
369
420
|
// we have to go through all parents as well, because a parent may have been set to false, which also disables
|
|
@@ -377,12 +428,8 @@ class ParameterManager {
|
|
|
377
428
|
}
|
|
378
429
|
curNode = curNode.parent;
|
|
379
430
|
}
|
|
380
|
-
// parameter visibility has priority, but if the visiblity is not controlled by the parameter use the plain
|
|
381
|
-
// Babylon.js isEnabled() check
|
|
382
431
|
const visible = visibleByParameter !== undefined ? ParameterManager.parseBoolean(visibleByParameter) : node.isEnabled();
|
|
383
432
|
if (visible) {
|
|
384
|
-
// TODO WTT: check mesh type and throw error if it doesn't fit
|
|
385
|
-
// think of creating a framework with type guards (isMesh, canHaveMaterial, ...) around this
|
|
386
433
|
yield this.viewer.materialManager.setMaterialOnMesh(material, node);
|
|
387
434
|
}
|
|
388
435
|
else {
|
|
@@ -420,7 +467,10 @@ class ParameterManager {
|
|
|
420
467
|
material.diffuseColor = color;
|
|
421
468
|
break;
|
|
422
469
|
default:
|
|
423
|
-
throw new
|
|
470
|
+
throw new index_1.ViewerError({
|
|
471
|
+
id: index_1.ViewerErrorIds.InvalidParameterSubject,
|
|
472
|
+
message: `Setting color for material of instance "${materialCls}" not implemented`,
|
|
473
|
+
});
|
|
424
474
|
}
|
|
425
475
|
}
|
|
426
476
|
}));
|
|
@@ -436,7 +486,10 @@ class ParameterManager {
|
|
|
436
486
|
material.roughness = roughness;
|
|
437
487
|
break;
|
|
438
488
|
default:
|
|
439
|
-
throw new
|
|
489
|
+
throw new index_1.ViewerError({
|
|
490
|
+
id: index_1.ViewerErrorIds.InvalidParameterSubject,
|
|
491
|
+
message: `Setting rougness for material of instance "${materialCls}" not implemented`,
|
|
492
|
+
});
|
|
440
493
|
}
|
|
441
494
|
}
|
|
442
495
|
}));
|
|
@@ -449,7 +502,26 @@ class ParameterManager {
|
|
|
449
502
|
material.metallic = metallic;
|
|
450
503
|
break;
|
|
451
504
|
default:
|
|
452
|
-
throw new
|
|
505
|
+
throw new index_1.ViewerError({
|
|
506
|
+
id: index_1.ViewerErrorIds.InvalidParameterSubject,
|
|
507
|
+
message: `Setting metallic for material of instance "${materialCls}" not implemented`,
|
|
508
|
+
});
|
|
509
|
+
}
|
|
510
|
+
}
|
|
511
|
+
}));
|
|
512
|
+
this.setParameterObserver(exports.BuiltInParameter.Influence, ({ nodes, newValue }) => __awaiter(this, void 0, void 0, function* () {
|
|
513
|
+
var _a;
|
|
514
|
+
const morphTargetValue = ParameterManager.parseMorphTarget(newValue);
|
|
515
|
+
for (const node of nodes) {
|
|
516
|
+
const target = node instanceof index_1.AbstractMesh && ((_a = node.morphTargetManager) === null || _a === void 0 ? void 0 : _a.getTargetByName(morphTargetValue.name));
|
|
517
|
+
if (target) {
|
|
518
|
+
target.influence = morphTargetValue.value;
|
|
519
|
+
}
|
|
520
|
+
else {
|
|
521
|
+
throw new index_1.ViewerError({
|
|
522
|
+
id: index_1.ViewerErrorIds.InvalidParameterSubject,
|
|
523
|
+
message: `Morph target couldn't be found, node: ${node.name} / morph target: ${morphTargetValue.name}`,
|
|
524
|
+
});
|
|
453
525
|
}
|
|
454
526
|
}
|
|
455
527
|
}));
|
|
@@ -532,7 +604,7 @@ class ParameterManager {
|
|
|
532
604
|
}
|
|
533
605
|
}
|
|
534
606
|
else if (isTagParameterSubject(subject)) {
|
|
535
|
-
materials = assetContainer.materials.filter(material =>
|
|
607
|
+
materials = assetContainer.materials.filter(material => index_1.Tags.MatchesQuery(material, subject.tagName));
|
|
536
608
|
}
|
|
537
609
|
return materials;
|
|
538
610
|
}
|
|
@@ -548,7 +620,7 @@ class ParameterManager {
|
|
|
548
620
|
}
|
|
549
621
|
}
|
|
550
622
|
else if (isTagParameterSubject(subject)) {
|
|
551
|
-
nodes = allNodes.filter(node =>
|
|
623
|
+
nodes = allNodes.filter(node => index_1.Tags.MatchesQuery(node, subject.tagName));
|
|
552
624
|
}
|
|
553
625
|
return nodes;
|
|
554
626
|
}
|
|
@@ -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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"}
|
|
@@ -19,14 +19,15 @@ declare type ViewerErrorData = {
|
|
|
19
19
|
*/
|
|
20
20
|
export declare const ViewerErrorIds: {
|
|
21
21
|
InvalidParameterValue: string;
|
|
22
|
+
InvalidParameterSubject: string;
|
|
22
23
|
ModelNotRegistered: string;
|
|
23
24
|
ModelAlreadyExists: string;
|
|
24
25
|
ModelIsNotAClone: string;
|
|
25
26
|
AssetLoadingFailed: string;
|
|
26
|
-
TextureCouldNotBeParsed: string;
|
|
27
27
|
MaterialAlreadyExists: string;
|
|
28
28
|
NotAClonedMaterial: string;
|
|
29
29
|
InvalidDecalConfiguration: string;
|
|
30
|
+
InvalidCameraType: string;
|
|
30
31
|
};
|
|
31
32
|
/** @internal */
|
|
32
33
|
export declare class ViewerError extends Error {
|
|
@@ -17,14 +17,15 @@ exports.ViewerError = exports.ViewerErrorIds = void 0;
|
|
|
17
17
|
*/
|
|
18
18
|
exports.ViewerErrorIds = {
|
|
19
19
|
InvalidParameterValue: 'InvalidParameterValue',
|
|
20
|
+
InvalidParameterSubject: 'InvalidParameterSubject',
|
|
20
21
|
ModelNotRegistered: 'ModelNotRegistered',
|
|
21
22
|
ModelAlreadyExists: 'ModelAlreadyExists',
|
|
22
23
|
ModelIsNotAClone: 'ModelIsNotAClone',
|
|
23
24
|
AssetLoadingFailed: 'AssetLoadingFailed',
|
|
24
|
-
TextureCouldNotBeParsed: 'TextureCouldNotBeParsed',
|
|
25
25
|
MaterialAlreadyExists: 'MaterialAlreadyExists',
|
|
26
26
|
NotAClonedMaterial: 'NotAClonedMaterial',
|
|
27
27
|
InvalidDecalConfiguration: 'InvalidDecalConfiguration',
|
|
28
|
+
InvalidCameraType: 'InvalidCameraType',
|
|
28
29
|
};
|
|
29
30
|
/** @internal */
|
|
30
31
|
class ViewerError extends Error {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"viewer-error.js","sourceRoot":"","sources":["../../src/viewer-error.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAQH;;;;;;;;GAQG;AACU,QAAA,cAAc,GAAG;IAC5B,qBAAqB,EAAE,uBAAuB;IAC9C,kBAAkB,EAAE,oBAAoB;IACxC,kBAAkB,EAAE,oBAAoB;IACxC,gBAAgB,EAAE,kBAAkB;IACpC,kBAAkB,EAAE,oBAAoB;IACxC,
|
|
1
|
+
{"version":3,"file":"viewer-error.js","sourceRoot":"","sources":["../../src/viewer-error.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAQH;;;;;;;;GAQG;AACU,QAAA,cAAc,GAAG;IAC5B,qBAAqB,EAAE,uBAAuB;IAC9C,uBAAuB,EAAE,yBAAyB;IAClD,kBAAkB,EAAE,oBAAoB;IACxC,kBAAkB,EAAE,oBAAoB;IACxC,gBAAgB,EAAE,kBAAkB;IACpC,kBAAkB,EAAE,oBAAoB;IACxC,qBAAqB,EAAE,uBAAuB;IAC9C,kBAAkB,EAAE,oBAAoB;IACxC,yBAAyB,EAAE,2BAA2B;IACtD,iBAAiB,EAAE,mBAAmB;CACvC,CAAC;AAEF,gBAAgB;AAChB,MAAa,WAAY,SAAQ,KAAK;IAGpC,YAAY,IAAqB;QAC/B,mHAAmH;QACnH,oDAAoD;QACpD,KAAK,CAAC,IAAI,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QACtC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,EAAE,CAAC;IAC/B,CAAC;IAED;;;;;;;;;;OAUG;IACH,MAAM,CAAC,mBAAmB,CAAC,OAAe;;QACxC,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,sBAAc,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAEzD,SAAS;QACT,2CAA2C;QAC3C,uCAAuC;QACvC,kGAAkG;QAClG,wCAAwC;QACxC,2GAA2G;QAC3G,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,YAAY,GAAG,QAAQ,GAAG,eAAe,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnF,MAAM,EAAE,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,0CAAE,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,CAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,MAAM,0CAAE,GAAG,KAAI,OAAO,CAAC;QAE3C,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,CAAC;IACrB,CAAC;CACF;AApCD,kCAoCC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@combeenation/3d-viewer",
|
|
3
|
-
"version": "17.
|
|
3
|
+
"version": "17.1.0",
|
|
4
4
|
"description": "Combeenation 3D Viewer",
|
|
5
5
|
"homepage": "https://github.com/Combeenation/3d-viewer#readme",
|
|
6
6
|
"bugs": {
|
|
@@ -45,10 +45,10 @@
|
|
|
45
45
|
},
|
|
46
46
|
"prettier": "@combeenation/prettier-config",
|
|
47
47
|
"dependencies": {
|
|
48
|
-
"@babylonjs/core": "7.
|
|
49
|
-
"@babylonjs/gui": "7.
|
|
50
|
-
"@babylonjs/loaders": "7.
|
|
51
|
-
"@babylonjs/serializers": "7.
|
|
48
|
+
"@babylonjs/core": "7.43.0",
|
|
49
|
+
"@babylonjs/gui": "7.43.0",
|
|
50
|
+
"@babylonjs/loaders": "7.43.0",
|
|
51
|
+
"@babylonjs/serializers": "7.43.0",
|
|
52
52
|
"eventemitter3": "4.0.7",
|
|
53
53
|
"is-svg": "^5.0.0",
|
|
54
54
|
"lodash-es": "4.17.21"
|
|
@@ -78,14 +78,14 @@
|
|
|
78
78
|
"webpack-merge": "5.8.0"
|
|
79
79
|
},
|
|
80
80
|
"optionalDependencies": {
|
|
81
|
-
"@babylonjs/gui-editor": "7.
|
|
82
|
-
"@babylonjs/inspector": "7.
|
|
83
|
-
"@babylonjs/materials": "7.
|
|
84
|
-
"@babylonjs/node-editor": "7.
|
|
85
|
-
"@babylonjs/node-geometry-editor": "7.
|
|
81
|
+
"@babylonjs/gui-editor": "7.43.0",
|
|
82
|
+
"@babylonjs/inspector": "7.43.0",
|
|
83
|
+
"@babylonjs/materials": "7.43.0",
|
|
84
|
+
"@babylonjs/node-editor": "7.43.0",
|
|
85
|
+
"@babylonjs/node-geometry-editor": "7.43.0"
|
|
86
86
|
},
|
|
87
87
|
"dependenciesComments": {
|
|
88
|
-
"@babylonjs": "Latest version 7.
|
|
88
|
+
"@babylonjs": "Latest version 7.43.0 comes with getters for tagged entities in asset containers, as requested by us (see [PR](https://github.com/BabylonJS/Babylon.js/pull/16029))"
|
|
89
89
|
},
|
|
90
90
|
"optionalDependenciesComments": {
|
|
91
91
|
"@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)"
|
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
createDecalMesh,
|
|
11
11
|
} from '../index';
|
|
12
12
|
import { setInternalMetadataValue } from './metadata-helper';
|
|
13
|
-
import { deleteAllTags,
|
|
13
|
+
import { deleteAllTags, getTagsAsStrArr, setTagsAsString } from './tags-helper';
|
|
14
14
|
import { isArray, isString } from 'lodash-es';
|
|
15
15
|
|
|
16
16
|
type DataWithMeshes = { meshes: unknown[] };
|
|
@@ -165,7 +165,7 @@ function _reconstructTagsForInstancedMeshes(dataParsed: unknown, container: Asse
|
|
|
165
165
|
if (importedMesh instanceof InstancedMesh) {
|
|
166
166
|
// remove all tags from the imported mesh if there are some, since these tags are probably coming from the
|
|
167
167
|
// source mesh, if no tags are set there is no need for further operation though
|
|
168
|
-
const hasTags =
|
|
168
|
+
const hasTags = getTagsAsStrArr(importedMesh);
|
|
169
169
|
if (hasTags) {
|
|
170
170
|
deleteAllTags(importedMesh);
|
|
171
171
|
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
getInternalMetadataValue,
|
|
17
17
|
setInternalMetadataValue,
|
|
18
18
|
} from './metadata-helper';
|
|
19
|
-
import { cloneTags,
|
|
19
|
+
import { cloneTags, getTagsAsStrArr, setTagsAsStrArr } from './tags-helper';
|
|
20
20
|
|
|
21
21
|
const _defaultNodeNamingStrategy: NodeNamingStrategy = (node: TransformNode, clonedObjectId: string): string => {
|
|
22
22
|
return `${node.name}.${clonedObjectId}`;
|
|
@@ -99,9 +99,9 @@ export function cloneMaterial(
|
|
|
99
99
|
throw new Error(`Cloning material "${material.id}" failed`);
|
|
100
100
|
}
|
|
101
101
|
|
|
102
|
-
const sourceTags =
|
|
102
|
+
const sourceTags = getTagsAsStrArr(material);
|
|
103
103
|
const mappedTags = sourceTags.map(tag => tagNamingStrategy!(tag, clone.id));
|
|
104
|
-
|
|
104
|
+
setTagsAsStrArr(clone, mappedTags);
|
|
105
105
|
|
|
106
106
|
return clone;
|
|
107
107
|
}
|
|
@@ -195,9 +195,9 @@ function _cloneNode(
|
|
|
195
195
|
|
|
196
196
|
resultNode.id = cloneName;
|
|
197
197
|
|
|
198
|
-
const sourceTags =
|
|
198
|
+
const sourceTags = getTagsAsStrArr(node);
|
|
199
199
|
const mappedTags = sourceTags.map(tag => tagNamingStrategy(tag, newModelName));
|
|
200
|
-
|
|
200
|
+
setTagsAsStrArr(resultNode, mappedTags);
|
|
201
201
|
|
|
202
202
|
resultNode._parentContainer = assetContainer;
|
|
203
203
|
// TODO WTT: create global helper function for distinguishing between transform nodes and meshes
|
|
@@ -8,12 +8,12 @@ import {
|
|
|
8
8
|
MorphTarget,
|
|
9
9
|
MorphTargetManager,
|
|
10
10
|
ParameterSubject,
|
|
11
|
+
Tags,
|
|
11
12
|
TransformNode,
|
|
12
13
|
Vector3,
|
|
13
14
|
VertexBuffer,
|
|
14
15
|
} from '../index';
|
|
15
16
|
import { cloneInternalMetadata } from './metadata-helper';
|
|
16
|
-
import { hasTag } from './tags-helper';
|
|
17
17
|
|
|
18
18
|
/**
|
|
19
19
|
* Find out if a node is part of a list of excluded geometry
|
|
@@ -26,7 +26,7 @@ export function isNodeExcluded(nodeToCheck: TransformNode, list: ExcludedGeometr
|
|
|
26
26
|
const checkNode = (excludedNode: TransformNode): boolean => excludedNode === nodeToCheck;
|
|
27
27
|
const checkTagManagerSubject = (excludedSubject: ParameterSubject): boolean => {
|
|
28
28
|
const nameMatches = !!excludedSubject.nodeName && excludedSubject.nodeName === nodeToCheck.name;
|
|
29
|
-
const tagMatches = !!excludedSubject.tagName &&
|
|
29
|
+
const tagMatches = !!excludedSubject.tagName && Tags.MatchesQuery(nodeToCheck, excludedSubject.tagName);
|
|
30
30
|
return nameMatches || tagMatches;
|
|
31
31
|
};
|
|
32
32
|
const check = (geometryToExclude: ExcludedGeometry): boolean => {
|
|
@@ -54,7 +54,7 @@ export function isNodeExcluded(nodeToCheck: TransformNode, list: ExcludedGeometr
|
|
|
54
54
|
export function createMeshFromInstancedMesh(
|
|
55
55
|
instancedMesh: InstancedMesh,
|
|
56
56
|
newName: string,
|
|
57
|
-
clonedParent: TransformNode
|
|
57
|
+
clonedParent: TransformNode | null
|
|
58
58
|
): Mesh {
|
|
59
59
|
// first create a clone of the source mesh
|
|
60
60
|
const newMesh = instancedMesh.sourceMesh.clone(newName, clonedParent, true);
|
|
@@ -55,12 +55,14 @@ export function getInternalMetadataValue<K extends MetadataKeys>(object: Metadat
|
|
|
55
55
|
* The rest, which is coming from Babylon.js directly, is left untouched as we don't interfere with this data anyway.
|
|
56
56
|
*/
|
|
57
57
|
export function cloneInternalMetadata(sourceObject: MetadataTarget, targetObject: MetadataTarget): void {
|
|
58
|
-
if (!sourceObject._internalMetadata
|
|
59
|
-
targetObject._internalMetadata
|
|
58
|
+
if (!sourceObject._internalMetadata) {
|
|
59
|
+
delete targetObject._internalMetadata;
|
|
60
60
|
} else {
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
61
|
+
// metadata available, create a shallow copy on top level anyway
|
|
62
|
+
targetObject._internalMetadata = { ...sourceObject._internalMetadata };
|
|
63
|
+
if (sourceObject._internalMetadata?.cbn) {
|
|
64
|
+
// create shallow copy on cbn level as well
|
|
65
|
+
targetObject._internalMetadata.cbn = { ...sourceObject._internalMetadata.cbn };
|
|
66
|
+
}
|
|
65
67
|
}
|
|
66
68
|
}
|
|
@@ -200,7 +200,10 @@ function _drawPaintableOnMaterial(
|
|
|
200
200
|
(material as StandardMaterial).diffuseTexture = texture;
|
|
201
201
|
break;
|
|
202
202
|
default:
|
|
203
|
-
throw new
|
|
203
|
+
throw new ViewerError({
|
|
204
|
+
id: ViewerErrorIds.InvalidParameterSubject,
|
|
205
|
+
message: `Setting paintable texture for material of instance "${materialCls}" not implemented`,
|
|
206
|
+
});
|
|
204
207
|
}
|
|
205
208
|
}
|
|
206
209
|
|
|
@@ -1,23 +1,19 @@
|
|
|
1
1
|
import { Material, Node, Tags } from '../index';
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
|
-
* This is
|
|
4
|
+
* This is an internal wrapper around Babylon.js Tags API, as the API is really clunky to use
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
7
|
type TagTarget = Node | Material;
|
|
8
8
|
|
|
9
|
-
export function
|
|
10
|
-
return Tags.MatchesQuery(object, tag);
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export function getTags(object: TagTarget): string[] {
|
|
9
|
+
export function getTagsAsStrArr(object: TagTarget): string[] {
|
|
14
10
|
const tagsObject = Tags.GetTags(object, false) ?? {};
|
|
15
11
|
const tags = Object.keys(tagsObject);
|
|
16
12
|
|
|
17
13
|
return tags;
|
|
18
14
|
}
|
|
19
15
|
|
|
20
|
-
export function
|
|
16
|
+
export function setTagsAsStrArr(object: TagTarget, tags: string[]): void {
|
|
21
17
|
deleteAllTags(object);
|
|
22
18
|
const tagsString = tags.join(' ');
|
|
23
19
|
Tags.AddTagsTo(object, tagsString);
|
|
@@ -30,7 +26,7 @@ export function setTagsAsString(object: TagTarget, tagsString: string): void {
|
|
|
30
26
|
|
|
31
27
|
export function cloneTags(sourceObject: TagTarget, destinationObject: TagTarget): void {
|
|
32
28
|
if (Tags.HasTags(sourceObject)) {
|
|
33
|
-
|
|
29
|
+
setTagsAsString(destinationObject, Tags.GetTags(sourceObject));
|
|
34
30
|
}
|
|
35
31
|
}
|
|
36
32
|
|