@combeenation/3d-viewer 3.1.1-alpha6 → 4.0.0-alpha10
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 +1 -0
- package/dist/lib-cjs/api/classes/element.d.ts +1 -2
- package/dist/lib-cjs/api/classes/element.js +52 -29
- package/dist/lib-cjs/api/classes/element.js.map +1 -1
- package/dist/lib-cjs/api/util/globalTypes.d.ts +4 -0
- package/dist/lib-cjs/api/util/resourceHelper.d.ts +3 -6
- package/dist/lib-cjs/api/util/resourceHelper.js +27 -11
- package/dist/lib-cjs/api/util/resourceHelper.js.map +1 -1
- package/package.json +1 -1
- package/src/api/classes/element.ts +31 -21
- package/src/api/util/globalTypes.ts +4 -0
- package/src/api/util/resourceHelper.ts +19 -11
- package/src/pagesconfig.json +13 -4
package/README.md
CHANGED
|
@@ -33,6 +33,7 @@
|
|
|
33
33
|
options: {
|
|
34
34
|
preserveDrawingBuffer: true,
|
|
35
35
|
stencil: true,
|
|
36
|
+
xrCompatible: false, // required to fix WebXR issue in Safari 15 as mentioned in the BabylonJS Forum: https://forum.babylonjs.com/t/safari-15-0-breaks-every-babylonjs-application/23973
|
|
36
37
|
},
|
|
37
38
|
},
|
|
38
39
|
scene: {
|
|
@@ -17,7 +17,6 @@ export declare class Element extends ElementParameterizable {
|
|
|
17
17
|
protected readonly _dottedNodes: Map<DottedPath, TransformNode>;
|
|
18
18
|
protected readonly _parameterObservers: Map<string, ParameterObserver[]>;
|
|
19
19
|
protected _highlightLayer?: HighlightLayer;
|
|
20
|
-
protected _paintableTxtureId: number;
|
|
21
20
|
readonly nodes: TransformNode[];
|
|
22
21
|
/**
|
|
23
22
|
* Constructor.
|
|
@@ -101,7 +100,7 @@ export declare class Element extends ElementParameterizable {
|
|
|
101
100
|
/**
|
|
102
101
|
* Draws a image onto a `paintable` defined via {@link PaintableDefinition}.
|
|
103
102
|
*/
|
|
104
|
-
drawPaintable(paintable: string, imageSource:
|
|
103
|
+
drawPaintable(paintable: string, imageSource: CanvasImageSource): Promise<Element>;
|
|
105
104
|
/**
|
|
106
105
|
* Draws a SVG string onto a `paintable` defined via {@link PaintableDefinition}.
|
|
107
106
|
*/
|
|
@@ -5,13 +5,13 @@ var tslib_1 = require("tslib");
|
|
|
5
5
|
var highlightLayer_1 = require("@babylonjs/core/Layers/highlightLayer");
|
|
6
6
|
var material_1 = require("@babylonjs/core/Materials/material");
|
|
7
7
|
var standardMaterial_1 = require("@babylonjs/core/Materials/standardMaterial");
|
|
8
|
+
var dynamicTexture_1 = require("@babylonjs/core/Materials/Textures/dynamicTexture");
|
|
8
9
|
var math_axis_1 = require("@babylonjs/core/Maths/math.axis");
|
|
9
10
|
var math_color_1 = require("@babylonjs/core/Maths/math.color");
|
|
10
11
|
var abstractMesh_1 = require("@babylonjs/core/Meshes/abstractMesh");
|
|
11
12
|
var instancedMesh_1 = require("@babylonjs/core/Meshes/instancedMesh");
|
|
12
13
|
var mesh_1 = require("@babylonjs/core/Meshes/mesh");
|
|
13
14
|
var transformNode_1 = require("@babylonjs/core/Meshes/transformNode");
|
|
14
|
-
var texture_1 = require("@babylonjs/core/Materials/Textures/texture");
|
|
15
15
|
var lodash_es_1 = require("lodash-es");
|
|
16
16
|
var babylonHelper_1 = require("../util/babylonHelper");
|
|
17
17
|
var resourceHelper_1 = require("../util/resourceHelper");
|
|
@@ -38,7 +38,6 @@ var Element = /** @class */ (function (_super) {
|
|
|
38
38
|
_this.name = name;
|
|
39
39
|
_this._dottedNodes = new Map();
|
|
40
40
|
_this._parameterObservers = new Map();
|
|
41
|
-
_this._paintableTxtureId = 0;
|
|
42
41
|
_this.nodes = [];
|
|
43
42
|
if ((_a = process.env.NODE_ENV) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes('dev')) {
|
|
44
43
|
_this.assertPathDefinitions();
|
|
@@ -295,41 +294,59 @@ var Element = /** @class */ (function (_super) {
|
|
|
295
294
|
* Draws a image onto a `paintable` defined via {@link PaintableDefinition}.
|
|
296
295
|
*/
|
|
297
296
|
Element.prototype.drawPaintable = function (paintable, imageSource) {
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
297
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
298
|
+
var paintableDefinition, node, widthAndHeight, texture, ctx;
|
|
299
|
+
return tslib_1.__generator(this, function (_a) {
|
|
300
|
+
paintableDefinition = this.getPaintableDefinition(paintable);
|
|
301
|
+
node = this.getPaintableNode(paintable);
|
|
302
|
+
if (!(node instanceof abstractMesh_1.AbstractMesh)) {
|
|
303
|
+
throw new Error("The path must be an instance of \"AbstractMesh\" for paintable \"" + paintable + "\" " +
|
|
304
|
+
("in element \"" + this.id + "\"."));
|
|
305
|
+
}
|
|
306
|
+
if (node.material && !lodash_es_1.get(node.metadata, 'dirty.material')) {
|
|
307
|
+
babylonHelper_1.cloneTransformNodeMaterial(node);
|
|
308
|
+
}
|
|
309
|
+
if (!node.material) {
|
|
310
|
+
node.material = new standardMaterial_1.StandardMaterial(this.id + "." + paintable + ".material", this.variant.viewer.scene);
|
|
311
|
+
}
|
|
312
|
+
node.material.transparencyMode = material_1.Material.MATERIAL_ALPHATESTANDBLEND;
|
|
313
|
+
if (!lodash_es_1.get(node.metadata, 'dirty.material.texture')) {
|
|
314
|
+
// inject initial value and mark as dirty
|
|
315
|
+
babylonHelper_1.injectTransformNodeMetadata(node, { dirty: { material: { texture: true } } }, false);
|
|
316
|
+
}
|
|
317
|
+
widthAndHeight = {
|
|
318
|
+
width: imageSource.width,
|
|
319
|
+
height: imageSource.height
|
|
320
|
+
};
|
|
321
|
+
if (lodash_es_1.isNumber(paintableDefinition.textureOptions)) {
|
|
322
|
+
widthAndHeight.width = paintableDefinition.textureOptions;
|
|
323
|
+
widthAndHeight.height = paintableDefinition.textureOptions;
|
|
324
|
+
}
|
|
325
|
+
else if (lodash_es_1.isPlainObject(paintableDefinition.textureOptions)) {
|
|
326
|
+
widthAndHeight.width = paintableDefinition.textureOptions.width;
|
|
327
|
+
widthAndHeight.height = paintableDefinition.textureOptions.height;
|
|
328
|
+
}
|
|
329
|
+
texture = new dynamicTexture_1.DynamicTexture(this.id + "." + paintable + ".texture", widthAndHeight, this.variant.viewer.scene, false);
|
|
330
|
+
ctx = texture.getContext();
|
|
331
|
+
ctx.drawImage(imageSource, 0, 0);
|
|
332
|
+
texture.update(false);
|
|
333
|
+
babylonHelper_1.setMaterialTexture(node, texture, false);
|
|
334
|
+
return [2 /*return*/, this];
|
|
335
|
+
});
|
|
336
|
+
});
|
|
320
337
|
};
|
|
321
338
|
/**
|
|
322
339
|
* Draws a SVG string onto a `paintable` defined via {@link PaintableDefinition}.
|
|
323
340
|
*/
|
|
324
341
|
Element.prototype.drawPaintableFromSvg = function (paintable, svgSource) {
|
|
325
342
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
326
|
-
var
|
|
343
|
+
var image;
|
|
327
344
|
return tslib_1.__generator(this, function (_a) {
|
|
328
345
|
switch (_a.label) {
|
|
329
|
-
case 0: return [4 /*yield*/, resourceHelper_1.
|
|
346
|
+
case 0: return [4 /*yield*/, resourceHelper_1.createImageFromSvg(svgSource)];
|
|
330
347
|
case 1:
|
|
331
|
-
|
|
332
|
-
return [2 /*return*/, this.drawPaintable(paintable,
|
|
348
|
+
image = _a.sent();
|
|
349
|
+
return [2 /*return*/, this.drawPaintable(paintable, image)];
|
|
333
350
|
}
|
|
334
351
|
});
|
|
335
352
|
});
|
|
@@ -339,8 +356,14 @@ var Element = /** @class */ (function (_super) {
|
|
|
339
356
|
*/
|
|
340
357
|
Element.prototype.drawPaintableFromImgSrc = function (paintable, imgSource) {
|
|
341
358
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
359
|
+
var image;
|
|
342
360
|
return tslib_1.__generator(this, function (_a) {
|
|
343
|
-
|
|
361
|
+
switch (_a.label) {
|
|
362
|
+
case 0: return [4 /*yield*/, resourceHelper_1.createImageFromImgSrc(imgSource)];
|
|
363
|
+
case 1:
|
|
364
|
+
image = _a.sent();
|
|
365
|
+
return [2 /*return*/, this.drawPaintable(paintable, image)];
|
|
366
|
+
}
|
|
344
367
|
});
|
|
345
368
|
});
|
|
346
369
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"element.js","sourceRoot":"","sources":["../../../../src/api/classes/element.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"element.js","sourceRoot":"","sources":["../../../../src/api/classes/element.ts"],"names":[],"mappings":"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"}
|
|
@@ -206,6 +206,10 @@ declare type CameraDefinition = {
|
|
|
206
206
|
/**
|
|
207
207
|
* `arc` is a default camera position where the 3D-model is the center and the camera rotates around the 3D-model.
|
|
208
208
|
* More Information about `arc` in [ArcRotateCamera](https://doc.babylonjs.com/typedoc/classes/babylon.arcrotatecamera).
|
|
209
|
+
*
|
|
210
|
+
* NOTE: While "baked" camera definitions from a GLB or babylon file can currently not be instatiated within the `Specification`, it's still possible to use them in the viewer.\
|
|
211
|
+
* For the moment all camera definitions inside these files are automatically added to the scene and can be actived using the {@link switchCamera} function.\
|
|
212
|
+
* The `newCamera` input has to match the name of the camera node inside the GLB/babylon file.
|
|
209
213
|
*/
|
|
210
214
|
type: 'arc';
|
|
211
215
|
/**
|
|
@@ -22,9 +22,6 @@ declare const uuidv4: () => any;
|
|
|
22
22
|
* Merges multiple maps.
|
|
23
23
|
*/
|
|
24
24
|
declare const mergeMaps: <TKey, TValue>(...maps: Map<TKey, TValue>[]) => Map<TKey, TValue>;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
*/
|
|
29
|
-
declare const createImageUrlFromSvg: (svgSrc: string) => Promise<string>;
|
|
30
|
-
export { loadJson, loadText, debounce, uuidv4, mergeMaps, createImageUrlFromSvg };
|
|
25
|
+
declare const createImageFromSvg: (svgSrc: string) => Promise<HTMLImageElement>;
|
|
26
|
+
declare const createImageFromImgSrc: (imgSrc: string) => Promise<HTMLImageElement>;
|
|
27
|
+
export { loadJson, loadText, debounce, uuidv4, mergeMaps, createImageFromSvg, createImageFromImgSrc };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.createImageFromImgSrc = exports.createImageFromSvg = exports.mergeMaps = exports.uuidv4 = exports.debounce = exports.loadText = exports.loadJson = void 0;
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
5
|
var event_1 = require("../classes/event");
|
|
6
6
|
/**
|
|
@@ -114,26 +114,42 @@ var mergeMaps = function () {
|
|
|
114
114
|
return resultMap;
|
|
115
115
|
};
|
|
116
116
|
exports.mergeMaps = mergeMaps;
|
|
117
|
-
|
|
118
|
-
* Converts a svg string into an URL with a base64 representation of that image.\
|
|
119
|
-
* This URL can be used as the basis of a paintable texture.
|
|
120
|
-
*/
|
|
121
|
-
var createImageUrlFromSvg = function (svgSrc) {
|
|
117
|
+
var createImageFromSvg = function (svgSrc) {
|
|
122
118
|
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
123
|
-
var svgWithAssetsEmbedded,
|
|
119
|
+
var svgWithAssetsEmbedded, svgEncoded;
|
|
124
120
|
return tslib_1.__generator(this, function (_a) {
|
|
125
121
|
switch (_a.label) {
|
|
126
122
|
case 0: return [4 /*yield*/, _embedAssets(svgSrc)];
|
|
127
123
|
case 1:
|
|
128
124
|
svgWithAssetsEmbedded = _a.sent();
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
125
|
+
svgEncoded = 'data:image/svg+xml,' + encodeURIComponent(svgWithAssetsEmbedded);
|
|
126
|
+
return [2 /*return*/, createImageFromImgSrc(svgEncoded)];
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
});
|
|
130
|
+
};
|
|
131
|
+
exports.createImageFromSvg = createImageFromSvg;
|
|
132
|
+
var createImageFromImgSrc = function (imgSrc) {
|
|
133
|
+
return tslib_1.__awaiter(this, void 0, void 0, function () {
|
|
134
|
+
var img;
|
|
135
|
+
return tslib_1.__generator(this, function (_a) {
|
|
136
|
+
switch (_a.label) {
|
|
137
|
+
case 0:
|
|
138
|
+
img = new Image();
|
|
139
|
+
return [4 /*yield*/, new Promise(function (resolve) {
|
|
140
|
+
img.onload = function () {
|
|
141
|
+
setTimeout(resolve, 0);
|
|
142
|
+
};
|
|
143
|
+
img.src = imgSrc;
|
|
144
|
+
})];
|
|
145
|
+
case 1:
|
|
146
|
+
_a.sent();
|
|
147
|
+
return [2 /*return*/, img];
|
|
132
148
|
}
|
|
133
149
|
});
|
|
134
150
|
});
|
|
135
151
|
};
|
|
136
|
-
exports.
|
|
152
|
+
exports.createImageFromImgSrc = createImageFromImgSrc;
|
|
137
153
|
/**
|
|
138
154
|
* Replaces all supported image & font URLs in the given SVG with their base64 representation.
|
|
139
155
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resourceHelper.js","sourceRoot":"","sources":["../../../../src/api/util/resourceHelper.ts"],"names":[],"mappings":";;;;
|
|
1
|
+
{"version":3,"file":"resourceHelper.js","sourceRoot":"","sources":["../../../../src/api/util/resourceHelper.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { HighlightLayer } from '@babylonjs/core/Layers/highlightLayer';
|
|
2
2
|
import { Material } from '@babylonjs/core/Materials/material';
|
|
3
3
|
import { StandardMaterial } from '@babylonjs/core/Materials/standardMaterial';
|
|
4
|
+
import { DynamicTexture } from '@babylonjs/core/Materials/Textures/dynamicTexture';
|
|
4
5
|
import { Axis, Space } from '@babylonjs/core/Maths/math.axis';
|
|
5
6
|
import { Color3 } from '@babylonjs/core/Maths/math.color';
|
|
6
7
|
import { AbstractMesh } from '@babylonjs/core/Meshes/abstractMesh';
|
|
7
8
|
import { InstancedMesh } from '@babylonjs/core/Meshes/instancedMesh';
|
|
8
9
|
import { Mesh } from '@babylonjs/core/Meshes/mesh';
|
|
9
10
|
import { TransformNode } from '@babylonjs/core/Meshes/transformNode';
|
|
10
|
-
import {
|
|
11
|
-
import { cloneDeep, concat, get, isArray, merge, union } from 'lodash-es';
|
|
11
|
+
import { cloneDeep, concat, get, isArray, isNumber, isPlainObject, merge, union } from 'lodash-es';
|
|
12
12
|
import {
|
|
13
13
|
activateTransformNode as activate,
|
|
14
14
|
addToHighlightLayer,
|
|
@@ -26,7 +26,7 @@ import {
|
|
|
26
26
|
setMaterialRoughness,
|
|
27
27
|
setMaterialTexture
|
|
28
28
|
} from '../util/babylonHelper';
|
|
29
|
-
import {
|
|
29
|
+
import { createImageFromSvg, createImageFromImgSrc, mergeMaps } from '../util/resourceHelper';
|
|
30
30
|
import { DottedPath } from './dottedPath';
|
|
31
31
|
import { ElementParameterizable } from './elementParameterizable';
|
|
32
32
|
import { Event } from './event';
|
|
@@ -48,8 +48,6 @@ export class Element extends ElementParameterizable {
|
|
|
48
48
|
|
|
49
49
|
protected _highlightLayer?: HighlightLayer;
|
|
50
50
|
|
|
51
|
-
protected _paintableTxtureId: number = 0;
|
|
52
|
-
|
|
53
51
|
public readonly nodes: TransformNode[] = [];
|
|
54
52
|
|
|
55
53
|
/**
|
|
@@ -282,38 +280,49 @@ export class Element extends ElementParameterizable {
|
|
|
282
280
|
/**
|
|
283
281
|
* Draws a image onto a `paintable` defined via {@link PaintableDefinition}.
|
|
284
282
|
*/
|
|
285
|
-
public drawPaintable( paintable: string, imageSource:
|
|
283
|
+
public async drawPaintable( paintable: string, imageSource: CanvasImageSource ): Promise<Element> {
|
|
284
|
+
const paintableDefinition = this.getPaintableDefinition( paintable );
|
|
286
285
|
const node = this.getPaintableNode( paintable );
|
|
287
286
|
if( !(node instanceof AbstractMesh) ) {
|
|
288
287
|
throw new Error( `The path must be an instance of "AbstractMesh" for paintable "${paintable}" ` +
|
|
289
288
|
`in element "${this.id}".` );
|
|
290
289
|
}
|
|
291
|
-
|
|
292
290
|
if( node.material && !get( node.metadata, 'dirty.material' ) ) {
|
|
293
291
|
cloneTransformNodeMaterial( node );
|
|
294
292
|
}
|
|
295
293
|
if( !node.material ) {
|
|
296
294
|
node.material = new StandardMaterial( `${this.id}.${paintable}.material`, this.variant.viewer.scene );
|
|
297
|
-
}
|
|
298
|
-
|
|
295
|
+
}
|
|
299
296
|
node.material.transparencyMode = Material.MATERIAL_ALPHATESTANDBLEND;
|
|
300
297
|
if( !get( node.metadata, 'dirty.material.texture' ) ) {
|
|
301
298
|
// inject initial value and mark as dirty
|
|
302
|
-
|
|
299
|
+
injectTransformNodeMetadata( node, { dirty: { material: { texture: true } } }, false );
|
|
303
300
|
}
|
|
304
301
|
|
|
305
|
-
const
|
|
306
|
-
imageSource,
|
|
307
|
-
|
|
302
|
+
const widthAndHeight = {
|
|
303
|
+
width: imageSource.width,
|
|
304
|
+
height: imageSource.height
|
|
305
|
+
};
|
|
306
|
+
if( isNumber( paintableDefinition.textureOptions ) ) {
|
|
307
|
+
widthAndHeight.width = paintableDefinition.textureOptions;
|
|
308
|
+
widthAndHeight.height = paintableDefinition.textureOptions;
|
|
309
|
+
} else if( isPlainObject( paintableDefinition.textureOptions ) ) {
|
|
310
|
+
widthAndHeight.width = paintableDefinition.textureOptions.width;
|
|
311
|
+
widthAndHeight.height = paintableDefinition.textureOptions.height;
|
|
312
|
+
}
|
|
313
|
+
|
|
314
|
+
const texture = new DynamicTexture(
|
|
315
|
+
`${this.id}.${paintable}.texture`,
|
|
316
|
+
widthAndHeight,
|
|
308
317
|
this.variant.viewer.scene,
|
|
309
|
-
undefined,
|
|
310
318
|
false
|
|
311
319
|
);
|
|
312
|
-
// NOTE: Paintable texture need an individual id, otherwise the already existing texture on this id does not get overwritten
|
|
313
|
-
// Maybe think of a disposal logic here in the future
|
|
314
|
-
this._paintableTxtureId++;
|
|
315
320
|
|
|
316
|
-
|
|
321
|
+
const ctx = texture.getContext();
|
|
322
|
+
ctx.drawImage( imageSource, 0, 0);
|
|
323
|
+
texture.update( false );
|
|
324
|
+
|
|
325
|
+
setMaterialTexture( node, texture, false );
|
|
317
326
|
|
|
318
327
|
return this;
|
|
319
328
|
}
|
|
@@ -322,15 +331,16 @@ export class Element extends ElementParameterizable {
|
|
|
322
331
|
* Draws a SVG string onto a `paintable` defined via {@link PaintableDefinition}.
|
|
323
332
|
*/
|
|
324
333
|
public async drawPaintableFromSvg( paintable: string, svgSource: string ): Promise<Element> {
|
|
325
|
-
const
|
|
326
|
-
return this.drawPaintable( paintable,
|
|
334
|
+
const image = await createImageFromSvg( svgSource );
|
|
335
|
+
return this.drawPaintable( paintable, image );
|
|
327
336
|
}
|
|
328
337
|
|
|
329
338
|
/**
|
|
330
339
|
* Draws an Image from source (URL/URI) onto a `paintable` defined via {@link PaintableDefinition}.
|
|
331
340
|
*/
|
|
332
341
|
public async drawPaintableFromImgSrc( paintable: string, imgSource: string ): Promise<Element> {
|
|
333
|
-
|
|
342
|
+
const image = await createImageFromImgSrc( imgSource );
|
|
343
|
+
return this.drawPaintable( paintable, image );
|
|
334
344
|
}
|
|
335
345
|
|
|
336
346
|
/**
|
|
@@ -230,6 +230,10 @@ type CameraDefinition = {
|
|
|
230
230
|
/**
|
|
231
231
|
* `arc` is a default camera position where the 3D-model is the center and the camera rotates around the 3D-model.
|
|
232
232
|
* More Information about `arc` in [ArcRotateCamera](https://doc.babylonjs.com/typedoc/classes/babylon.arcrotatecamera).
|
|
233
|
+
*
|
|
234
|
+
* NOTE: While "baked" camera definitions from a GLB or babylon file can currently not be instatiated within the `Specification`, it's still possible to use them in the viewer.\
|
|
235
|
+
* For the moment all camera definitions inside these files are automatically added to the scene and can be actived using the {@link switchCamera} function.\
|
|
236
|
+
* The `newCamera` input has to match the name of the camera node inside the GLB/babylon file.
|
|
233
237
|
*/
|
|
234
238
|
type: 'arc'
|
|
235
239
|
/**
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { ResolvePlugin } from 'webpack';
|
|
1
2
|
import { emitter, Event } from '../classes/event';
|
|
2
3
|
|
|
3
4
|
/**
|
|
@@ -79,22 +80,28 @@ const mergeMaps = function <TKey, TValue>( ...maps: Map<TKey, TValue>[] ): Map<T
|
|
|
79
80
|
return resultMap;
|
|
80
81
|
};
|
|
81
82
|
|
|
82
|
-
|
|
83
|
-
* Converts a svg string into an URL with a base64 representation of that image.\
|
|
84
|
-
* This URL can be used as the basis of a paintable texture.
|
|
85
|
-
*/
|
|
86
|
-
const createImageUrlFromSvg = async function( svgSrc: string ): Promise<string> {
|
|
83
|
+
const createImageFromSvg = async function( svgSrc: string ): Promise<HTMLImageElement> {
|
|
87
84
|
// replace assets with their base64 versions in svg source code
|
|
88
85
|
const svgWithAssetsEmbedded = await _embedAssets( svgSrc );
|
|
89
86
|
|
|
90
|
-
|
|
91
|
-
const svgBlob = new Blob( [svgWithAssetsEmbedded], { type: 'image/svg+xml' } );
|
|
87
|
+
const svgEncoded = 'data:image/svg+xml,' + encodeURIComponent(svgWithAssetsEmbedded)
|
|
92
88
|
|
|
93
|
-
|
|
94
|
-
const imgUrl = URL.createObjectURL( svgBlob );
|
|
95
|
-
return imgUrl;
|
|
89
|
+
return createImageFromImgSrc(svgEncoded);
|
|
96
90
|
};
|
|
97
91
|
|
|
92
|
+
const createImageFromImgSrc = async function ( imgSrc: string ): Promise<HTMLImageElement> {
|
|
93
|
+
let img = new Image();
|
|
94
|
+
|
|
95
|
+
await new Promise(resolve => {
|
|
96
|
+
img.onload = () => {
|
|
97
|
+
setTimeout(resolve, 0);
|
|
98
|
+
}
|
|
99
|
+
img.src = imgSrc;
|
|
100
|
+
});
|
|
101
|
+
|
|
102
|
+
return img;
|
|
103
|
+
}
|
|
104
|
+
|
|
98
105
|
/**
|
|
99
106
|
* Replaces all supported image & font URLs in the given SVG with their base64 representation.
|
|
100
107
|
*/
|
|
@@ -152,5 +159,6 @@ export {
|
|
|
152
159
|
debounce,
|
|
153
160
|
uuidv4,
|
|
154
161
|
mergeMaps,
|
|
155
|
-
|
|
162
|
+
createImageFromSvg,
|
|
163
|
+
createImageFromImgSrc
|
|
156
164
|
};
|
package/src/pagesconfig.json
CHANGED
|
@@ -32,17 +32,26 @@
|
|
|
32
32
|
"pages": [
|
|
33
33
|
{
|
|
34
34
|
"title": "Specification",
|
|
35
|
-
"source": "./doc/Specification.md"
|
|
35
|
+
"source": "./doc/documentation/Specification.md"
|
|
36
36
|
},
|
|
37
37
|
{
|
|
38
38
|
"title": "Parameters",
|
|
39
|
-
"source": "./doc/Parameters.md"
|
|
39
|
+
"source": "./doc/documentation/Parameters.md"
|
|
40
40
|
},
|
|
41
41
|
{
|
|
42
42
|
"title": "Paintables",
|
|
43
|
-
"source": "./doc/Paintables.md"
|
|
43
|
+
"source": "./doc/documentation/Paintables.md"
|
|
44
|
+
}
|
|
45
|
+
]
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"title": "Best Practice",
|
|
49
|
+
"pages": [
|
|
50
|
+
{
|
|
51
|
+
"title": "How to change custom material properties",
|
|
52
|
+
"source": "./doc/best-practice/Custom-material-properties.md"
|
|
44
53
|
}
|
|
45
54
|
]
|
|
46
55
|
}
|
|
47
56
|
]
|
|
48
|
-
}
|
|
57
|
+
}
|