viral-viewer-2 0.0.8 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,28 @@
1
+ import CameraControls from "camera-controls";
2
+ import { ViralViewerState } from "../../types";
3
+ import { ViralViewerApi } from "../../viral-viewer-api";
4
+ import { PerspectiveCamera, Raycaster, Vector3 } from "three";
5
+ export declare class ViralCamera {
6
+ viralViewerApi: ViralViewerApi;
7
+ raycaster: Raycaster;
8
+ camera: PerspectiveCamera;
9
+ cameraControls: CameraControls;
10
+ targetElement: HTMLElement;
11
+ constructor(viralViewerApi: ViralViewerApi);
12
+ setupCamera(): void;
13
+ setupRaycaster(): void;
14
+ /**
15
+ * resize canvas by resize div
16
+ */
17
+ resizeCanvas(): void;
18
+ /**
19
+ * focuse model
20
+ * @param objectName :model name
21
+ */
22
+ focusModelByName(objectName: string): void;
23
+ getState(): ViralViewerState;
24
+ restoreState(state: ViralViewerState): void;
25
+ clientToWorld(): void;
26
+ worldToClient(point: Vector3): Vector3;
27
+ private castRay;
28
+ }
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ViralCamera = void 0;
4
+ const camera_controls_1 = require("camera-controls");
5
+ const types_1 = require("../../types");
6
+ const three_1 = require("three");
7
+ class ViralCamera {
8
+ constructor(viralViewerApi) {
9
+ this.viralViewerApi = viralViewerApi;
10
+ this.targetElement = this.viralViewerApi.options.container;
11
+ this.setupCamera();
12
+ this.setupRaycaster();
13
+ }
14
+ setupCamera() {
15
+ this.camera = new three_1.PerspectiveCamera(60, this.targetElement.offsetWidth / this.targetElement.offsetHeight, 0.01, 2000000);
16
+ this.camera.position.set(0, 0, 2);
17
+ if (this.viralViewerApi.options && this.viralViewerApi.options.cameraZUp) {
18
+ this.camera.up.set(0, 0, 1);
19
+ this.camera.position.set(100, 100, 0);
20
+ }
21
+ this.cameraControls = new camera_controls_1.default(this.camera, this.viralViewerApi.renderer.domElement);
22
+ // this.cameraControls.dollyToCursor = true;
23
+ this.cameraControls.infinityDolly = true;
24
+ this.cameraControls.setTarget(0, 0, 0);
25
+ this.cameraControls.mouseButtons.middle = camera_controls_1.default.ACTION.OFFSET;
26
+ // this.anim();
27
+ }
28
+ setupRaycaster() {
29
+ this.raycaster = new three_1.Raycaster();
30
+ }
31
+ /**
32
+ * resize canvas by resize div
33
+ */
34
+ resizeCanvas() {
35
+ this.camera.aspect = this.targetElement.clientWidth / this.targetElement.clientHeight;
36
+ this.camera.updateProjectionMatrix();
37
+ this.viralViewerApi.renderer.setSize(this.targetElement.clientWidth, this.targetElement.clientHeight);
38
+ this.viralViewerApi.rerender();
39
+ }
40
+ /**
41
+ * focuse model
42
+ * @param objectName :model name
43
+ */
44
+ focusModelByName(objectName) {
45
+ var object = this.viralViewerApi.scene.getObjectByName(objectName);
46
+ if (object) {
47
+ var bbox = new three_1.Box3().setFromObject(object);
48
+ this.viralViewerApi.viralCamera.cameraControls.fitToBox(bbox, true);
49
+ }
50
+ }
51
+ getState() {
52
+ let result = new types_1.ViralViewerState();
53
+ let cameraPoint1 = new three_1.Vector3(0, 0, 0);
54
+ let point = this.cameraControls.getPosition(cameraPoint1);
55
+ result.CameraPoint = { X: point.x, Y: point.y, Z: point.z };
56
+ let cameraPoint2 = new three_1.Vector3(0, 0, 0);
57
+ let point2 = this.cameraControls.getTarget(cameraPoint2);
58
+ result.TargetPoint = { X: point2.x, Y: point2.y, Z: point2.z };
59
+ return result;
60
+ }
61
+ restoreState(state) {
62
+ this.cameraControls.setPosition(state.CameraPoint.X, state.CameraPoint.Y, state.CameraPoint.Z, true);
63
+ this.cameraControls.setTarget(state.TargetPoint.X, state.TargetPoint.Y, state.TargetPoint.Z, true);
64
+ }
65
+ clientToWorld() {
66
+ }
67
+ worldToClient(point) {
68
+ let clonePoint = new three_1.Vector3(point.x, point.y, point.z);
69
+ this.camera.updateMatrixWorld(true);
70
+ let cameraPoint = clonePoint.project(this.camera);
71
+ cameraPoint.x = (cameraPoint.x + 1) * this.targetElement.offsetWidth / 2;
72
+ cameraPoint.y = -(cameraPoint.y - 1) * this.targetElement.offsetHeight / 2;
73
+ cameraPoint.z = 0;
74
+ return cameraPoint;
75
+ }
76
+ castRay(items) {
77
+ this.raycaster.setFromCamera(this.viralViewerApi.viralMouse.position, this.camera);
78
+ return this.raycaster.intersectObjects(items);
79
+ }
80
+ }
81
+ exports.ViralCamera = ViralCamera;
82
+ //# sourceMappingURL=viral-camera.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viral-camera.js","sourceRoot":"","sources":["../../../src/components/camera/viral-camera.ts"],"names":[],"mappings":";;;AAAA,qDAA6C;AAC7C,uCAA0E;AAE1E,iCAAuF;AAEvF,MAAa,WAAW;IAKpB,YAAmB,cAA8B;QAA9B,mBAAc,GAAd,cAAc,CAAgB;QAC7C,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,SAAS,CAAC;QAC3D,IAAI,CAAC,WAAW,EAAE,CAAC;QACnB,IAAI,CAAC,cAAc,EAAE,CAAC;IAC1B,CAAC;IACM,WAAW;QACd,IAAI,CAAC,MAAM,GAAG,IAAI,yBAAiB,CAAC,EAAE,EAAE,IAAI,CAAC,aAAa,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QACzH,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAClC,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,IAAI,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,SAAS,EAAE;YACtE,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;YAC5B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;SACzC;QACD,IAAI,CAAC,cAAc,GAAG,IAAI,yBAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC/F,4CAA4C;QAC5C,IAAI,CAAC,cAAc,CAAC,aAAa,GAAG,IAAI,CAAC;QACzC,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACvC,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,MAAM,GAAG,yBAAc,CAAC,MAAM,CAAC,MAAM,CAAC;QACvE,eAAe;IACnB,CAAC;IACM,cAAc;QACjB,IAAI,CAAC,SAAS,GAAG,IAAI,iBAAS,EAAE,CAAC;IACrC,CAAC;IACD;;OAEG;IACI,YAAY;QACf,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC;QACtF,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;QACrC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;QACtG,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,CAAC;IACnC,CAAC;IAED;;;OAGG;IACI,gBAAgB,CAAC,UAAkB;QACtC,IAAI,MAAM,GAAQ,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,eAAe,CAAC,UAAU,CAAC,CAAC;QACxE,IAAI,MAAM,EAAE;YACR,IAAI,IAAI,GAAG,IAAI,YAAI,EAAE,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC5C,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAW,EAAE,IAAI,CAAC,CAAC;SAG9E;IAGL,CAAC;IAEM,QAAQ;QACX,IAAI,MAAM,GAAqB,IAAI,wBAAgB,EAAE,CAAC;QACtD,IAAI,YAAY,GAAY,IAAI,eAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACjD,IAAI,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,YAAa,CAAC,CAAC;QAC3D,MAAM,CAAC,WAAW,GAAG,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CAAA;QAC3D,IAAI,YAAY,GAAY,IAAI,eAAO,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QACjD,IAAI,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,YAAa,CAAC,CAAC;QAC1D,MAAM,CAAC,WAAW,GAAG,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,EAAE,CAAA;QAC9D,OAAO,MAAM,CAAC;IAClB,CAAC;IAEM,YAAY,CAAC,KAAuB;QACvC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACrG,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACvG,CAAC;IAEM,aAAa;IAEpB,CAAC;IACM,aAAa,CAAC,KAAc;QAC/B,IAAI,UAAU,GAAG,IAAI,eAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;QACvD,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClD,WAAW,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,aAAc,CAAC,WAAW,GAAG,CAAC,CAAC;QAC1E,WAAW,CAAC,CAAC,GAAG,CAAE,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,aAAc,CAAC,YAAY,GAAG,CAAC,CAAC;QAC7E,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC;QAElB,OAAO,WAAW,CAAC;IACvB,CAAC;IACO,OAAO,CAAC,KAAiB;QAC7B,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACnF,OAAO,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;CACJ;AAtFD,kCAsFC"}
@@ -32,13 +32,13 @@ class ViralViewerPointCloudLoader {
32
32
  }
