viral-viewer-2 4.1.5 → 4.1.7
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/worker/viral-viewer-4.worker.d.ts +13 -0
- package/dist/components/worker/viral-viewer-4.worker.js +60 -0
- package/dist/components/worker/viral-viewer-4.worker.js.map +1 -0
- package/dist/components/worker-script/load-model-worker-3.script.d.ts +1 -0
- package/dist/components/worker-script/load-model-worker-3.script.js +34109 -0
- package/dist/components/worker-script/load-model-worker-3.script.js.map +1 -0
- package/dist/types.d.ts +22 -1
- package/dist/types.js +43 -3
- package/dist/types.js.map +1 -1
- package/dist/viral-viewer-api.d.ts +2 -0
- package/dist/viral-viewer-api.js +2 -0
- package/dist/viral-viewer-api.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ViralViewerApi } from "../../viral-viewer-api";
|
|
2
|
+
import { RenderMaterial, ViralutionElement } from "../../types";
|
|
3
|
+
import { Mesh } from "three";
|
|
4
|
+
import { WorkerThreadPool } from "./base/worker-pool";
|
|
5
|
+
export declare class ViralViewerWorker4 {
|
|
6
|
+
viralViewerApi: ViralViewerApi;
|
|
7
|
+
workerPool: WorkerThreadPool;
|
|
8
|
+
materials: RenderMaterial[];
|
|
9
|
+
mainModel: Mesh | null;
|
|
10
|
+
constructor(viralViewerApi: ViralViewerApi, scriptUrl?: string);
|
|
11
|
+
initial(materials: RenderMaterial[]): void;
|
|
12
|
+
loadElement(element: ViralutionElement, callbackOnSuccess?: () => void): void;
|
|
13
|
+
}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ViralViewerWorker4 = void 0;
|
|
4
|
+
const three_1 = require("three");
|
|
5
|
+
const load_model_worker_3_script_1 = require("../worker-script/load-model-worker-3.script");
|
|
6
|
+
const worker_pool_1 = require("./base/worker-pool");
|
|
7
|
+
const threejs_1 = require("../../utils/threejs");
|
|
8
|
+
class ViralViewerWorker4 {
|
|
9
|
+
constructor(viralViewerApi, scriptUrl = "../worker-script/load-model-worker-2.script.js") {
|
|
10
|
+
this.viralViewerApi = viralViewerApi;
|
|
11
|
+
this.materials = [];
|
|
12
|
+
this.mainModel = null;
|
|
13
|
+
// Create a new Blob containing the worker code
|
|
14
|
+
const blob = new Blob([`(${load_model_worker_3_script_1.workerCode})()`]);
|
|
15
|
+
const workerPath = URL.createObjectURL(blob);
|
|
16
|
+
// Create a new Worker from the Blob
|
|
17
|
+
this.workerPool = new worker_pool_1.WorkerThreadPool(this.viralViewerApi.options.numberOfWorker, workerPath);
|
|
18
|
+
}
|
|
19
|
+
initial(materials) {
|
|
20
|
+
this.materials = materials;
|
|
21
|
+
this.mainModel = new three_1.Mesh();
|
|
22
|
+
this.mainModel.name = "Viral Model";
|
|
23
|
+
this.viralViewerApi.viralScene.addModel(this.mainModel);
|
|
24
|
+
for (let index = 0; index < materials.length; index++) {
|
|
25
|
+
const material = materials[index];
|
|
26
|
+
let colorString = (0, threejs_1.rgbToThreejsColor)(material.Red, material.Green, material.Blue);
|
|
27
|
+
let renderMaterial = new three_1.MeshPhongMaterial({
|
|
28
|
+
color: colorString,
|
|
29
|
+
opacity: material.Opacity,
|
|
30
|
+
transparent: material.Opacity != 1 ? true : false,
|
|
31
|
+
flatShading: true,
|
|
32
|
+
name: material.Name,
|
|
33
|
+
});
|
|
34
|
+
this.viralViewerApi.viralScene.materials.add(index, renderMaterial);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
loadElement(element, callbackOnSuccess = () => { }) {
|
|
38
|
+
this.workerPool.Enqueue(element, (data) => {
|
|
39
|
+
let mesh = this.viralViewerApi.viralLoader.threeLoader.parseObject(data);
|
|
40
|
+
console.log(mesh);
|
|
41
|
+
// mesh.material = this.viralViewerApi.viralScene.materials.get(
|
|
42
|
+
// model.MaterialIndex
|
|
43
|
+
// )!;
|
|
44
|
+
// if (mesh.children.length > 0) {
|
|
45
|
+
// for (let index = 0; index < mesh.children.length; index++) {
|
|
46
|
+
// const edge = mesh.children[index];
|
|
47
|
+
// this.viralViewerApi.viralScene.addEdge(edge);
|
|
48
|
+
// mesh.remove(edge);
|
|
49
|
+
// }
|
|
50
|
+
// }
|
|
51
|
+
// this.viralViewerApi.viralBVH.applyThreeMeshBVH(mesh.geometry);
|
|
52
|
+
// mesh.userData.type = "Revit Element";
|
|
53
|
+
// if (this.mainModel) this.mainModel.add(mesh);
|
|
54
|
+
// this.viralViewerApi.viralRenderer.render();
|
|
55
|
+
callbackOnSuccess();
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
exports.ViralViewerWorker4 = ViralViewerWorker4;
|
|
60
|
+
//# sourceMappingURL=viral-viewer-4.worker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viral-viewer-4.worker.js","sourceRoot":"","sources":["../../../src/components/worker/viral-viewer-4.worker.ts"],"names":[],"mappings":";;;AASA,iCAOe;AACf,4FAAyE;AACzE,oDAAsD;AACtD,iDAAwD;AAExD,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,uCAAU,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,IAAA,2BAAiB,EACjC,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,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;SACrE;IACH,CAAC;IACM,WAAW,CAAC,OAA0B,EAAE,iBAAiB,GAAG,GAAG,EAAE,GAAE,CAAC;QACzE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAyB,OAAO,EAAE,CAAC,IAAS,EAAE,EAAE;YACrE,IAAI,IAAI,GAAS,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,WAAW,CAAC,WAAW,CACtE,IAAI,CACG,CAAC;YACV,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;YACnB,kEAAkE;YAClE,0BAA0B;YAC1B,QAAQ;YACR,oCAAoC;YACpC,mEAAmE;YACnE,2CAA2C;YAC3C,sDAAsD;YACtD,2BAA2B;YAC3B,QAAQ;YACR,MAAM;YACN,mEAAmE;YAEnE,0CAA0C;YAC1C,kDAAkD;YAClD,gDAAgD;YAC9C,iBAAiB,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAjED,gDAiEC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export function workerCode(): void;
|