viral-viewer-2 5.3.0 → 5.3.1
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/components/context-menu/viral-context-menu.js +1 -1
- package/dist/components/context-menu/viral-context-menu.js.map +1 -1
- package/dist/components/custom-objects/index.d.ts +2 -0
- package/dist/components/custom-objects/index.js +6 -0
- package/dist/components/custom-objects/index.js.map +1 -0
- package/dist/components/custom-objects/viral-instanced-mesh.d.ts +18 -0
- package/dist/components/custom-objects/viral-instanced-mesh.js +121 -0
- package/dist/components/custom-objects/viral-instanced-mesh.js.map +1 -0
- package/dist/components/loader/viral-revit.loader.js +3 -3
- package/dist/components/loader/viral-revit.loader.js.map +1 -1
- package/dist/components/material/viral-material-manager.js +3 -3
- package/dist/components/material/viral-material-manager.js.map +1 -1
- package/dist/components/post-processing/post-processing-renderer.d.ts +3 -0
- package/dist/components/post-processing/post-processing-renderer.js +7 -0
- package/dist/components/post-processing/post-processing-renderer.js.map +1 -1
- package/dist/components/scene/viral-scene.js +2 -2
- package/dist/components/scene/viral-scene.js.map +1 -1
- package/dist/components/spinner/viral-spinner.js +1 -1
- package/dist/components/spinner/viral-spinner.js.map +1 -1
- package/dist/components/tools/tools/viral-tool-measure.js +7 -7
- package/dist/components/tools/tools/viral-tool-measure.js.map +1 -1
- package/dist/components/tools/viral-tools.js +1 -2
- package/dist/components/tools/viral-tools.js.map +1 -1
- package/dist/components/visibility-manager/viral-visibility-manager.d.ts +5 -0
- package/dist/components/visibility-manager/viral-visibility-manager.js +10 -0
- package/dist/components/visibility-manager/viral-visibility-manager.js.map +1 -0
- package/dist/components/worker/viral-viewer-2.worker.js +2 -2
- package/dist/components/worker/viral-viewer-2.worker.js.map +1 -1
- package/dist/components/worker/viral-viewer-3.worker.js +2 -2
- package/dist/components/worker/viral-viewer-3.worker.js.map +1 -1
- package/dist/components/worker/viral-viewer-4.worker.js +14 -7
- package/dist/components/worker/viral-viewer-4.worker.js.map +1 -1
- package/dist/components/worker-script/load-model-worker-3.script.js +118 -1
- package/dist/components/worker-script/load-model-worker-3.script.js.map +1 -1
- package/dist/const/colors.d.ts +1 -0
- package/dist/const/colors.js +3 -2
- package/dist/const/colors.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/dist/utils/html.d.ts +3 -1
- package/dist/utils/html.js +9 -7
- package/dist/utils/html.js.map +1 -1
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/index.js +10 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/log.d.ts +1 -0
- package/dist/utils/log.js +3 -0
- package/dist/utils/log.js.map +1 -1
- package/dist/utils/threejs.d.ts +7 -5
- package/dist/utils/threejs.js +37 -36
- package/dist/utils/threejs.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"viral-viewer-2.worker.js","sourceRoot":"","sources":["../../../src/components/worker/viral-viewer-2.worker.ts"],"names":[],"mappings":";;;AACA,uCAAwL;AACxL,iCAAsN;AACtN,4FAAyE;AACzE,oDAAsD;AACtD,oFAAiF;AACjF,
|
|
1
|
+
{"version":3,"file":"viral-viewer-2.worker.js","sourceRoot":"","sources":["../../../src/components/worker/viral-viewer-2.worker.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ const types_1 = require("../../types");
|
|
|
5
5
|
const three_1 = require("three");
|
|
6
6
|
const threejs_types_1 = require("../worker-script/threejs.types");
|
|
7
7
|
const worker_pool_1 = require("./base/worker-pool");
|
|
8
|
-
const
|
|
8
|
+
const __1 = require("../..");
|
|
9
9
|
class ViralViewerWorker3 {
|
|
10
10
|
constructor(viralViewerApi, scriptUrl = "../worker-script/load-model-worker-2.script.js") {
|
|
11
11
|
this.viralViewerApi = viralViewerApi;
|
|
@@ -24,7 +24,7 @@ class ViralViewerWorker3 {
|
|
|
24
24
|
this.viralViewerApi.viralScene.addModel(this.mainModel);
|
|
25
25
|
for (let index = 0; index < materials.length; index++) {
|
|
26
26
|
const material = materials[index];
|
|
27
|
-
let colorString =
|
|
27
|
+
let colorString = __1.THREEUtil.rgbToThreejsColor(material.Red, material.Green, material.Blue);
|
|
28
28
|
let renderMaterial = new three_1.MeshPhongMaterial({
|
|
29
29
|
color: colorString,
|
|
30
30
|
opacity: material.Opacity,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"viral-viewer-3.worker.js","sourceRoot":"","sources":["../../../src/components/worker/viral-viewer-3.worker.ts"],"names":[],"mappings":";;;AACA,uCAMqB;AACrB,iCAOe;AACf,kEAA4D;AAC5D,oDAAsD;AACtD,
|
|
1
|
+
{"version":3,"file":"viral-viewer-3.worker.js","sourceRoot":"","sources":["../../../src/components/worker/viral-viewer-3.worker.ts"],"names":[],"mappings":";;;AACA,uCAMqB;AACrB,iCAOe;AACf,kEAA4D;AAC5D,oDAAsD;AACtD,6BAAkC;AAElC,MAAa,kBAAkB;IAI7B,YACS,cAA8B,EACrC,YAAoB,gDAAgD;QAD7D,mBAAc,GAAd,cAAc,CAAgB;QAHhC,cAAS,GAAqB,EAAE,CAAC;QACjC,cAAS,GAAgB,IAAI,CAAC;QAKnC,+CAA+C;QAC/C,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,IAAI,0BAAU,KAAK,CAAC,CAAC,CAAC;QAC7C,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC7C,oCAAoC;QACpC,IAAI,CAAC,UAAU,GAAG,IAAI,8BAAgB,CACpC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,cAAc,EAC1C,UAAU,CACX,CAAC;IACJ,CAAC;IACM,OAAO,CAAC,SAA2B;QACxC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAE3B,IAAI,CAAC,SAAS,GAAG,IAAI,YAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,SAAS,CAAC,IAAI,GAAG,aAAa,CAAC;QACpC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACxD,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;YACrD,MAAM,QAAQ,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC;YAClC,IAAI,WAAW,GAAG,aAAS,CAAC,iBAAiB,CAC3C,QAAQ,CAAC,GAAG,EACZ,QAAQ,CAAC,KAAK,EACd,QAAQ,CAAC,IAAI,CACd,CAAC;YAEF,IAAI,cAAc,GAAG,IAAI,yBAAiB,CAAC;gBACzC,KAAK,EAAE,WAAW;gBAClB,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,WAAW,EAAE,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;gBACjD,WAAW,EAAE,IAAI;gBACjB,IAAI,EAAE,QAAQ,CAAC,IAAI;aACpB,CAAC,CAAC;YACH,IAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;SAC/E;IACH,CAAC;IACM,sBAAsB,CAC3B,KAAyC,EACzC,iBAAiB,GAAG,GAAG,EAAE,GAAE,CAAC;QAE5B,IAAI,SAAS,GAAG,IAAI,gCAAwB,EAAE,CAAC;QAC/C,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;QAClC,SAAS,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,UAAU,CAAC,OAAO,CACrB,SAAS,EACT,CAAC,IAAS,EAAE,EAAE;YACZ,IAAI,IAAI,GACN,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,WAAW,CAAC,WAAW,CAAC,IAAI,CAAS,CAAC;YACxE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC,SAAS,CAAC,GAAG,CACpE,KAAK,CAAC,aAAa,CACnB,CAAC;YACH,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC5B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;oBACzD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;oBAClC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;oBAC7C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;iBACnB;aACF;YACD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAE9D,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,eAAe,CAAC;YACrC,IAAI,IAAI,CAAC,SAAS;gBAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC7C,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;YAC3C,iBAAiB,EAAE,CAAC;QACtB,CAAC,CACF,CAAC;IACJ,CAAC;IACM,0BAA0B,CAC/B,KAA6C,EAC7C,iBAAiB,GAAG,GAAG,EAAE,GAAE,CAAC;QAE5B,IAAI,CAAC,UAAU,CAAC,OAAO,CACrB,KAAK,EACL,CAAC,IAAS,EAAE,EAAE;YACZ,IAAI,IAAI,GACN,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,WAAW,CAAC,WAAW,CACrD,IAAI,CACY,CAAC;YACrB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,cAAc,CAAC,oBAAoB,CAAC,SAAS,CAAC,GAAG,CACpE,KAAK,CAAC,aAAa,CACnB,CAAC;YACH,yBAAyB;YACzB,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC5B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;oBACzD,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;oBAClC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;iBAC9C;gBACD,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;aACpB;YACD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC9D,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,eAAe,CAAC;YACrC,IAAI,IAAI,CAAC,SAAS;gBAAE,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC7C,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;YAC3C,iBAAiB,EAAE,CAAC;QACtB,CAAC,CACF,CAAC;IACJ,CAAC;CACF;AAtGD,gDAsGC"}
|
|
@@ -4,6 +4,7 @@ exports.ViralViewerWorker4 = void 0;
|
|
|
4
4
|
const three_1 = require("three");
|
|
5
5
|
const load_model_worker_3_script_1 = require("../worker-script/load-model-worker-3.script");
|
|
6
6
|
const worker_pool_1 = require("./base/worker-pool");
|
|
7
|
+
const log_1 = require("../../utils/log");
|
|
7
8
|
const threejs_1 = require("../../utils/threejs");
|
|
8
9
|
class ViralViewerWorker4 {
|
|
9
10
|
constructor(viralViewerApi) {
|
|
@@ -21,7 +22,7 @@ class ViralViewerWorker4 {
|
|
|
21
22
|
this.viralViewerApi.viralScene.addModel(this.mainModel);
|
|
22
23
|
for (let index = 0; index < materials.length; index++) {
|
|
23
24
|
const material = materials[index];
|
|
24
|
-
let colorString =
|
|
25
|
+
let colorString = threejs_1.THREEUtil.rgbToThreejsColor(material.Red, material.Green, material.Blue);
|
|
25
26
|
let renderMaterial = new three_1.MeshPhongMaterial({
|
|
26
27
|
color: colorString,
|
|
27
28
|
opacity: material.Opacity,
|
|
@@ -39,22 +40,28 @@ class ViralViewerWorker4 {
|
|
|
39
40
|
this.workerPool.Enqueue(elements, (data) => {
|
|
40
41
|
let dummyMesh = this.viralViewerApi.viralLoader.threeLoader.parseObject(data);
|
|
41
42
|
for (let j = 0; j < dummyMesh.children.length; j++) {
|
|
42
|
-
|
|
43
|
+
let element = dummyMesh.children[j];
|
|
44
|
+
if (element.userData.IsInstancedMesh) {
|
|
45
|
+
console.log(element);
|
|
46
|
+
}
|
|
47
|
+
try {
|
|
48
|
+
this.viralViewerApi.viralBVH.applyThreeMeshBVH(element.geometry);
|
|
49
|
+
}
|
|
50
|
+
catch (error) {
|
|
51
|
+
if (this.viralViewerApi.options.isDev) {
|
|
52
|
+
log_1.LogUtil.error(error);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
43
55
|
element.material = [];
|
|
44
56
|
for (let k = 0; k < element.userData.MaterialIds.length; k++) {
|
|
45
57
|
const materialIndex = element.userData.MaterialIds[k];
|
|
46
58
|
element.material.push(this.viralViewerApi.viralMaterialManager.materials.get(materialIndex));
|
|
47
59
|
}
|
|
48
60
|
this.viralViewerApi.viralScene.selectables.push(element);
|
|
49
|
-
try {
|
|
50
|
-
this.viralViewerApi.viralBVH.applyThreeMeshBVH(element.geometry);
|
|
51
|
-
}
|
|
52
|
-
catch (error) { }
|
|
53
61
|
}
|
|
54
62
|
if (this.mainModel)
|
|
55
63
|
this.mainModel.add(dummyMesh);
|
|
56
64
|
this.viralViewerApi.viralRenderer.render();
|
|
57
|
-
console.log(this.mainModel);
|
|
58
65
|
callbackOnSuccess();
|
|
59
66
|
});
|
|
60
67
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"viral-viewer-4.worker.js","sourceRoot":"","sources":["../../../src/components/worker/viral-viewer-4.worker.ts"],"names":[],"mappings":";;;AAEA,iCAAgD;AAChD,4FAAyE;AACzE,oDAAsD;AACtD,
|
|
1
|
+
{"version":3,"file":"viral-viewer-4.worker.js","sourceRoot":"","sources":["../../../src/components/worker/viral-viewer-4.worker.ts"],"names":[],"mappings":"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"}
|
|
@@ -33992,6 +33992,123 @@ which can be placed in CurveUtils.
|
|
|
33992
33992
|
}
|
|
33993
33993
|
}
|
|
33994
33994
|
//#endregion
|
|
33995
|
+
//#region Custom object
|
|
33996
|
+
class ViralInstancedMesh extends InstancedMesh {
|
|
33997
|
+
/**
|
|
33998
|
+
*
|
|
33999
|
+
* @param geometry geometry for instanced mesh
|
|
34000
|
+
* @param materials materials for instanced mesh, can be both 1 or array
|
|
34001
|
+
* @param count number of instance in mesh
|
|
34002
|
+
* @param _host share the same logic with parent, when we push temp mesh into scene, we must binding original viral instanced mesh to host to recall/ reprogress later
|
|
34003
|
+
*/
|
|
34004
|
+
constructor(geometry, materials, count, _host) {
|
|
34005
|
+
super(geometry, materials, count);
|
|
34006
|
+
this.tempInstancedMesh = null;
|
|
34007
|
+
this.host = null;
|
|
34008
|
+
this.overrideMeshes = [];
|
|
34009
|
+
if (_host)
|
|
34010
|
+
this.host = _host;
|
|
34011
|
+
//before change anything, keep original mesh
|
|
34012
|
+
}
|
|
34013
|
+
hideAts(indexs) {
|
|
34014
|
+
var _a;
|
|
34015
|
+
if (indexs.length > 0) {
|
|
34016
|
+
let numberRemain = this.count - indexs.length;
|
|
34017
|
+
this.tempInstancedMesh = new ViralInstancedMesh(this.geometry, this.material, numberRemain, this);
|
|
34018
|
+
this.tempInstancedMesh.instanceColor = this.instanceColor;
|
|
34019
|
+
this.tempInstancedMesh.instanceMatrix = this.instanceMatrix;
|
|
34020
|
+
if (this.instanceColor != null) {
|
|
34021
|
+
//get original instance color then remove later
|
|
34022
|
+
let instanceColorArray = Array.from(this.instanceColor.array);
|
|
34023
|
+
for (let index = 0; index < indexs.length; index++) {
|
|
34024
|
+
const removedIndex = indexs[index] * this.instanceColor.itemSize -
|
|
34025
|
+
index * this.instanceColor.itemSize;
|
|
34026
|
+
instanceColorArray.splice(removedIndex, this.instanceColor.itemSize);
|
|
34027
|
+
}
|
|
34028
|
+
this.tempInstancedMesh.instanceColor = new InstancedBufferAttribute(new Float32Array(instanceColorArray), this.instanceColor.itemSize);
|
|
34029
|
+
}
|
|
34030
|
+
if (this.instanceMatrix != null) {
|
|
34031
|
+
//get original instance matrix then remove later
|
|
34032
|
+
let instanceMatrixArray = Array.from(this.instanceMatrix.array);
|
|
34033
|
+
for (let index = 0; index < indexs.length; index++) {
|
|
34034
|
+
const removedIndex = indexs[index] * this.instanceMatrix.itemSize -
|
|
34035
|
+
index * this.instanceMatrix.itemSize;
|
|
34036
|
+
instanceMatrixArray.splice(removedIndex, this.instanceMatrix.itemSize);
|
|
34037
|
+
}
|
|
34038
|
+
this.tempInstancedMesh.instanceMatrix = new InstancedBufferAttribute(new Float32Array(instanceMatrixArray), this.instanceMatrix.itemSize);
|
|
34039
|
+
}
|
|
34040
|
+
//final, remove main from parent and add tempmesh
|
|
34041
|
+
(_a = this.parent) === null || _a === void 0 ? void 0 : _a.add(this.tempInstancedMesh);
|
|
34042
|
+
this.removeFromParent();
|
|
34043
|
+
}
|
|
34044
|
+
}
|
|
34045
|
+
isolateAts(indexs) {
|
|
34046
|
+
var _a;
|
|
34047
|
+
if (indexs.length > 0) {
|
|
34048
|
+
this.tempInstancedMesh = new ViralInstancedMesh(this.geometry, this.material, indexs.length, this);
|
|
34049
|
+
this.tempInstancedMesh.instanceColor = this.instanceColor;
|
|
34050
|
+
this.tempInstancedMesh.instanceMatrix = this.instanceMatrix;
|
|
34051
|
+
if (this.instanceColor != null) {
|
|
34052
|
+
let isolateInstanceColorArray = [];
|
|
34053
|
+
//get original instance color then remove later
|
|
34054
|
+
let instanceColorArray = Array.from(this.instanceColor.array);
|
|
34055
|
+
for (let index = 0; index < indexs.length; index++) {
|
|
34056
|
+
const startIndex = indexs[index] * this.instanceColor.itemSize;
|
|
34057
|
+
isolateInstanceColorArray = isolateInstanceColorArray.concat(instanceColorArray.slice(startIndex, startIndex + this.instanceColor.itemSize));
|
|
34058
|
+
}
|
|
34059
|
+
this.tempInstancedMesh.instanceColor = new InstancedBufferAttribute(new Float32Array(isolateInstanceColorArray), this.instanceColor.itemSize);
|
|
34060
|
+
}
|
|
34061
|
+
if (this.instanceMatrix != null) {
|
|
34062
|
+
let isolateInstanceMatrixArray = [];
|
|
34063
|
+
//get original instance matrix then remove later
|
|
34064
|
+
let instanceMatrixArray = Array.from(this.instanceMatrix.array);
|
|
34065
|
+
for (let index = 0; index < indexs.length; index++) {
|
|
34066
|
+
const startIndex = indexs[index] * this.instanceMatrix.itemSize;
|
|
34067
|
+
isolateInstanceMatrixArray = isolateInstanceMatrixArray.concat(instanceMatrixArray.slice(startIndex, startIndex + this.instanceMatrix.itemSize));
|
|
34068
|
+
}
|
|
34069
|
+
this.tempInstancedMesh.instanceMatrix = new InstancedBufferAttribute(new Float32Array(isolateInstanceMatrixArray), this.instanceMatrix.itemSize);
|
|
34070
|
+
}
|
|
34071
|
+
//final, remove main from parent and add tempmesh
|
|
34072
|
+
(_a = this.parent) === null || _a === void 0 ? void 0 : _a.add(this.tempInstancedMesh);
|
|
34073
|
+
this.removeFromParent();
|
|
34074
|
+
}
|
|
34075
|
+
}
|
|
34076
|
+
overrideMaterialAts(indexs, material) {
|
|
34077
|
+
var _a;
|
|
34078
|
+
for (let index = 0; index < indexs.length; index++) {
|
|
34079
|
+
const selectedIndex = indexs[index];
|
|
34080
|
+
let mesh = new Mesh(this.geometry, material);
|
|
34081
|
+
let matrix = new Matrix4();
|
|
34082
|
+
this.getMatrixAt(selectedIndex, matrix);
|
|
34083
|
+
mesh.applyMatrix4(matrix);
|
|
34084
|
+
(_a = this.parent) === null || _a === void 0 ? void 0 : _a.add(mesh);
|
|
34085
|
+
this.overrideMeshes.push(mesh);
|
|
34086
|
+
}
|
|
34087
|
+
this.hideAts(indexs);
|
|
34088
|
+
}
|
|
34089
|
+
reverseToOriginal() {
|
|
34090
|
+
var _a;
|
|
34091
|
+
if (this.overrideMeshes.length > 0) {
|
|
34092
|
+
for (let index = 0; index < this.overrideMeshes.length; index++) {
|
|
34093
|
+
const mesh = this.overrideMeshes[index];
|
|
34094
|
+
mesh.removeFromParent();
|
|
34095
|
+
mesh.geometry.dispose();
|
|
34096
|
+
mesh.material.dispose();
|
|
34097
|
+
}
|
|
34098
|
+
this.overrideMeshes = [];
|
|
34099
|
+
}
|
|
34100
|
+
if (this.tempInstancedMesh) {
|
|
34101
|
+
//reverse original
|
|
34102
|
+
(_a = this.tempInstancedMesh.parent) === null || _a === void 0 ? void 0 : _a.add(this);
|
|
34103
|
+
//then dispose temp
|
|
34104
|
+
this.tempInstancedMesh.removeFromParent();
|
|
34105
|
+
this.tempInstancedMesh.geometry.dispose();
|
|
34106
|
+
this.tempInstancedMesh.dispose();
|
|
34107
|
+
this.tempInstancedMesh = null;
|
|
34108
|
+
}
|
|
34109
|
+
}
|
|
34110
|
+
}
|
|
34111
|
+
//#endregion
|
|
33995
34112
|
//#region My code
|
|
33996
34113
|
//////////////////
|
|
33997
34114
|
const maxPolygonPerObject = 1000;
|
|
@@ -34088,7 +34205,7 @@ which can be placed in CurveUtils.
|
|
|
34088
34205
|
let geometries = solids.map((x) => x.geometry);
|
|
34089
34206
|
mergedGeometry = mergeGeometries(geometries, true);
|
|
34090
34207
|
// mergedGeometry.computeVertexNormals();
|
|
34091
|
-
const instancedMesh = new
|
|
34208
|
+
const instancedMesh = new ViralInstancedMesh(mergedGeometry, [], data.Instances.length);
|
|
34092
34209
|
instancedMesh.userData.Instances = [];
|
|
34093
34210
|
instancedMesh.userData.MaterialIds = [];
|
|
34094
34211
|
// instancedMesh.receiveShadow = true;
|