33
33
  anim() {
34
34
  const delta = this.viralViewerApi.clock.getDelta();
35
- const updated = this.viralViewerApi.cameraControls.update(delta);
36
- this.potree.updatePointClouds(this.pointClouds, this.viralViewerApi.camera, this.viralViewerApi.renderer);
35
+ const updated = this.viralViewerApi.viralCamera.cameraControls.update(delta);
36
+ this.potree.updatePointClouds(this.pointClouds, this.viralViewerApi.viralCamera.camera, this.viralViewerApi.renderer);
37
37
  // if ( elapsed > 30 ) { return; }
38
38
  requestAnimationFrame(() => { this.anim(); });
39
39
  // console.log(updated)
40
40
  if (updated) {
41
- this.viralViewerApi.renderer.render(this.viralViewerApi.scene, this.viralViewerApi.camera);
41
+ this.viralViewerApi.renderer.render(this.viralViewerApi.scene, this.viralViewerApi.viralCamera.camera);
42
42
  }
43
43
  }
44
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"viral-viewer-point-cloud.loader.js","sourceRoot":"","sources":["../../../src/components/loader/viral-viewer-point-cloud.loader.ts"],"names":[],"mappings":";;;AAAA,yDAAwG;AAGxG,MAAa,2BAA2B;IAIpC,YAAY,cAA8B;QAF1C,gBAAW,GAAuB,EAAE,CAAC;QAGjC,IAAI,cAAc,EAAE;YAChB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;SACxC;QACD,IAAI,CAAC,MAAM,GAAG,IAAI,0BAAM,EAAE,CAAC;IAC/B,CAAC;IACD;;;;;;OAMG;IACI,IAAI,CAAC,WAAmB,EAAE,YAAoB,EAAE,YAAoB,EAAE,cAAsB,OAAO,EAAE,oBAAoB,CAAC,GAAqB,EAAE,EAAE,GAAG,CAAC;QAC1J,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC;QACtC,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAC5B,WAAW,EACX,YAAY,EACZ,YAAY,CACf,CAAC,IAAI,CAAC,CAAC,GAAqB,EAAE,EAAE;YAC7B,IAAI,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;YAC5B,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC;YAClB,QAAQ,CAAC,aAAa,GAAG,iCAAa,CAAC,QAAQ,CAAC;YAChD,QAAQ,CAAC,KAAK,GAAG,8BAAU,CAAC,MAAM,CAAC;YACnC,QAAQ,CAAC,cAAc,GAAG,kCAAc,CAAC,GAAG,CAAC;YAE7C,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACnC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3B,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACP,CAAC;IACM,IAAI;QACP,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QACnD,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACjE,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC1G,kCAAkC;QAElC,qBAAqB,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA,CAAC,CAAC,CAAC,CAAC;QAC7C,uBAAuB;QACvB,IAAI,OAAO,EAAE;YACT,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;SAC9F;IACL,CAAC;CACJ;AA/CD,kEA+CC"}
1
+ {"version":3,"file":"viral-viewer-point-cloud.loader.js","sourceRoot":"","sources":["../../../src/components/loader/viral-viewer-point-cloud.loader.ts"],"names":[],"mappings":";;;AAAA,yDAAwG;AAGxG,MAAa,2BAA2B;IAIpC,YAAY,cAA8B;QAF1C,gBAAW,GAAuB,EAAE,CAAC;QAGjC,IAAI,cAAc,EAAE;YAChB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;SACxC;QACD,IAAI,CAAC,MAAM,GAAG,IAAI,0BAAM,EAAE,CAAC;IAC/B,CAAC;IACD;;;;;;OAMG;IACI,IAAI,CAAC,WAAmB,EAAE,YAAoB,EAAE,YAAoB,EAAE,cAAsB,OAAO,EAAE,oBAAoB,CAAC,GAAqB,EAAE,EAAE,GAAG,CAAC;QAC1J,IAAI,CAAC,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC;QACtC,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAC5B,WAAW,EACX,YAAY,EACZ,YAAY,CACf,CAAC,IAAI,CAAC,CAAC,GAAqB,EAAE,EAAE;YAC7B,IAAI,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;YAC5B,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC;YAClB,QAAQ,CAAC,aAAa,GAAG,iCAAa,CAAC,QAAQ,CAAC;YAChD,QAAQ,CAAC,KAAK,GAAG,8BAAU,CAAC,MAAM,CAAC;YACnC,QAAQ,CAAC,cAAc,GAAG,kCAAc,CAAC,GAAG,CAAC;YAE7C,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACnC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC3B,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;IACP,CAAC;IACM,IAAI;QACP,MAAM,KAAK,GAAG,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QACnD,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7E,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QACtH,kCAAkC;QAElC,qBAAqB,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA,CAAC,CAAC,CAAC,CAAC;QAC7C,uBAAuB;QACvB,IAAI,OAAO,EAAE;YACT,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;SAC1G;IACL,CAAC;CACJ;AA/CD,kEA+CC"}
@@ -0,0 +1,7 @@
1
+ import { Vector2 } from "three";
2
+ export declare class ViralMouse {
3
+ position: Vector2;
4
+ rawPosition: Vector2;
5
+ constructor(domElement: HTMLCanvasElement);
6
+ private setupMousePositionUpdate;
7
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ViralMouse = void 0;
4
+ const three_1 = require("three");
5
+ class ViralMouse {
6
+ constructor(domElement) {
7
+ this.position = new three_1.Vector2();
8
+ this.rawPosition = new three_1.Vector2();
9
+ this.setupMousePositionUpdate(domElement);
10
+ }
11
+ setupMousePositionUpdate(domElement) {
12
+ domElement.onmousemove = (event) => {
13
+ this.rawPosition.x = event.clientX;
14
+ this.rawPosition.y = event.clientY;
15
+ const bounds = domElement.getBoundingClientRect();
16
+ this.position.x = ((event.clientX - bounds.left) / (bounds.right - bounds.left)) * 2 - 1;
17
+ this.position.y = -((event.clientY - bounds.top) / (bounds.bottom - bounds.top)) * 2 + 1;
18
+ };
19
+ }
20
+ }
21
+ exports.ViralMouse = ViralMouse;
22
+ //# sourceMappingURL=viral-mouse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viral-mouse.js","sourceRoot":"","sources":["../../../src/components/mouse/viral-mouse.ts"],"names":[],"mappings":";;;AAAA,iCAAgC;AAEhC,MAAa,UAAU;IAInB,YAAY,UAA6B;QAHzC,aAAQ,GAAG,IAAI,eAAO,EAAE,CAAC;QACzB,gBAAW,GAAG,IAAI,eAAO,EAAE,CAAC;QAGxB,IAAI,CAAC,wBAAwB,CAAC,UAAU,CAAC,CAAC;IAC9C,CAAC;IAEO,wBAAwB,CAAC,UAA6B;QAC1D,UAAU,CAAC,WAAW,GAAG,CAAC,KAAiB,EAAE,EAAE;YAC3C,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;YACnC,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC;YACnC,MAAM,MAAM,GAAG,UAAU,CAAC,qBAAqB,EAAE,CAAC;YAClD,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACzF,IAAI,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC7F,CAAC,CAAC;IACN,CAAC;CACJ;AAjBD,gCAiBC"}
@@ -1,14 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ViralViewerWorker = void 0;
4
- const THREE = require("three");
4
+ const three_1 = require("three");
5
5
  class ViralViewerWorker {
6
6
  constructor(main, scriptUrl) {
7
7
  this.worker = new Worker(scriptUrl, { type: "module" });
8
8
  this.viralViewerApi = main;
9
9
  }
10
10
  loadModel(model, callbackOnSuccess = () => { }) {
11
- const noneStructuralMesh = new THREE.Mesh();
11
+ const noneStructuralMesh = new three_1.Mesh();
12
12
  noneStructuralMesh.name = "Viral Model";
13
13
  this.viralViewerApi.scene.add(noneStructuralMesh);
14
14
  this.worker.onmessage = (m) => {
@@ -21,17 +21,17 @@ class ViralViewerWorker {
21
21
  break;
22
22
  case 1:
23
23
  let buffer = m.data.buffer;
24
- const geometry = new THREE.BufferGeometry();
25
- geometry.setAttribute("position", new THREE.BufferAttribute(buffer, 3));
26
- let newMaterial = new THREE.MeshPhongMaterial({
24
+ const geometry = new three_1.BufferGeometry();
25
+ geometry.setAttribute("position", new three_1.BufferAttribute(buffer, 3));
26
+ let newMaterial = new three_1.MeshPhongMaterial({
27
27
  color: m.data.materialColorString,
28
28
  opacity: m.data.materialOpacity,
29
29
  transparent: true,
30
30
  flatShading: true,
31
31
  });
32
- const edges = new THREE.EdgesGeometry(geometry, 90);
33
- const line = new THREE.LineSegments(edges, new THREE.LineBasicMaterial({ color: "#202020" }));
34
- const childMesh = new THREE.Mesh(geometry, newMaterial);
32
+ const edges = new three_1.EdgesGeometry(geometry, 90);
33
+ const line = new three_1.LineSegments(edges, new three_1.LineBasicMaterial({ color: "#202020" }));
34
+ const childMesh = new three_1.Mesh(geometry, newMaterial);
35
35
  childMesh.add(line);
36
36
  noneStructuralMesh.add(childMesh);
37
37
  this.viralViewerApi.rerender();
@@ -39,9 +39,9 @@ class ViralViewerWorker {
39
39
  case 2:
40
40
  let buffer2 = m.data.buffer;
41
41
  let instances = m.data.instances;
42
- const geometry2 = new THREE.BufferGeometry();
43
- geometry2.setAttribute("position", new THREE.BufferAttribute(buffer2, 3));
44
- let newMaterial2 = new THREE.MeshPhongMaterial({
42
+ const geometry2 = new three_1.BufferGeometry();
43
+ geometry2.setAttribute("position", new three_1.BufferAttribute(buffer2, 3));
44
+ let newMaterial2 = new three_1.MeshPhongMaterial({
45
45
  color: m.data.materialColorString,
46
46
  opacity: m.data.materialOpacity,
47
47
  transparent: true,
@@ -50,7 +50,7 @@ class ViralViewerWorker {
50
50
  for (let index = 0; index < instances.length; index++) {
51
51
  const instance = instances[index];
52
52
  let cloneGeometry2 = geometry2.clone();
53
- const childMesh2 = new THREE.Mesh(cloneGeometry2, newMaterial2);
53
+ const childMesh2 = new three_1.Mesh(cloneGeometry2, newMaterial2);
54
54
  let numbers = [
55
55
  instance.BasisX.X,
56
56
  -instance.BasisX.Z,
@@ -69,11 +69,11 @@ class ViralViewerWorker {
69
69
  instance.Offset.Y,
70
70
  1,
71
71
  ];
72
- let matrix4 = new THREE.Matrix4();
72
+ let matrix4 = new three_1.Matrix4();
73
73
  matrix4.fromArray(numbers);
74
74
  childMesh2.applyMatrix4(matrix4);
75
- const edges = new THREE.EdgesGeometry(childMesh2.geometry);
76
- const line = new THREE.LineSegments(edges, new THREE.LineBasicMaterial({ color: "#202020" }));
75
+ const edges = new three_1.EdgesGeometry(childMesh2.geometry);
76
+ const line = new three_1.LineSegments(edges, new three_1.LineBasicMaterial({ color: "#202020" }));
77
77
  childMesh2.add(line);
78
78
  noneStructuralMesh.add(childMesh2);
79
79
  }
@@ -1 +1 @@
1
- {"version":3,"file":"viral-viewer.worker.js","sourceRoot":"","sources":["../../../src/components/worker/viral-viewer.worker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"viral-viewer.worker.js","sourceRoot":"","sources":["../../../src/components/worker/viral-viewer.worker.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -39,3 +39,8 @@ export interface RevitTransform {
39
39
  BasisZ: ViralPoint;
40
40
  Offset: ViralPoint;
41
41
  }
42
+ export declare class ViralViewerState {
43
+ CameraPoint: ViralPoint;
44
+ TargetPoint: ViralPoint;
45
+ result: any;
46
+ }
package/dist/types.js CHANGED
@@ -1,3 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ViralViewerState = void 0;
4
+ class ViralViewerState {
5
+ }
6
+ exports.ViralViewerState = ViralViewerState;
3
7
  //# sourceMappingURL=types.js.map
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;AA2CA,MAAa,gBAAgB;CAI5B;AAJD,4CAIC"}
@@ -1,25 +1,27 @@
1
1
  import CameraControls from "camera-controls";
2
2
  import { ViewerOptions } from "./types";
3
- import * as THREE from "three";
4
3
  import { ViralViewerRevitLoader } from "./components/loader/viral-viewer-revit.loader";
5
4
  import { CompressProcessor } from "./components/compress/compress.processor";
6
5
  import { ViralViewerWorker } from "./components/worker/viral-viewer.worker";
7
6
  import { ViralViewerPointCloudLoader } from "./components/loader/viral-viewer-point-cloud.loader";
7
+ import { ViralCamera } from "./components/camera/viral-camera";
8
+ import { Scene, Clock, WebGLRenderer, PerspectiveCamera } from 'three';
9
+ import { ViralMouse } from "./components/mouse/viral-mouse";
8
10
  export declare class ViralViewerApi {
9
11
  options: ViewerOptions;
10
12
  targetElement: HTMLElement;
11
- scene: THREE.Scene;
12
- clock: THREE.Clock;
13
- renderer: THREE.WebGLRenderer;
14
- camera: THREE.PerspectiveCamera;
15
- cameraControls: CameraControls;
13
+ scene: Scene;
14
+ clock: Clock;
15
+ renderer: WebGLRenderer;
16
+ viralCamera: ViralCamera;
17
+ viralMouse: ViralMouse;
16
18
  revitLoader: ViralViewerRevitLoader;
17
19
  pointCloudLoader: ViralViewerPointCloudLoader;
18
20
  compressProcessor: CompressProcessor;
19
21
  worker: ViralViewerWorker;
20
- cubeRenderer: THREE.WebGLRenderer;
21
- cubeScene: THREE.Scene;
22
- cubeCamera: THREE.PerspectiveCamera;
22
+ cubeRenderer: WebGLRenderer;
23
+ cubeScene: Scene;
24
+ cubeCamera: PerspectiveCamera;
23
25
  cubeCameraControls: CameraControls;
24
26
  isUpdatingFromCube: boolean;
25
27
  isUpdatingFromMain: boolean;
@@ -28,7 +30,6 @@ export declare class ViralViewerApi {
28
30
  setupScene(): void;
29
31
  setupClock(): void;
30
32
  setupRenderer(): void;
31
- setupCamera(): void;
32
33
  rerender(): void;
33
34
  anim(): void;
34
35
  setupLights(): void;
@@ -2,12 +2,25 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ViralViewerApi = void 0;
4
4
  const camera_controls_1 = require("camera-controls");
5
- const THREE = require("three");
6
5
  const viral_viewer_revit_loader_1 = require("./components/loader/viral-viewer-revit.loader");
7
6
  const compress_processor_1 = require("./components/compress/compress.processor");
8
7
  const viral_viewer_worker_1 = require("./components/worker/viral-viewer.worker");
9
8
  const viral_viewer_point_cloud_loader_1 = require("./components/loader/viral-viewer-point-cloud.loader");
10
- camera_controls_1.default.install({ THREE: THREE });
9
+ const viral_camera_1 = require("./components/camera/viral-camera");
10
+ const three_1 = require("three");
11
+ const viral_mouse_1 = require("./components/mouse/viral-mouse");
12
+ const subsetOfTHREE = {
13
+ Vector2: three_1.Vector2,
14
+ Vector3: three_1.Vector3,
15
+ Vector4: three_1.Vector4,
16
+ Quaternion: three_1.Quaternion,
17
+ Matrix4: three_1.Matrix4,
18
+ Spherical: three_1.Spherical,
19
+ Box3: three_1.Box3,
20
+ Sphere: three_1.Sphere,
21
+ Raycaster: three_1.Raycaster,
22
+ };
23
+ camera_controls_1.default.install({ THREE: subsetOfTHREE });
11
24
  class ViralViewerApi {
12
25
  constructor(options) {
13
26
  this.isUpdatingFromCube = false;
@@ -22,7 +35,8 @@ class ViralViewerApi {
22
35
  this.setupScene();
23
36
  this.setupClock();
24
37
  this.setupRenderer();
25
- this.setupCamera();
38
+ this.viralCamera = new viral_camera_1.ViralCamera(this);
39
+ this.viralMouse = new viral_mouse_1.ViralMouse(this.renderer.domElement);
26
40
  this.setupLights();
27
41
  this.rerender();
28
42
  this.revitLoader = new viral_viewer_revit_loader_1.ViralViewerRevitLoader(this.scene);
@@ -33,13 +47,13 @@ class ViralViewerApi {
33
47
  }
34
48
  }
35
49
  setupScene() {
36
- this.scene = new THREE.Scene();
50
+ this.scene = new three_1.Scene();
37
51
  }
38
52
  setupClock() {
39
- this.clock = new THREE.Clock();
53
+ this.clock = new three_1.Clock();
40
54
  }
41
55
  setupRenderer() {
42
- this.renderer = new THREE.WebGLRenderer({
56
+ this.renderer = new three_1.WebGLRenderer({
43
57
  alpha: true,
44
58
  antialias: true,
45
59
  logarithmicDepthBuffer: true,
@@ -53,36 +67,22 @@ class ViralViewerApi {
53
67
  // this.isUpdatingFromMain = true;
54
68
  // };
55
69
  }
56
- setupCamera() {
57
- this.camera = new THREE.PerspectiveCamera(60, this.targetElement.offsetWidth / this.targetElement.offsetHeight, 0.01, 2000000);
58
- this.camera.position.set(0, 0, 2);
59
- if (this.options && this.options.cameraZUp) {
60
- this.camera.up.set(0, 0, 1);
61
- this.camera.position.set(100, 100, 0);
62
- }
63
- this.cameraControls = new camera_controls_1.default(this.camera, this.renderer.domElement);
64
- // this.cameraControls.dollyToCursor = true;
65
- this.cameraControls.infinityDolly = true;
66
- this.cameraControls.setTarget(0, 0, 0);
67
- this.cameraControls.mouseButtons.middle = camera_controls_1.default.ACTION.OFFSET;
68
- // this.anim();
69
- }
70
70
  rerender() {
71
- this.renderer.render(this.scene, this.camera);
71
+ this.renderer.render(this.scene, this.viralCamera.camera);
72
72
  }
73
73
  anim() {
74
74
  var _a;
75
75
  const delta = this.clock.getDelta();
76
76
  const elapsed = this.clock.getElapsedTime();
77
- const updated = (_a = this.cameraControls) === null || _a === void 0 ? void 0 : _a.update(delta);
77
+ const updated = (_a = this.viralCamera.cameraControls) === null || _a === void 0 ? void 0 : _a.update(delta);
78
78
  if (this.pointCloudLoader.potree) {
79
- this.pointCloudLoader.potree.updatePointClouds(this.pointCloudLoader.pointClouds, this.camera, this.renderer);
79
+ this.pointCloudLoader.potree.updatePointClouds(this.pointCloudLoader.pointClouds, this.viralCamera.camera, this.renderer);
80
80
  }
81
81
  // const updated2 = this.cubeCameraControls?.update(delta);
82
82
  // if ( elapsed > 30 ) { return; }
83
83
  requestAnimationFrame(() => { this.anim(); });
84
84
  if (updated) {
85
- this.renderer.render(this.scene, this.camera);
85
+ this.renderer.render(this.scene, this.viralCamera.camera);
86
86
  // if (!this.isUpdatingFromCube) this.updateCube();
87
87
  }
88
88
  // if (updated2) {
@@ -91,22 +91,22 @@ class ViralViewerApi {
91
91
  // }
92
92
  }
93
93
  setupLights() {
94
- const light1 = new THREE.DirectionalLight(0xffeeff, 0.8);
94
+ const light1 = new three_1.DirectionalLight(0xffeeff, 0.8);
95
95
  light1.position.set(1, 1, 1).normalize();
96
96
  this.scene.add(light1);
97
- const light2 = new THREE.DirectionalLight(0xffffff, 0.8);
97
+ const light2 = new three_1.DirectionalLight(0xffffff, 0.8);
98
98
  light2.position.set(-1, 0.5, -1).normalize();
99
99
  this.scene.add(light2);
100
- const ambientLight = new THREE.AmbientLight(0xffffee, 0.25);
100
+ const ambientLight = new three_1.AmbientLight(0xffffee, 0.25);
101
101
  ambientLight.position.set(0, 0, 0).normalize();
102
102
  this.scene.add(ambientLight);
103
103
  }
104
104
  addCube() {
105
- const mesh = new THREE.Mesh(new THREE.BoxGeometry(1, 1, 1), new THREE.MeshStandardMaterial({ color: 0xff0000, wireframe: true }));
105
+ const mesh = new three_1.Mesh(new three_1.BoxGeometry(1, 1, 1), new three_1.MeshStandardMaterial({ color: 0xff0000, wireframe: true }));
106
106
  this.scene.add(mesh);
107
107
  }
108
108
  addAxes() {
109
- const axesHelper = new THREE.AxesHelper(5);
109
+ const axesHelper = new three_1.AxesHelper(5);
110
110
  this.scene.add(axesHelper);
111
111
  }
112
112
  injectCubeWrapperElement() {
@@ -126,10 +126,10 @@ class ViralViewerApi {
126
126
  const cubeWrapper = document.getElementById("orientCubeWrapper");
127
127
  const width = cubeWrapper.offsetWidth;
128
128
  const height = cubeWrapper.offsetHeight;
129
- this.cubeScene = new THREE.Scene();
130
- this.cubeCamera = new THREE.PerspectiveCamera(60, width / height, 0.01, 100);
129
+ this.cubeScene = new three_1.Scene();
130
+ this.cubeCamera = new three_1.PerspectiveCamera(60, width / height, 0.01, 100);
131
131
  this.cubeCamera.position.set(0, 0, 2);
132
- this.cubeRenderer = new THREE.WebGLRenderer({
132
+ this.cubeRenderer = new three_1.WebGLRenderer({
133
133
  alpha: true,
134
134
  antialias: true,
135
135
  logarithmicDepthBuffer: true,
@@ -148,7 +148,7 @@ class ViralViewerApi {
148
148
  //#region Cube
149
149
  let materials = [];
150
150
  let texts = ["RIGHT", "LEFT", "TOP", "BOTTOM", "FRONT", "BACK"];
151
- let textureLoader = new THREE.TextureLoader();
151
+ let textureLoader = new three_1.TextureLoader();
152
152
  let canvas = document.createElement("canvas");
153
153
  let ctx = canvas.getContext("2d");
154
154
  let size = 64;
@@ -179,49 +179,49 @@ class ViralViewerApi {
179
179
  ctx.strokeRect(0, 0, size, size);
180
180
  ctx.fillStyle = "#999";
181
181
  ctx.fillText(texts[i], size / 2, size / 2);
182
- materials[i] = new THREE.MeshBasicMaterial({
182
+ materials[i] = new three_1.MeshBasicMaterial({
183
183
  map: textureLoader.load(canvas.toDataURL()),
184
184
  });
185
185
  }
186
- let cube = new THREE.Mesh(new THREE.BoxGeometry(1, 1, 1), materials);
186
+ let cube = new three_1.Mesh(new three_1.BoxGeometry(1, 1, 1), materials);
187
187
  this.cubeScene.add(cube);
188
188
  //#endregion
189
189
  //#region Planes
190
190
  let planes = [];
191
- let planeMaterial = new THREE.MeshBasicMaterial({
192
- side: THREE.DoubleSide,
191
+ let planeMaterial = new three_1.MeshBasicMaterial({
192
+ side: three_1.DoubleSide,
193
193
  color: 0x00c0ff,
194
194
  transparent: true,
195
195
  opacity: 0,
196
196
  depthTest: false,
197
197
  });
198
198
  let planeSize = 0.7;
199
- let planeGeometry = new THREE.PlaneGeometry(planeSize, planeSize);
199
+ let planeGeometry = new three_1.PlaneGeometry(planeSize, planeSize);
200
200
  let a = 0.51;
201
- let plane1 = new THREE.Mesh(planeGeometry, planeMaterial.clone());
201
+ let plane1 = new three_1.Mesh(planeGeometry, planeMaterial.clone());
202
202
  plane1.position.z = a;
203
203
  this.cubeScene.add(plane1);
204
204
  planes.push(plane1);
205
- let plane2 = new THREE.Mesh(planeGeometry, planeMaterial.clone());
205
+ let plane2 = new three_1.Mesh(planeGeometry, planeMaterial.clone());
206
206
  plane2.position.z = -a;
207
207
  this.cubeScene.add(plane2);
208
208
  planes.push(plane2);
209
- let plane3 = new THREE.Mesh(planeGeometry, planeMaterial.clone());
209
+ let plane3 = new three_1.Mesh(planeGeometry, planeMaterial.clone());
210
210
  plane3.rotation.y = Math.PI / 2;
211
211
  plane3.position.x = a;
212
212
  this.cubeScene.add(plane3);
213
213
  planes.push(plane3);
214
- let plane4 = new THREE.Mesh(planeGeometry, planeMaterial.clone());
214
+ let plane4 = new three_1.Mesh(planeGeometry, planeMaterial.clone());
215
215
  plane4.rotation.y = Math.PI / 2;
216
216
  plane4.position.x = -a;
217
217
  this.cubeScene.add(plane4);
218
218
  planes.push(plane4);
219
- let plane5 = new THREE.Mesh(planeGeometry, planeMaterial.clone());
219
+ let plane5 = new three_1.Mesh(planeGeometry, planeMaterial.clone());
220
220
  plane5.rotation.x = Math.PI / 2;
221
221
  plane5.position.y = a;
222
222
  this.cubeScene.add(plane5);
223
223
  planes.push(plane5);
224
- let plane6 = new THREE.Mesh(planeGeometry, planeMaterial.clone());
224
+ let plane6 = new three_1.Mesh(planeGeometry, planeMaterial.clone());
225
225
  plane6.rotation.x = Math.PI / 2;
226
226
  plane6.position.y = -a;
227
227
  this.cubeScene.add(plane6);
@@ -241,9 +241,9 @@ class ViralViewerApi {
241
241
  }
242
242
  let x = evt.offsetX;
243
243
  let y = evt.offsetY;
244
- let size = this.cubeRenderer.getSize(new THREE.Vector2());
245
- let mouse = new THREE.Vector2((x / size.width) * 2 - 1, (-y / size.height) * 2 + 1);
246
- let raycaster = new THREE.Raycaster();
244
+ let size = this.cubeRenderer.getSize(new three_1.Vector2());
245
+ let mouse = new three_1.Vector2((x / size.width) * 2 - 1, (-y / size.height) * 2 + 1);
246
+ let raycaster = new three_1.Raycaster();
247
247
  raycaster.setFromCamera(mouse, this.cubeCamera);
248
248
  let intersects = raycaster.intersectObjects(planes.concat(cube));
249
249
  if (intersects.length > 0 && intersects[0].object != cube) {
@@ -255,8 +255,8 @@ class ViralViewerApi {
255
255
  };
256
256
  // let startTime = 0;
257
257
  // let duration = 500;
258
- let oldPosition = new THREE.Vector3();
259
- let newPosition = new THREE.Vector3();
258
+ let oldPosition = new three_1.Vector3();
259
+ let newPosition = new three_1.Vector3();
260
260
  // let play = false;
261
261
  this.cubeRenderer.domElement.onclick = (evt) => {
262
262
  this.cubeRenderer.domElement.onmousemove(evt);
@@ -264,11 +264,11 @@ class ViralViewerApi {
264
264
  return false;
265
265
  }
266
266
  oldPosition.copy(this.cubeCamera.position);
267
- let currentPoint = new THREE.Vector3();
267
+ let currentPoint = new three_1.Vector3();
268
268
  this.cubeCameraControls.getTarget(currentPoint);
269
269
  let distance = this.cubeCamera.position
270
270
  .clone()
271
- .sub(new THREE.Vector3(0, 0, 0))
271
+ .sub(new three_1.Vector3(0, 0, 0))
272
272
  .length();
273
273
  // newPosition.copy(this.cubeCameraControls.getPosition());
274
274
  if (activePlane.position.x !== 0) {
@@ -285,10 +285,10 @@ class ViralViewerApi {
285
285
  //#endregion
286
286
  }
287
287
  updateCube() {
288
- this.cubeCamera.rotation.copy(this.camera.rotation);
289
- let mainCameraTarget = new THREE.Vector3();
290
- this.cameraControls.getTarget(mainCameraTarget);
291
- let dir = this.camera.position
288
+ this.cubeCamera.rotation.copy(this.viralCamera.camera.rotation);
289
+ let mainCameraTarget = new three_1.Vector3();
290
+ this.viralCamera.cameraControls.getTarget(mainCameraTarget);
291
+ let dir = this.viralCamera.camera.position
292
292
  .clone()
293
293
  .sub(mainCameraTarget)
294
294
  .normalize();
@@ -297,19 +297,19 @@ class ViralViewerApi {
297
297
  // this.cubeRenderer.render(this.cubeScene, this.cubeCamera);
298
298
  }
299
299
  updateMain() {
300
- this.camera.rotation.copy(this.cubeCamera.rotation);
301
- let cubeCameraTarget = new THREE.Vector3();
300
+ this.viralCamera.camera.rotation.copy(this.cubeCamera.rotation);
301
+ let cubeCameraTarget = new three_1.Vector3();
302
302
  this.cubeCameraControls.getTarget(cubeCameraTarget);
303
- let dir = this.camera.position
303
+ let dir = this.viralCamera.camera.position
304
304
  .clone()
305
305
  .sub(cubeCameraTarget)
306
306
  .normalize();
307
- let length = this.camera.position.distanceTo(cubeCameraTarget);
308
- this.camera.position.copy(dir.multiplyScalar(length));
309
- if (this.cameraControls) {
310
- this.cameraControls.setPosition(this.camera.position.x, this.camera.position.y, this.camera.position.z);
307
+ let length = this.viralCamera.camera.position.distanceTo(cubeCameraTarget);
308
+ this.viralCamera.camera.position.copy(dir.multiplyScalar(length));
309
+ if (this.viralCamera.cameraControls) {
310
+ this.viralCamera.cameraControls.setPosition(this.viralCamera.camera.position.x, this.viralCamera.camera.position.y, this.viralCamera.camera.position.z);
311
311
  }
312
- this.renderer.render(this.scene, this.camera);
312
+ this.renderer.render(this.scene, this.viralCamera.camera);
313
313
  }
314
314
  }
315
315
  exports.ViralViewerApi = ViralViewerApi;
@@ -1 +1 @@
1
- {"version":3,"file":"viral-viewer-api.js","sourceRoot":"","sources":["../src/viral-viewer-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"viral-viewer-api.js","sourceRoot":"","sources":["../src/viral-viewer-api.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "viral-viewer-2",
3
- "version": "0.0.8",
3
+ "version": "0.1.0",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",