viral-viewer-2 6.2.1 → 6.2.4
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 +0 -0
- package/dist/index.js +2 -21
- package/dist/index.js.LICENSE.txt +19 -0
- package/dist/threejs-addon/n8ao/post-processing.d.ts +109 -109
- package/package.json +6 -4
- package/dist/components/animation/viral-animation.js +0 -59
- package/dist/components/animation/viral-animation.js.map +0 -1
- package/dist/components/bvh/viral-bvh.js +0 -19
- package/dist/components/bvh/viral-bvh.js.map +0 -1
- package/dist/components/camera/viral-camera.js +0 -201
- package/dist/components/camera/viral-camera.js.map +0 -1
- package/dist/components/centralized-event-handler/viral-centralized-event-handler.d.ts +0 -7
- package/dist/components/centralized-event-handler/viral-centralized-event-handler.js +0 -47
- package/dist/components/centralized-event-handler/viral-centralized-event-handler.js.map +0 -1
- package/dist/components/compress/viral-compress.processor.js +0 -13
- package/dist/components/compress/viral-compress.processor.js.map +0 -1
- package/dist/components/context-menu/viral-context-menu.d.ts +0 -17
- package/dist/components/context-menu/viral-context-menu.js +0 -74
- package/dist/components/context-menu/viral-context-menu.js.map +0 -1
- package/dist/components/custom-objects/index.js +0 -6
- package/dist/components/custom-objects/index.js.map +0 -1
- package/dist/components/custom-objects/viral-instanced-mesh.js +0 -200
- package/dist/components/custom-objects/viral-instanced-mesh.js.map +0 -1
- package/dist/components/data-manager/viral-data-manager.js +0 -35
- package/dist/components/data-manager/viral-data-manager.js.map +0 -1
- package/dist/components/event-handler/base/event-dispatcher.js +0 -35
- package/dist/components/event-handler/base/event-dispatcher.js.map +0 -1
- package/dist/components/event-handler/keyboard/viral-keyboard.js +0 -76
- package/dist/components/event-handler/keyboard/viral-keyboard.js.map +0 -1
- package/dist/components/event-handler/mouse/viral-mouse.js +0 -234
- package/dist/components/event-handler/mouse/viral-mouse.js.map +0 -1
- package/dist/components/event-handler/viral-centralized-event-handler.js +0 -158
- package/dist/components/event-handler/viral-centralized-event-handler.js.map +0 -1
- package/dist/components/event-handler/viral-lifecycle-event-handler.js +0 -55
- package/dist/components/event-handler/viral-lifecycle-event-handler.js.map +0 -1
- package/dist/components/keyboard/viral-keyboard.d.ts +0 -17
- package/dist/components/keyboard/viral-keyboard.js +0 -76
- package/dist/components/keyboard/viral-keyboard.js.map +0 -1
- package/dist/components/loader/viral-point-cloud.loader.js +0 -33
- package/dist/components/loader/viral-point-cloud.loader.js.map +0 -1
- package/dist/components/loader/viral-revit.loader.js +0 -119
- package/dist/components/loader/viral-revit.loader.js.map +0 -1
- package/dist/components/loader/viral-three.loader.js +0 -20
- package/dist/components/loader/viral-three.loader.js.map +0 -1
- package/dist/components/loader/viral.loader.js +0 -16
- package/dist/components/loader/viral.loader.js.map +0 -1
- package/dist/components/material/viral-material-manager.js +0 -60
- package/dist/components/material/viral-material-manager.js.map +0 -1
- package/dist/components/mouse/viral-mouse.d.ts +0 -31
- package/dist/components/mouse/viral-mouse.js +0 -234
- package/dist/components/mouse/viral-mouse.js.map +0 -1
- package/dist/components/navigation-cube/components/cube-camera.d.ts +0 -15
- package/dist/components/navigation-cube/components/cube-camera.js +0 -74
- package/dist/components/navigation-cube/components/cube-camera.js.map +0 -1
- package/dist/components/navigation-cube/components/cube-renderer.d.ts +0 -9
- package/dist/components/navigation-cube/components/cube-renderer.js +0 -31
- package/dist/components/navigation-cube/components/cube-renderer.js.map +0 -1
- package/dist/components/navigation-cube/components/cube-scene.d.ts +0 -13
- package/dist/components/navigation-cube/components/cube-scene.js +0 -546
- package/dist/components/navigation-cube/components/cube-scene.js.map +0 -1
- package/dist/components/navigation-cube/components/cube.mouse.d.ts +0 -9
- package/dist/components/navigation-cube/components/cube.mouse.js +0 -109
- package/dist/components/navigation-cube/components/cube.mouse.js.map +0 -1
- package/dist/components/navigation-cube/viral-navigation-cube.d.ts +0 -16
- package/dist/components/navigation-cube/viral-navigation-cube.js +0 -50
- package/dist/components/navigation-cube/viral-navigation-cube.js.map +0 -1
- package/dist/components/post-processing/ambient-occlusion-effect.d.ts +0 -11
- package/dist/components/post-processing/ambient-occlusion-effect.js +0 -32
- package/dist/components/post-processing/ambient-occlusion-effect.js.map +0 -1
- package/dist/components/post-processing/bloom-effect.d.ts +0 -11
- package/dist/components/post-processing/bloom-effect.js +0 -29
- package/dist/components/post-processing/bloom-effect.js.map +0 -1
- package/dist/components/post-processing/outline-effect.d.ts +0 -13
- package/dist/components/post-processing/outline-effect.js +0 -33
- package/dist/components/post-processing/outline-effect.js.map +0 -1
- package/dist/components/post-processing/post-processing-renderer.js +0 -46
- package/dist/components/post-processing/post-processing-renderer.js.map +0 -1
- package/dist/components/post-processing/viral-post-processing.d.ts +0 -11
- package/dist/components/post-processing/viral-post-processing.js +0 -29
- package/dist/components/post-processing/viral-post-processing.js.map +0 -1
- package/dist/components/renderer/viral-renderer.js +0 -51
- package/dist/components/renderer/viral-renderer.js.map +0 -1
- package/dist/components/scene/viral-scene.js +0 -129
- package/dist/components/scene/viral-scene.js.map +0 -1
- package/dist/components/spinner/viral-spinner.d.ts +0 -10
- package/dist/components/spinner/viral-spinner.js +0 -207
- package/dist/components/spinner/viral-spinner.js.map +0 -1
- package/dist/components/stats/viral-stats.js +0 -17
- package/dist/components/stats/viral-stats.js.map +0 -1
- package/dist/components/tools/tools/viral-tool-ambient-occlusion.d.ts +0 -7
- package/dist/components/tools/tools/viral-tool-ambient-occlusion.js +0 -16
- package/dist/components/tools/tools/viral-tool-ambient-occlusion.js.map +0 -1
- package/dist/components/tools/tools/viral-tool-dark-mode.d.ts +0 -7
- package/dist/components/tools/tools/viral-tool-dark-mode.js +0 -21
- package/dist/components/tools/tools/viral-tool-dark-mode.js.map +0 -1
- package/dist/components/tools/tools/viral-tool-elevation.d.ts +0 -11
- package/dist/components/tools/tools/viral-tool-elevation.js +0 -30
- package/dist/components/tools/tools/viral-tool-elevation.js.map +0 -1
- package/dist/components/tools/tools/viral-tool-measure.d.ts +0 -33
- package/dist/components/tools/tools/viral-tool-measure.js +0 -243
- package/dist/components/tools/tools/viral-tool-measure.js.map +0 -1
- package/dist/components/tools/tools/viral-tool-sunlight.d.ts +0 -7
- package/dist/components/tools/tools/viral-tool-sunlight.js +0 -46
- package/dist/components/tools/tools/viral-tool-sunlight.js.map +0 -1
- package/dist/components/tools/viral-tools.d.ts +0 -32
- package/dist/components/tools/viral-tools.js +0 -213
- package/dist/components/tools/viral-tools.js.map +0 -1
- package/dist/components/visibility-manager/viral-visibility-manager.js +0 -168
- package/dist/components/visibility-manager/viral-visibility-manager.js.map +0 -1
- package/dist/components/worker/base/worker-pool.js +0 -68
- package/dist/components/worker/base/worker-pool.js.map +0 -1
- package/dist/components/worker/base/worker-thread.js +0 -35
- package/dist/components/worker/base/worker-thread.js.map +0 -1
- package/dist/components/worker/fetch-data.worker.js +0 -31
- package/dist/components/worker/fetch-data.worker.js.map +0 -1
- package/dist/components/worker/viral-viewer-2.worker.js +0 -127
- package/dist/components/worker/viral-viewer-2.worker.js.map +0 -1
- package/dist/components/worker/viral-viewer-3.worker.js +0 -82
- package/dist/components/worker/viral-viewer-3.worker.js.map +0 -1
- package/dist/components/worker/viral-viewer-4.worker.js +0 -97
- package/dist/components/worker/viral-viewer-4.worker.js.map +0 -1
- package/dist/components/worker/viral-viewer.worker.js +0 -107
- package/dist/components/worker/viral-viewer.worker.js.map +0 -1
- package/dist/components/worker-script/fetch-data-worker.script.js +0 -56
- package/dist/components/worker-script/fetch-data-worker.script.js.map +0 -1
- package/dist/components/worker-script/load-model-worker-2.script.js +0 -2704
- package/dist/components/worker-script/load-model-worker-2.script.js.map +0 -1
- package/dist/components/worker-script/load-model-worker-3.script.js +0 -34170
- package/dist/components/worker-script/load-model-worker-3.script.js.map +0 -1
- package/dist/components/worker-script/load-model-worker.script.js +0 -148
- package/dist/components/worker-script/load-model-worker.script.js.map +0 -1
- package/dist/components/worker-script/threejs.types.js +0 -34162
- package/dist/components/worker-script/threejs.types.js.map +0 -1
- package/dist/const/colors.js +0 -38
- package/dist/const/colors.js.map +0 -1
- package/dist/const/fonts.js +0 -17
- package/dist/const/fonts.js.map +0 -1
- package/dist/gui/context-menu/viral-context-menu.js +0 -74
- package/dist/gui/context-menu/viral-context-menu.js.map +0 -1
- package/dist/gui/draggable-modal/viral-draggable-modal.js +0 -91
- package/dist/gui/draggable-modal/viral-draggable-modal.js.map +0 -1
- package/dist/gui/fonts/fonts.js +0 -20
- package/dist/gui/fonts/fonts.js.map +0 -1
- package/dist/gui/navigation-cube/components/cube-camera.js +0 -74
- package/dist/gui/navigation-cube/components/cube-camera.js.map +0 -1
- package/dist/gui/navigation-cube/components/cube-renderer.js +0 -31
- package/dist/gui/navigation-cube/components/cube-renderer.js.map +0 -1
- package/dist/gui/navigation-cube/components/cube-scene.js +0 -546
- package/dist/gui/navigation-cube/components/cube-scene.js.map +0 -1
- package/dist/gui/navigation-cube/components/cube.mouse.js +0 -109
- package/dist/gui/navigation-cube/components/cube.mouse.js.map +0 -1
- package/dist/gui/navigation-cube/viral-navigation-cube.js +0 -50
- package/dist/gui/navigation-cube/viral-navigation-cube.js.map +0 -1
- package/dist/gui/spinner/viral-spinner.js +0 -102
- package/dist/gui/spinner/viral-spinner.js.map +0 -1
- package/dist/gui/tools/tools/viral-tool-ambient-occlusion.js +0 -16
- package/dist/gui/tools/tools/viral-tool-ambient-occlusion.js.map +0 -1
- package/dist/gui/tools/tools/viral-tool-dark-mode.js +0 -21
- package/dist/gui/tools/tools/viral-tool-dark-mode.js.map +0 -1
- package/dist/gui/tools/tools/viral-tool-elevation.js +0 -30
- package/dist/gui/tools/tools/viral-tool-elevation.js.map +0 -1
- package/dist/gui/tools/tools/viral-tool-measure.js +0 -243
- package/dist/gui/tools/tools/viral-tool-measure.js.map +0 -1
- package/dist/gui/tools/tools/viral-tool-sunlight.js +0 -46
- package/dist/gui/tools/tools/viral-tool-sunlight.js.map +0 -1
- package/dist/gui/tools/viral-tools.js +0 -213
- package/dist/gui/tools/viral-tools.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/models/dictionary.model.d.ts +0 -0
- package/dist/models/dictionary.model.js +0 -1
- package/dist/models/dictionary.model.js.map +0 -1
- package/dist/services/local-storage.service.js +0 -57
- package/dist/services/local-storage.service.js.map +0 -1
- package/dist/threejs-addon/buffer-geometry-utils.d.ts +0 -64
- package/dist/threejs-addon/buffer-geometry-utils.js +0 -807
- package/dist/threejs-addon/buffer-geometry-utils.js.map +0 -1
- package/dist/threejs-addon/gltf-loader.d.ts +0 -17
- package/dist/threejs-addon/gltf-loader.js +0 -2796
- package/dist/threejs-addon/gltf-loader.js.map +0 -1
- package/dist/threejs-addon/n8ao/n8ao.js +0 -1952
- package/dist/threejs-addon/n8ao/n8ao.js.map +0 -1
- package/dist/threejs-addon/n8ao/post-processing.js +0 -15145
- package/dist/threejs-addon/n8ao/post-processing.js.map +0 -1
- package/dist/threejs-addon/post-processing/effect-composer.d.ts +0 -27
- package/dist/threejs-addon/post-processing/effect-composer.js +0 -134
- package/dist/threejs-addon/post-processing/effect-composer.js.map +0 -1
- package/dist/threejs-addon/post-processing/mask-pass.d.ts +0 -11
- package/dist/threejs-addon/post-processing/mask-pass.js +0 -69
- package/dist/threejs-addon/post-processing/mask-pass.js.map +0 -1
- package/dist/threejs-addon/post-processing/outline-pass.d.ts +0 -58
- package/dist/threejs-addon/post-processing/outline-pass.js +0 -484
- package/dist/threejs-addon/post-processing/outline-pass.js.map +0 -1
- package/dist/threejs-addon/post-processing/output-pass.d.ts +0 -11
- package/dist/threejs-addon/post-processing/output-pass.js +0 -61
- package/dist/threejs-addon/post-processing/output-pass.js.map +0 -1
- package/dist/threejs-addon/post-processing/pass.d.ts +0 -20
- package/dist/threejs-addon/post-processing/pass.js +0 -48
- package/dist/threejs-addon/post-processing/pass.js.map +0 -1
- package/dist/threejs-addon/post-processing/render-pass.d.ts +0 -13
- package/dist/threejs-addon/post-processing/render-pass.js +0 -50
- package/dist/threejs-addon/post-processing/render-pass.js.map +0 -1
- package/dist/threejs-addon/post-processing/sao-pass.d.ts +0 -62
- package/dist/threejs-addon/post-processing/sao-pass.js +0 -296
- package/dist/threejs-addon/post-processing/sao-pass.js.map +0 -1
- package/dist/threejs-addon/post-processing/shader-pass.d.ts +0 -11
- package/dist/threejs-addon/post-processing/shader-pass.js +0 -48
- package/dist/threejs-addon/post-processing/shader-pass.js.map +0 -1
- package/dist/threejs-addon/post-processing/ssaa-render-pass.d.ts +0 -30
- package/dist/threejs-addon/post-processing/ssaa-render-pass.js +0 -202
- package/dist/threejs-addon/post-processing/ssaa-render-pass.js.map +0 -1
- package/dist/threejs-addon/post-processing/unreal-bloom-pass.d.ts +0 -48
- package/dist/threejs-addon/post-processing/unreal-bloom-pass.js +0 -290
- package/dist/threejs-addon/post-processing/unreal-bloom-pass.js.map +0 -1
- package/dist/threejs-addon/shaders/color-correction-shader.d.ts +0 -22
- package/dist/threejs-addon/shaders/color-correction-shader.js +0 -43
- package/dist/threejs-addon/shaders/color-correction-shader.js.map +0 -1
- package/dist/threejs-addon/shaders/copy-shader.d.ts +0 -13
- package/dist/threejs-addon/shaders/copy-shader.js +0 -39
- package/dist/threejs-addon/shaders/copy-shader.js.map +0 -1
- package/dist/threejs-addon/shaders/depth-limited-blur-shader.d.ts +0 -48
- package/dist/threejs-addon/shaders/depth-limited-blur-shader.js +0 -142
- package/dist/threejs-addon/shaders/depth-limited-blur-shader.js.map +0 -1
- package/dist/threejs-addon/shaders/fxaa-shader.d.ts +0 -14
- package/dist/threejs-addon/shaders/fxaa-shader.js +0 -279
- package/dist/threejs-addon/shaders/fxaa-shader.js.map +0 -1
- package/dist/threejs-addon/shaders/luminosity-high-pass-shader.d.ts +0 -27
- package/dist/threejs-addon/shaders/luminosity-high-pass-shader.js +0 -56
- package/dist/threejs-addon/shaders/luminosity-high-pass-shader.js.map +0 -1
- package/dist/threejs-addon/shaders/output-shader.d.ts +0 -13
- package/dist/threejs-addon/shaders/output-shader.js +0 -72
- package/dist/threejs-addon/shaders/output-shader.js.map +0 -1
- package/dist/threejs-addon/shaders/sao-shader.d.ts +0 -71
- package/dist/threejs-addon/shaders/sao-shader.js +0 -180
- package/dist/threejs-addon/shaders/sao-shader.js.map +0 -1
- package/dist/threejs-addon/shaders/unpack-depth-rgba-shader.d.ts +0 -13
- package/dist/threejs-addon/shaders/unpack-depth-rgba-shader.js +0 -41
- package/dist/threejs-addon/shaders/unpack-depth-rgba-shader.js.map +0 -1
- package/dist/threejs-addon/simplify-modifier.d.ts +0 -4
- package/dist/threejs-addon/simplify-modifier.js +0 -325
- package/dist/threejs-addon/simplify-modifier.js.map +0 -1
- package/dist/threejs-addon/stats.js +0 -102
- package/dist/threejs-addon/stats.js.map +0 -1
- package/dist/threejs-addon/transform-control.d.ts +0 -74
- package/dist/threejs-addon/transform-control.js +0 -1033
- package/dist/threejs-addon/transform-control.js.map +0 -1
- package/dist/types.js +0 -145
- package/dist/types.js.map +0 -1
- package/dist/utils/html.js +0 -12
- package/dist/utils/html.js.map +0 -1
- package/dist/utils/index.js +0 -10
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/log.js +0 -14
- package/dist/utils/log.js.map +0 -1
- package/dist/utils/threejs.js +0 -44
- package/dist/utils/threejs.js.map +0 -1
- package/dist/viral-viewer-api.js +0 -73
- package/dist/viral-viewer-api.js.map +0 -1
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.CubeMouse = void 0;
|
|
13
|
-
const three_1 = require("three");
|
|
14
|
-
class CubeMouse {
|
|
15
|
-
constructor(viralNavigationCube) {
|
|
16
|
-
this.viralNavigationCube = viralNavigationCube;
|
|
17
|
-
this.handleClick = (_event) => __awaiter(this, void 0, void 0, function* () {
|
|
18
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w;
|
|
19
|
-
if (!((_a = this.viralNavigationCube.cubeScene) === null || _a === void 0 ? void 0 : _a.activePlane) || ((_b = this.viralNavigationCube.cubeCamera) === null || _b === void 0 ? void 0 : _b.cameraControlHasMoved)) {
|
|
20
|
-
console.log("false");
|
|
21
|
-
return false;
|
|
22
|
-
}
|
|
23
|
-
let planePosition = new three_1.Vector3((_c = this.viralNavigationCube.cubeScene) === null || _c === void 0 ? void 0 : _c.activePlane.position.x, (_d = this.viralNavigationCube.cubeScene) === null || _d === void 0 ? void 0 : _d.activePlane.position.y, (_e = this.viralNavigationCube.cubeScene) === null || _e === void 0 ? void 0 : _e.activePlane.position.z);
|
|
24
|
-
//have children mean edge or corner
|
|
25
|
-
if (((_f = this.viralNavigationCube.cubeScene) === null || _f === void 0 ? void 0 : _f.activePlane.children.length) > 0) {
|
|
26
|
-
let combineX = 0;
|
|
27
|
-
let combineY = 0;
|
|
28
|
-
let combineZ = 0;
|
|
29
|
-
for (let index = 0; index < ((_g = this.viralNavigationCube.cubeScene) === null || _g === void 0 ? void 0 : _g.activePlane.children.length); index++) {
|
|
30
|
-
const element = (_h = this.viralNavigationCube.cubeScene) === null || _h === void 0 ? void 0 : _h.activePlane.children[index];
|
|
31
|
-
combineX += element.position.x;
|
|
32
|
-
combineY += element.position.y;
|
|
33
|
-
combineZ += element.position.z;
|
|
34
|
-
}
|
|
35
|
-
planePosition = new three_1.Vector3(combineX / ((_j = this.viralNavigationCube.cubeScene) === null || _j === void 0 ? void 0 : _j.activePlane.children.length), combineY / ((_k = this.viralNavigationCube.cubeScene) === null || _k === void 0 ? void 0 : _k.activePlane.children.length), combineZ / ((_l = this.viralNavigationCube.cubeScene) === null || _l === void 0 ? void 0 : _l.activePlane.children.length));
|
|
36
|
-
}
|
|
37
|
-
let cubeCameraTargetPoint = new three_1.Vector3();
|
|
38
|
-
(_m = this.viralNavigationCube.cubeCamera) === null || _m === void 0 ? void 0 : _m.cameraControls.getTarget(cubeCameraTargetPoint);
|
|
39
|
-
let directionVector = planePosition.clone().sub(cubeCameraTargetPoint).normalize();
|
|
40
|
-
(_o = this.viralNavigationCube.cubeCamera) === null || _o === void 0 ? void 0 : _o.cameraControlOldPosition.copy((_q = (_p = this.viralNavigationCube.cubeCamera) === null || _p === void 0 ? void 0 : _p.camera) === null || _q === void 0 ? void 0 : _q.position);
|
|
41
|
-
let targetPoint = new three_1.Vector3();
|
|
42
|
-
(_r = this.viralNavigationCube.viralViewerApi.viralCamera) === null || _r === void 0 ? void 0 : _r.cameraControls.getTarget(targetPoint);
|
|
43
|
-
let currentPosition = new three_1.Vector3();
|
|
44
|
-
(_s = this.viralNavigationCube.viralViewerApi.viralCamera) === null || _s === void 0 ? void 0 : _s.cameraControls.getPosition(currentPosition);
|
|
45
|
-
let distance = currentPosition
|
|
46
|
-
.clone()
|
|
47
|
-
.sub(targetPoint)
|
|
48
|
-
.length();
|
|
49
|
-
let newVector = new three_1.Vector3(Math.round(directionVector.x), Math.round(directionVector.y), Math.round(directionVector.z));
|
|
50
|
-
newVector.multiplyScalar(distance);
|
|
51
|
-
(_t = this.viralNavigationCube.viralViewerApi.viralCamera.camera) === null || _t === void 0 ? void 0 : _t.updateMatrixWorld();
|
|
52
|
-
(_u = this.viralNavigationCube.viralViewerApi.viralCamera.cameraControls) === null || _u === void 0 ? void 0 : _u.setTarget(0, 0, 0);
|
|
53
|
-
directionVector.multiplyScalar(2);
|
|
54
|
-
(_v = this.viralNavigationCube.cubeCamera) === null || _v === void 0 ? void 0 : _v.cameraControls.setPosition(directionVector.x, directionVector.y, directionVector.z, true);
|
|
55
|
-
(_w = this.viralNavigationCube.viralViewerApi.viralCamera.cameraControls) === null || _w === void 0 ? void 0 : _w.setPosition(newVector.x, newVector.y, newVector.z, true);
|
|
56
|
-
});
|
|
57
|
-
this.handleMove = (_event) => __awaiter(this, void 0, void 0, function* () {
|
|
58
|
-
var _x, _y, _z, _0, _1, _2;
|
|
59
|
-
if ((_x = this.viralNavigationCube.cubeScene) === null || _x === void 0 ? void 0 : _x.activePlane) {
|
|
60
|
-
this.viralNavigationCube.cubeScene.activePlane.material.opacity = 0;
|
|
61
|
-
this.viralNavigationCube.cubeScene.activePlane.material.needsUpdate = true;
|
|
62
|
-
for (let index = 0; index < this.viralNavigationCube.cubeScene.activePlane.children.length; index++) {
|
|
63
|
-
let element = this.viralNavigationCube.cubeScene.activePlane.children[index];
|
|
64
|
-
element.material.opacity = 0;
|
|
65
|
-
element.needsUpdate = true;
|
|
66
|
-
}
|
|
67
|
-
this.viralNavigationCube.cubeScene.activePlane = null;
|
|
68
|
-
}
|
|
69
|
-
let x = _event.offsetX;
|
|
70
|
-
let y = _event.offsetY;
|
|
71
|
-
let size = (_y = this.viralNavigationCube.cubeRenderer) === null || _y === void 0 ? void 0 : _y.renderer.getSize(new three_1.Vector2());
|
|
72
|
-
let mouse = new three_1.Vector2(x / size.width * 2 - 1, -y / size.height * 2 + 1);
|
|
73
|
-
let raycaster = new three_1.Raycaster();
|
|
74
|
-
raycaster.setFromCamera(mouse, (_z = this.viralNavigationCube.cubeCamera) === null || _z === void 0 ? void 0 : _z.camera);
|
|
75
|
-
let intersects = raycaster.intersectObjects((_0 = this.viralNavigationCube.cubeScene) === null || _0 === void 0 ? void 0 : _0.objects);
|
|
76
|
-
if (intersects.length > 0 && intersects[0].object != ((_1 = this.viralNavigationCube.cubeScene) === null || _1 === void 0 ? void 0 : _1.cube)) {
|
|
77
|
-
if (intersects[0].object.parent && intersects[0].object.parent.name != '' && (intersects[0].object.parent.children.length == 2 || intersects[0].object.parent.children.length == 3)) {
|
|
78
|
-
this.viralNavigationCube.cubeScene.activePlane = intersects[0].object.parent;
|
|
79
|
-
for (let index = 0; index < this.viralNavigationCube.cubeScene.activePlane.children.length; index++) {
|
|
80
|
-
let element = this.viralNavigationCube.cubeScene.activePlane.children[index];
|
|
81
|
-
element.material.opacity = 0.2;
|
|
82
|
-
element.needsUpdate = true;
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
else {
|
|
86
|
-
this.viralNavigationCube.cubeScene.activePlane = intersects[0].object;
|
|
87
|
-
this.viralNavigationCube.cubeScene.activePlane.material.opacity = 0.2;
|
|
88
|
-
this.viralNavigationCube.cubeScene.activePlane.material.needsUpdate = true;
|
|
89
|
-
}
|
|
90
|
-
(_2 = this.viralNavigationCube.cubeRenderer) === null || _2 === void 0 ? void 0 : _2.render();
|
|
91
|
-
}
|
|
92
|
-
});
|
|
93
|
-
if (this.viralNavigationCube.cubeRenderer) {
|
|
94
|
-
this.setupMouseClick(this.viralNavigationCube.cubeRenderer.renderer.domElement);
|
|
95
|
-
this.setupMouseMove(this.viralNavigationCube.cubeRenderer.renderer.domElement);
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
//#region Mouse Click
|
|
99
|
-
setupMouseClick(domElement) {
|
|
100
|
-
domElement.onclick = this.handleClick;
|
|
101
|
-
}
|
|
102
|
-
//#endregion
|
|
103
|
-
//#region Mouse Move
|
|
104
|
-
setupMouseMove(domElement) {
|
|
105
|
-
domElement.onmousemove = this.handleMove;
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
exports.CubeMouse = CubeMouse;
|
|
109
|
-
//# sourceMappingURL=cube.mouse.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cube.mouse.js","sourceRoot":"","sources":["../../../../src/gui/navigation-cube/components/cube.mouse.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ViralNavigationCube = void 0;
|
|
4
|
-
const types_1 = require("../../types");
|
|
5
|
-
const cube_camera_1 = require("./components/cube-camera");
|
|
6
|
-
const cube_renderer_1 = require("./components/cube-renderer");
|
|
7
|
-
const cube_scene_1 = require("./components/cube-scene");
|
|
8
|
-
const cube_mouse_1 = require("./components/cube.mouse");
|
|
9
|
-
class ViralNavigationCube {
|
|
10
|
-
constructor(viralViewerApi) {
|
|
11
|
-
this.viralViewerApi = viralViewerApi;
|
|
12
|
-
this.targetElement = null;
|
|
13
|
-
this.cubeScene = null;
|
|
14
|
-
this.cubeRenderer = null;
|
|
15
|
-
this.cubeCamera = null;
|
|
16
|
-
this.cubeMouse = null;
|
|
17
|
-
this.injectCubeWrapperElement();
|
|
18
|
-
this.targetElement = document.getElementById('orientCubeWrapper');
|
|
19
|
-
if (this.targetElement) {
|
|
20
|
-
this.cubeScene = new cube_scene_1.CubeScene(this);
|
|
21
|
-
this.cubeRenderer = new cube_renderer_1.CubeRenderer(this);
|
|
22
|
-
this.cubeCamera = new cube_camera_1.CubeCamera(this);
|
|
23
|
-
this.cubeMouse = new cube_mouse_1.CubeMouse(this);
|
|
24
|
-
// this.cubeRenderer.anim();
|
|
25
|
-
}
|
|
26
|
-
this.viralViewerApi.lifeCycleEvent.emit(types_1.ViralutionEvent.LOADED_CUBE);
|
|
27
|
-
}
|
|
28
|
-
injectCubeWrapperElement() {
|
|
29
|
-
if (this.viralViewerApi.targetElement) {
|
|
30
|
-
const wrapperDiv = document.createElement('div');
|
|
31
|
-
wrapperDiv.setAttribute("style", 'position:absolute; right:10px; top:10px; display:flex');
|
|
32
|
-
//home button
|
|
33
|
-
const button = document.createElement('div');
|
|
34
|
-
button.innerHTML = `<svg xmlns="http://www.w3.org/2000/svg" style="fill:#e2e6dc;cursor: pointer; filter: drop-shadow(1px 1px 2px rgba(0, 0, 0, 0.5));" height="20px" viewBox="0 0 576 512"><!--! Font Awesome Free 6.4.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path d="M280.37 148.26L96 300.11V464a16 16 0 0 0 16 16l112.06-.29a16 16 0 0 0 15.92-16V368a16 16 0 0 1 16-16h64a16 16 0 0 1 16 16v95.64a16 16 0 0 0 16 16.05L464 480a16 16 0 0 0 16-16V300L295.67 148.26a12.19 12.19 0 0 0-15.3 0zM571.6 251.47L488 182.56V44.05a12 12 0 0 0-12-12h-56a12 12 0 0 0-12 12v72.61L318.47 43a48 48 0 0 0-61 0L4.34 251.47a12 12 0 0 0-1.6 16.9l25.5 31A12 12 0 0 0 45.15 301l235.22-193.74a12.19 12.19 0 0 1 15.3 0L530.9 301a12 12 0 0 0 16.9-1.6l25.5-31a12 12 0 0 0-1.7-16.93z"/></svg>`;
|
|
35
|
-
button.addEventListener('click', (ev) => { this.handleClick(); });
|
|
36
|
-
wrapperDiv.appendChild(button);
|
|
37
|
-
//cube div
|
|
38
|
-
const cubeDiv = document.createElement('div');
|
|
39
|
-
cubeDiv.setAttribute('style', 'height:130px; width:130px');
|
|
40
|
-
cubeDiv.id = 'orientCubeWrapper';
|
|
41
|
-
wrapperDiv.appendChild(cubeDiv);
|
|
42
|
-
this.viralViewerApi.targetElement.appendChild(wrapperDiv);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
handleClick() {
|
|
46
|
-
this.viralViewerApi.viralCamera.focusModelByName();
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
exports.ViralNavigationCube = ViralNavigationCube;
|
|
50
|
-
//# sourceMappingURL=viral-navigation-cube.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"viral-navigation-cube.js","sourceRoot":"","sources":["../../../src/gui/navigation-cube/viral-navigation-cube.ts"],"names":[],"mappings":";;;AAAA,uCAA8C;AAE9C,0DAAsD;AACtD,8DAA0D;AAC1D,wDAAoD;AACpD,wDAAoD;AAEpD,MAAa,mBAAmB;IAM5B,YAAmB,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;QALjD,kBAAa,GAAuB,IAAI,CAAC;QACzC,cAAS,GAAqB,IAAI,CAAC;QACnC,iBAAY,GAAwB,IAAI,CAAC;QACzC,eAAU,GAAsB,IAAI,CAAC;QACrC,cAAS,GAAqB,IAAI,CAAC;QAE/B,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAChC,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;QAClE,IAAI,IAAI,CAAC,aAAa,EAAE;YACpB,IAAI,CAAC,SAAS,GAAG,IAAI,sBAAS,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,CAAC,YAAY,GAAG,IAAI,4BAAY,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,CAAC,UAAU,GAAG,IAAI,wBAAU,CAAC,IAAI,CAAC,CAAC;YACvC,IAAI,CAAC,SAAS,GAAG,IAAI,sBAAS,CAAC,IAAI,CAAC,CAAC;YACrC,4BAA4B;SAC/B;QACD,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,uBAAe,CAAC,WAAW,CAAC,CAAC;IAEzE,CAAC;IACO,wBAAwB;QAC5B,IAAI,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE;YACnC,MAAM,UAAU,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACjD,UAAU,CAAC,YAAY,CAAC,OAAO,EAAE,uDAAuD,CAAC,CAAC;YAE1F,aAAa;YACb,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC7C,MAAM,CAAC,SAAS,GAAG,y0BAAy0B,CAAC;YAE71B,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,CAAC,EAAc,EAAE,EAAE,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA,CAAC,CAAC,CAAC,CAAC;YAE7E,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;YAE/B,UAAU;YACV,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC9C,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,2BAA2B,CAAC,CAAC;YAC3D,OAAO,CAAC,EAAE,GAAG,mBAAmB,CAAA;YAEhC,UAAU,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAChC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;SAC7D;IAGL,CAAC;IACO,WAAW;QACf,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;IACvD,CAAC;CACJ;AA9CD,kDA8CC"}
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ViralSpinner = void 0;
|
|
4
|
-
const colors_1 = require("../../const/colors");
|
|
5
|
-
const html_1 = require("../../utils/html");
|
|
6
|
-
class ViralSpinner {
|
|
7
|
-
constructor(viralViewerApi) {
|
|
8
|
-
this.viralViewerApi = viralViewerApi;
|
|
9
|
-
this.spinner = null;
|
|
10
|
-
this.logo = `<svg
|
|
11
|
-
width="348.25488"
|
|
12
|
-
height="512.00006"
|
|
13
|
-
viewBox="0 0 92.14244 135.46669"
|
|
14
|
-
version="1.1"
|
|
15
|
-
id="svg7238"
|
|
16
|
-
sodipodi:docname="viral3.svg"
|
|
17
|
-
inkscape:export-filename="viral2.svg"
|
|
18
|
-
inkscape:export-xdpi="96"
|
|
19
|
-
inkscape:export-ydpi="96"
|
|
20
|
-
xml:space="preserve"
|
|
21
|
-
inkscape:version="1.3 (0e150ed6c4, 2023-07-21)"
|
|
22
|
-
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
23
|
-
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
24
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
25
|
-
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
|
|
26
|
-
id="namedview7240"
|
|
27
|
-
pagecolor="#ffffff"
|
|
28
|
-
bordercolor="#000000"
|
|
29
|
-
borderopacity="0.25"
|
|
30
|
-
inkscape:showpageshadow="2"
|
|
31
|
-
inkscape:pageopacity="0.0"
|
|
32
|
-
inkscape:pagecheckerboard="0"
|
|
33
|
-
inkscape:deskcolor="#d1d1d1"
|
|
34
|
-
inkscape:document-units="px"
|
|
35
|
-
showgrid="false"
|
|
36
|
-
showborder="false"
|
|
37
|
-
inkscape:zoom="0.40576172"
|
|
38
|
-
inkscape:cx="-1316.0433"
|
|
39
|
-
inkscape:cy="1304.9531"
|
|
40
|
-
inkscape:window-width="1920"
|
|
41
|
-
inkscape:window-height="1027"
|
|
42
|
-
inkscape:window-x="-8"
|
|
43
|
-
inkscape:window-y="-8"
|
|
44
|
-
inkscape:window-maximized="1"
|
|
45
|
-
inkscape:current-layer="layer1" /><defs
|
|
46
|
-
id="defs7235" /><g
|
|
47
|
-
inkscape:label="Layer 1"
|
|
48
|
-
inkscape:groupmode="layer"
|
|
49
|
-
id="layer1"
|
|
50
|
-
transform="translate(296.14808,-348.40288)"><g
|
|
51
|
-
id="g62"
|
|
52
|
-
transform="matrix(1.1994268,0,0,1.1994268,59.059868,-69.480876)"><path
|
|
53
|
-
style="fill:#17312c;fill-opacity:1;stroke:none;stroke-width:0.661461;stroke-dasharray:none;stroke-opacity:1"
|
|
54
|
-
d="m -289.19425,348.40289 -6.86824,4.59207 -0.0856,108.35077 h 6.87917 l 17.31497,-12.15638 v -85.06066 z"
|
|
55
|
-
id="path39-9" /><path
|
|
56
|
-
style="fill:#17312c;fill-opacity:1;stroke:none;stroke-width:0.661458;stroke-dasharray:none;stroke-opacity:1"
|
|
57
|
-
d="m -257.47249,439.0223 38.14646,-26.78161 -12.6475,-11.56223 -25.49896,17.84445 v 20.49939"
|
|
58
|
-
id="path57-3" /><path
|
|
59
|
-
style="fill:#56b77e;fill-opacity:1;stroke:none;stroke-width:0.661458;stroke-dasharray:none;stroke-opacity:1"
|
|
60
|
-
d="m -257.19962,393.72628 8.85344,8.09374 9.91797,-6.96314 -8.80442,-8.12816 z"
|
|
61
|
-
id="path62-1" /></g></g></svg>`;
|
|
62
|
-
this.injectSpinner();
|
|
63
|
-
}
|
|
64
|
-
injectSpinner() {
|
|
65
|
-
// Create the @keyframes animation
|
|
66
|
-
const keyframes = `@keyframes spin {
|
|
67
|
-
0% { transform: rotate(0deg); }
|
|
68
|
-
100% { transform: rotate(360deg); }
|
|
69
|
-
}`;
|
|
70
|
-
// Create a style element and append the keyframes animation
|
|
71
|
-
const style = document.createElement('style');
|
|
72
|
-
style.innerHTML = keyframes;
|
|
73
|
-
// Append the style element to the document head
|
|
74
|
-
document.head.appendChild(style);
|
|
75
|
-
if (this.viralViewerApi.targetElement) {
|
|
76
|
-
this.spinner = document.createElement('div');
|
|
77
|
-
this.spinner.setAttribute('style', `position: absolute;top:0px;left:0px;right:0px;bottom:0px;background-color: ${colors_1.LightTheme.background};justify-content: center;align-items: center;display:none; z-index: 100`);
|
|
78
|
-
const divWrapperDiv = document.createElement('div');
|
|
79
|
-
const spinnerCircle = document.createElement('div');
|
|
80
|
-
spinnerCircle.setAttribute('style', `width: 200px; height: 200px; border-radius: 50%; border: 2px solid #ccc; border-top: 2px solid ${colors_1.LightTheme.primary}; animation: spin 1.5s linear infinite;`);
|
|
81
|
-
//logo
|
|
82
|
-
const logo = html_1.HTMLUtil.createElementFromHTML(this.logo);
|
|
83
|
-
logo.setAttribute('style', "height:150px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)");
|
|
84
|
-
divWrapperDiv.appendChild(spinnerCircle);
|
|
85
|
-
divWrapperDiv.appendChild(logo);
|
|
86
|
-
this.spinner.appendChild(divWrapperDiv);
|
|
87
|
-
this.viralViewerApi.targetElement.appendChild(this.spinner);
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
showSpinner() {
|
|
91
|
-
if (this.spinner) {
|
|
92
|
-
this.spinner.style.setProperty("display", 'flex');
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
hideSpinner() {
|
|
96
|
-
if (this.spinner) {
|
|
97
|
-
this.spinner.style.setProperty("display", 'none');
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
exports.ViralSpinner = ViralSpinner;
|
|
102
|
-
//# sourceMappingURL=viral-spinner.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"viral-spinner.js","sourceRoot":"","sources":["../../../src/gui/spinner/viral-spinner.ts"],"names":[],"mappings":";;;AAAA,+CAAgD;AAChD,2CAA4C;AAG5C,MAAa,YAAY;IAsDtB,YAAmB,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;QArDzC,YAAO,GAAuB,IAAI,CAAA;QAClC,SAAI,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;wCAmDsB,CAAA;QAElC,IAAI,CAAC,aAAa,EAAE,CAAC;IACxB,CAAC;IACO,aAAa;QAClB,kCAAkC;QAClC,MAAM,SAAS,GAAG;;;QAGhB,CAAC;QAEH,4DAA4D;QAC5D,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC9C,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;QAE5B,gDAAgD;QAChD,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,IAAI,CAAC,cAAc,CAAC,aAAa,EAAE;YACpC,IAAI,CAAC,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAC7C,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,OAAO,EAAE,8EAA8E,mBAAU,CAAC,UAAU,4EAA4E,CAAC,CAAA;YACnN,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YAEpD,MAAM,aAAa,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;YACpD,aAAa,CAAC,YAAY,CAAC,OAAO,EAAE,kGAAkG,mBAAU,CAAC,OAAO,yCAAyC,CAAC,CAAC;YACnM,MAAM;YACN,MAAM,IAAI,GAAG,eAAQ,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvD,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,gFAAgF,CAAC,CAAC;YAE7G,aAAa,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;YACzC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAEhC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,aAAa,CAAC,CAAC;YACxC,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;SAC9D;IACJ,CAAC;IACM,WAAW;QACf,IAAI,IAAI,CAAC,OAAO,EAAE;YACf,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,EAAC,MAAM,CAAC,CAAC;SACnD;IACJ,CAAC;IACM,WAAW;QACf,IAAI,IAAI,CAAC,OAAO,EAAE;YACf,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,EAAC,MAAM,CAAC,CAAC;SACnD;IACJ,CAAC;CACH;AAlGD,oCAkGC"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ViralToolAmbientOcclusion = void 0;
|
|
4
|
-
class ViralToolAmbientOcclusion {
|
|
5
|
-
constructor(viralTools) {
|
|
6
|
-
this.viralTools = viralTools;
|
|
7
|
-
}
|
|
8
|
-
activate(input) {
|
|
9
|
-
if (input.activate) {
|
|
10
|
-
}
|
|
11
|
-
else {
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
exports.ViralToolAmbientOcclusion = ViralToolAmbientOcclusion;
|
|
16
|
-
//# sourceMappingURL=viral-tool-ambient-occlusion.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"viral-tool-ambient-occlusion.js","sourceRoot":"","sources":["../../../../src/gui/tools/tools/viral-tool-ambient-occlusion.ts"],"names":[],"mappings":";;;AAGA,MAAa,yBAAyB;IACpC,YAAmB,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAAG,CAAC;IACtC,QAAQ,CAAC,KAAsB;QACpC,IAAI,KAAK,CAAC,QAAQ,EAAE;SACnB;aAAM;SACN;IACH,CAAC;CACF;AAPD,8DAOC"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ViralToolDarkMode = void 0;
|
|
4
|
-
class ViralToolDarkMode {
|
|
5
|
-
constructor(viralTools) {
|
|
6
|
-
this.viralTools = viralTools;
|
|
7
|
-
}
|
|
8
|
-
activate(input) {
|
|
9
|
-
if (this.viralTools.viralViewerApi.targetElement) {
|
|
10
|
-
if (input.activate) {
|
|
11
|
-
this.viralTools.viralViewerApi.targetElement.style.setProperty("background-color", "#303030");
|
|
12
|
-
}
|
|
13
|
-
else {
|
|
14
|
-
this.viralTools.viralViewerApi.targetElement.style.setProperty("background-color", "unset");
|
|
15
|
-
}
|
|
16
|
-
this.viralTools.viralViewerApi.localStorageService.setObject("viral-viewer-tool", this.viralTools.tools);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
exports.ViralToolDarkMode = ViralToolDarkMode;
|
|
21
|
-
//# sourceMappingURL=viral-tool-dark-mode.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"viral-tool-dark-mode.js","sourceRoot":"","sources":["../../../../src/gui/tools/tools/viral-tool-dark-mode.ts"],"names":[],"mappings":";;;AAIA,MAAa,iBAAiB;IAE1B,YAAmB,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;IAEzC,CAAC;IACM,QAAQ,CAAC,KAAsB;QAClC,IAAI,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,aAAa,EAAE;YAC9C,IAAI,KAAK,CAAC,QAAQ,EAAE;gBAChB,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,kBAAkB,EAAE,SAAS,CAAC,CAAC;aAEjG;iBACI;gBACD,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,kBAAkB,EAAE,OAAO,CAAC,CAAC;aAC/F;YACD,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,mBAAmB,CAAC,SAAS,CAAC,mBAAmB,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAA;SAC3G;IACL,CAAC;CACJ;AAjBD,8CAiBC"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ViralToolElevation = void 0;
|
|
4
|
-
class ViralToolElevation {
|
|
5
|
-
constructor(viralTools) {
|
|
6
|
-
this.viralTools = viralTools;
|
|
7
|
-
this.isActivated = false;
|
|
8
|
-
}
|
|
9
|
-
activate(input) {
|
|
10
|
-
this.isActivated = input.activate;
|
|
11
|
-
}
|
|
12
|
-
onMouseMove(mousePoint) {
|
|
13
|
-
if (mousePoint) {
|
|
14
|
-
let result = this.viralTools.viralViewerApi.viralCamera.clientToWorld();
|
|
15
|
-
if (result && result.length > 0) {
|
|
16
|
-
let coordinate = result[0].point;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
onMouseClick(mousePoint) {
|
|
21
|
-
if (mousePoint) {
|
|
22
|
-
let result = this.viralTools.viralViewerApi.viralCamera.clientToWorld();
|
|
23
|
-
if (result && result.length > 0) {
|
|
24
|
-
let coordinate = result[0].point;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
exports.ViralToolElevation = ViralToolElevation;
|
|
30
|
-
//# sourceMappingURL=viral-tool-elevation.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"viral-tool-elevation.js","sourceRoot":"","sources":["../../../../src/gui/tools/tools/viral-tool-elevation.ts"],"names":[],"mappings":";;;AAIA,MAAa,kBAAkB;IAE3B,YAAmB,UAAsB;QAAtB,eAAU,GAAV,UAAU,CAAY;QADlC,gBAAW,GAAG,KAAK,CAAC;IAG3B,CAAC;IACM,QAAQ,CAAC,KAAsB;QAClC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,QAAQ,CAAA;IACrC,CAAC;IACM,WAAW,CAAC,UAAmB;QAClC,IAAI,UAAU,EAAE;YACZ,IAAI,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC;YACxE,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC7B,IAAI,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;aACpC;SACJ;IACL,CAAC;IAEM,YAAY,CAAC,UAAkB;QAElC,IAAG,UAAU,EACb;YACI,IAAI,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,WAAW,CAAC,aAAa,EAAE,CAAC;YACxE,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC7B,IAAI,UAAU,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;aACpC;SACJ;IACL,CAAC;CACJ;AA3BD,gDA2BC"}
|
|
@@ -1,243 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ViralToolMeasure = void 0;
|
|
4
|
-
const three_1 = require("three");
|
|
5
|
-
const colors_1 = require("../../../const/colors");
|
|
6
|
-
const __1 = require("../../..");
|
|
7
|
-
class ViralToolMeasure {
|
|
8
|
-
constructor(viralTools) {
|
|
9
|
-
this.viralTools = viralTools;
|
|
10
|
-
this.viralToolMeasureScene = new three_1.Scene();
|
|
11
|
-
this.isActivated = false;
|
|
12
|
-
this.measures = [];
|
|
13
|
-
this.point1 = null;
|
|
14
|
-
this.point2 = null;
|
|
15
|
-
this.tempPoint2 = null;
|
|
16
|
-
this.defaultSprite = this.makeSprite();
|
|
17
|
-
this.measureObject = new three_1.Mesh();
|
|
18
|
-
this.tempMeasure = new three_1.Mesh();
|
|
19
|
-
this.tempSprite1 = null;
|
|
20
|
-
this.tempLine = null;
|
|
21
|
-
this.tempSprite2 = null;
|
|
22
|
-
}
|
|
23
|
-
activate(input) {
|
|
24
|
-
this.isActivated = input.activate;
|
|
25
|
-
if (!this.isActivated) {
|
|
26
|
-
this.dispose();
|
|
27
|
-
}
|
|
28
|
-
else {
|
|
29
|
-
if (!this.viralToolMeasureScene.getObjectByName('measure-object')) {
|
|
30
|
-
this.measureObject.name = 'measure-object';
|
|
31
|
-
this.viralToolMeasureScene.add(this.measureObject);
|
|
32
|
-
}
|
|
33
|
-
if (!this.viralToolMeasureScene.getObjectByName('temp-measure')) {
|
|
34
|
-
this.tempMeasure.name = 'temp-measure';
|
|
35
|
-
this.viralToolMeasureScene.add(this.tempMeasure);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
onMouseMove(mousePoint) {
|
|
40
|
-
if (mousePoint) {
|
|
41
|
-
let result = this.viralTools.viralViewerApi.viralCamera.clientToWorld();
|
|
42
|
-
if (result && result.length > 0) {
|
|
43
|
-
let coordinate = result[0].point;
|
|
44
|
-
if (this.point1 && !this.point2) {
|
|
45
|
-
this.tempPoint2 = coordinate;
|
|
46
|
-
//sprite 1
|
|
47
|
-
if (!this.tempSprite1) {
|
|
48
|
-
this.tempSprite1 = this.defaultSprite.clone();
|
|
49
|
-
this.tempSprite1.position.copy(this.point1);
|
|
50
|
-
this.tempMeasure.add(this.tempSprite1);
|
|
51
|
-
}
|
|
52
|
-
else {
|
|
53
|
-
this.tempSprite1.position.copy(this.point1);
|
|
54
|
-
}
|
|
55
|
-
//sprite 2
|
|
56
|
-
if (!this.tempSprite2) {
|
|
57
|
-
this.tempSprite2 = this.defaultSprite.clone();
|
|
58
|
-
this.tempSprite2.position.copy(this.tempPoint2);
|
|
59
|
-
this.tempMeasure.add(this.tempSprite2);
|
|
60
|
-
}
|
|
61
|
-
else {
|
|
62
|
-
this.tempSprite2.position.copy(this.tempPoint2);
|
|
63
|
-
}
|
|
64
|
-
//line
|
|
65
|
-
if (!this.tempLine) {
|
|
66
|
-
this.tempLine = this.makeLine(this.point1, this.tempPoint2);
|
|
67
|
-
this.tempMeasure.add(this.tempLine);
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
// this.tempLine = this.makeLine(this.point1, this.tempPoint2);
|
|
71
|
-
// this.tempLine.matrixWorldNeedsUpdate = true;
|
|
72
|
-
const positions = this.tempLine.geometry.attributes.position;
|
|
73
|
-
positions.setXYZ(0, this.point1.x, this.point1.y, this.point1.z);
|
|
74
|
-
positions.setXYZ(1, this.tempPoint2.x, this.tempPoint2.y, this.tempPoint2.z);
|
|
75
|
-
positions.needsUpdate = true;
|
|
76
|
-
}
|
|
77
|
-
//distance sprite
|
|
78
|
-
// let distanceSprite = this.makeDistanceSprite(this.point1, this.tempPoint2);
|
|
79
|
-
// this.tempMeasure.add(distanceSprite);
|
|
80
|
-
//rerender
|
|
81
|
-
this.viralTools.viralViewerApi.viralRenderer.render();
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
onMouseClick(mousePoint) {
|
|
87
|
-
if (mousePoint) {
|
|
88
|
-
let result = this.viralTools.viralViewerApi.viralCamera.clientToWorld();
|
|
89
|
-
if (result && result.length > 0) {
|
|
90
|
-
let coordinate = result[0].point;
|
|
91
|
-
if (!this.point1 && !this.point2) {
|
|
92
|
-
this.point1 = coordinate;
|
|
93
|
-
let sprite1 = this.defaultSprite.clone();
|
|
94
|
-
sprite1.position.copy(this.point1);
|
|
95
|
-
this.tempMeasure.add(sprite1);
|
|
96
|
-
}
|
|
97
|
-
else if (this.point1 && !this.point2) {
|
|
98
|
-
this.point2 = coordinate;
|
|
99
|
-
__1.THREEUtil.clearChildren(this.tempMeasure);
|
|
100
|
-
//sprite 1
|
|
101
|
-
let sprite1 = this.defaultSprite.clone();
|
|
102
|
-
sprite1.position.copy(this.point1);
|
|
103
|
-
this.measureObject.add(sprite1);
|
|
104
|
-
//sprite 2
|
|
105
|
-
let sprite2 = this.defaultSprite.clone();
|
|
106
|
-
sprite2.position.copy(this.point2);
|
|
107
|
-
this.measureObject.add(sprite2);
|
|
108
|
-
//line
|
|
109
|
-
let line = this.makeLine(this.point1, this.point2);
|
|
110
|
-
this.measureObject.add(line);
|
|
111
|
-
//distance sprite
|
|
112
|
-
let distanceSprite = this.makeDistanceSprite(this.point1, this.point2);
|
|
113
|
-
this.measureObject.add(distanceSprite);
|
|
114
|
-
//rerender
|
|
115
|
-
this.viralTools.viralViewerApi.viralRenderer.render();
|
|
116
|
-
}
|
|
117
|
-
else if (this.point1 && this.point2) {
|
|
118
|
-
this.resetPickedPoints();
|
|
119
|
-
this.point1 = coordinate;
|
|
120
|
-
let sprite1 = this.defaultSprite.clone();
|
|
121
|
-
sprite1.position.copy(this.point1);
|
|
122
|
-
this.tempMeasure.add(sprite1);
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
resetPickedPoints() {
|
|
128
|
-
this.point1 = null;
|
|
129
|
-
this.point2 = null;
|
|
130
|
-
}
|
|
131
|
-
makeSprite() {
|
|
132
|
-
function makeCircleImage() {
|
|
133
|
-
let canvas = document.createElement('canvas');
|
|
134
|
-
let ctx = canvas.getContext('2d');
|
|
135
|
-
let size = 32;
|
|
136
|
-
canvas.width = size;
|
|
137
|
-
canvas.height = size;
|
|
138
|
-
let r = size * 0.8 / 2;
|
|
139
|
-
let blur = size - r;
|
|
140
|
-
if (ctx) {
|
|
141
|
-
ctx.shadowBlur = 5;
|
|
142
|
-
ctx.shadowColor = '#555';
|
|
143
|
-
ctx.fillStyle = '#fff';
|
|
144
|
-
ctx.beginPath();
|
|
145
|
-
ctx.arc(size / 2, size / 2, r, 0, Math.PI * 2);
|
|
146
|
-
ctx.closePath();
|
|
147
|
-
ctx.fill();
|
|
148
|
-
ctx.shadowBlur = 0;
|
|
149
|
-
ctx.fillStyle = colors_1.LightTheme.primary;
|
|
150
|
-
ctx.beginPath();
|
|
151
|
-
ctx.arc(size / 2, size / 2, r * 0.5, 0, Math.PI * 2);
|
|
152
|
-
ctx.closePath();
|
|
153
|
-
ctx.fill();
|
|
154
|
-
}
|
|
155
|
-
return canvas;
|
|
156
|
-
}
|
|
157
|
-
let circleTexture = new three_1.CanvasTexture(makeCircleImage());
|
|
158
|
-
let circleMaterial = new three_1.SpriteMaterial({
|
|
159
|
-
map: circleTexture,
|
|
160
|
-
sizeAttenuation: false,
|
|
161
|
-
});
|
|
162
|
-
let circleSprite = new three_1.Sprite(circleMaterial);
|
|
163
|
-
circleSprite.scale.setScalar(0.08);
|
|
164
|
-
return circleSprite;
|
|
165
|
-
}
|
|
166
|
-
makeLine(position1, position2) {
|
|
167
|
-
let lineMaterial = new three_1.LineBasicMaterial({
|
|
168
|
-
color: __1.THREEUtil.hexToThreejsColor(colors_1.LightTheme.primary),
|
|
169
|
-
linewidth: 20,
|
|
170
|
-
});
|
|
171
|
-
const points = [position1, position2];
|
|
172
|
-
const geometry = new three_1.BufferGeometry().setFromPoints(points);
|
|
173
|
-
let line = new three_1.Line(geometry, lineMaterial);
|
|
174
|
-
return line;
|
|
175
|
-
}
|
|
176
|
-
makeDistanceSprite(position1, position2) {
|
|
177
|
-
function roundRect(ctx, x, y, w, h, r) {
|
|
178
|
-
ctx.beginPath();
|
|
179
|
-
ctx.moveTo(x + r, y);
|
|
180
|
-
ctx.lineTo(x + w - r, y);
|
|
181
|
-
ctx.quadraticCurveTo(x + w, y, x + w, y + r);
|
|
182
|
-
ctx.lineTo(x + w, y + h - r);
|
|
183
|
-
ctx.quadraticCurveTo(x + w, y + h, x + w - r, y + h);
|
|
184
|
-
ctx.lineTo(x + r, y + h);
|
|
185
|
-
ctx.quadraticCurveTo(x, y + h, x, y + h - r);
|
|
186
|
-
ctx.lineTo(x, y + r);
|
|
187
|
-
ctx.quadraticCurveTo(x, y, x + r, y);
|
|
188
|
-
ctx.closePath();
|
|
189
|
-
ctx.fill();
|
|
190
|
-
}
|
|
191
|
-
let canvas = document.createElement('canvas');
|
|
192
|
-
let ctx = canvas.getContext('2d');
|
|
193
|
-
let fontsize = 32;
|
|
194
|
-
if (ctx) {
|
|
195
|
-
ctx.font = 'bolder ' + fontsize + 'px "Open Sans", Arial';
|
|
196
|
-
let length = Math.round(position1.distanceTo(position2));
|
|
197
|
-
let text = '~ ' + length;
|
|
198
|
-
let size = ctx.measureText(text);
|
|
199
|
-
let paddingLeft = 20;
|
|
200
|
-
let paddingTop = 10;
|
|
201
|
-
let margin = 10;
|
|
202
|
-
canvas.width = size.width + paddingLeft * 2 + margin * 2;
|
|
203
|
-
canvas.height = fontsize + paddingTop * 2 + margin * 2;
|
|
204
|
-
ctx.shadowBlur = 10;
|
|
205
|
-
ctx.shadowColor = '#555';
|
|
206
|
-
ctx.fillStyle = colors_1.LightTheme.primary;
|
|
207
|
-
roundRect(ctx, margin, margin, canvas.width - margin * 2, canvas.height - margin * 2, 10);
|
|
208
|
-
ctx.shadowBlur = 0;
|
|
209
|
-
ctx.fillStyle = '#fff';
|
|
210
|
-
ctx.textAlign = 'left';
|
|
211
|
-
ctx.textBaseline = 'top';
|
|
212
|
-
ctx.font = 'bolder ' + fontsize + 'px "Open Sans", Arial';
|
|
213
|
-
ctx.fillText(text, paddingLeft + margin, paddingTop + margin);
|
|
214
|
-
}
|
|
215
|
-
let texture = new three_1.CanvasTexture(canvas);
|
|
216
|
-
let sprite = new three_1.Sprite(new three_1.SpriteMaterial({
|
|
217
|
-
map: texture,
|
|
218
|
-
sizeAttenuation: false,
|
|
219
|
-
}));
|
|
220
|
-
sprite.scale.set(0.002 * canvas.width * 0.5, 0.0025 * canvas.height * 0.5, 1);
|
|
221
|
-
let positionPoint = __1.THREEUtil.middlePoint(position1, position2);
|
|
222
|
-
sprite.position.copy(positionPoint);
|
|
223
|
-
return sprite;
|
|
224
|
-
}
|
|
225
|
-
dispose() {
|
|
226
|
-
this.resetPickedPoints();
|
|
227
|
-
__1.THREEUtil.clearChildren(this.measureObject);
|
|
228
|
-
__1.THREEUtil.clearChildren(this.tempMeasure);
|
|
229
|
-
this.viralTools.viralViewerApi.viralRenderer.render();
|
|
230
|
-
}
|
|
231
|
-
onKeyPress(evt) {
|
|
232
|
-
if (evt.code == "Escape") {
|
|
233
|
-
__1.THREEUtil.clearChildren(this.tempMeasure);
|
|
234
|
-
this.point1 = null;
|
|
235
|
-
this.point2 = null;
|
|
236
|
-
this.tempPoint2 = null;
|
|
237
|
-
//rerender
|
|
238
|
-
this.viralTools.viralViewerApi.viralRenderer.render();
|
|
239
|
-
}
|
|
240
|
-
}
|
|
241
|
-
}
|
|
242
|
-
exports.ViralToolMeasure = ViralToolMeasure;
|
|
243
|
-
//# sourceMappingURL=viral-tool-measure.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"viral-tool-measure.js","sourceRoot":"","sources":["../../../../src/gui/tools/tools/viral-tool-measure.ts"],"names":[],"mappings":"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"}
|