viral-viewer-2 3.1.9 → 3.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,6 +6,9 @@ export declare class ViralMouse {
6
6
  rawPosition: Vector2;
7
7
  constructor(viralViewerApi: ViralViewerApi);
8
8
  private setupMousePositionUpdate;
9
+ private hoverMeshes;
10
+ private hover;
11
+ private reverseColor;
9
12
  private setupMouseDown;
10
13
  private handleClick;
11
14
  private setupMouseUp;
@@ -16,6 +16,8 @@ class ViralMouse {
16
16
  this.viralViewerApi = viralViewerApi;
17
17
  this.position = new three_1.Vector2();
18
18
  this.rawPosition = new three_1.Vector2();
19
+ //#region Hover
20
+ this.hoverMeshes = [];
19
21
  this.handleClick = (_event) => __awaiter(this, void 0, void 0, function* () {
20
22
  var _a, _b;
21
23
  if (this.viralViewerApi) {
@@ -59,6 +61,7 @@ class ViralMouse {
59
61
  const bounds = domElement.getBoundingClientRect();
60
62
  this.position.x = ((event.clientX - bounds.left) / (bounds.right - bounds.left)) * 2 - 1;
61
63
  this.position.y = -((event.clientY - bounds.top) / (bounds.bottom - bounds.top)) * 2 + 1;
64
+ this.hover();
62
65
  //#region Tools
63
66
  if (this.viralViewerApi.viralTools.viralToolElevation.isActivated) {
64
67
  this.viralViewerApi.viralTools.viralToolElevation.onMouseMove(this.position);
@@ -69,6 +72,31 @@ class ViralMouse {
69
72
  //#endregion
70
73
  };
71
74
  }
75
+ hover() {
76
+ if (this.viralViewerApi) {
77
+ let result = this.viralViewerApi.viralCamera.clientToWorld();
78
+ if (result && result.length > 0) {
79
+ let mesh = result[0];
80
+ if (mesh.object instanceof three_1.Mesh) {
81
+ mesh.object.material.userData.oldColor = mesh.object.material.color.getHex();
82
+ mesh.object.material.color.set(Math.random() * 0xffffff);
83
+ this.hoverMeshes.push(mesh.object);
84
+ return;
85
+ }
86
+ }
87
+ this.reverseColor();
88
+ }
89
+ }
90
+ reverseColor() {
91
+ if (this.hoverMeshes.length == 0)
92
+ return;
93
+ for (let index = 0; index < this.hoverMeshes.length; index++) {
94
+ const element = this.hoverMeshes[index];
95
+ element.material.color.set(element.material.userData.oldColor);
96
+ }
97
+ this.hoverMeshes = [];
98
+ }
99
+ //#endregion
72
100
  //#region Mouse Down
73
101
  setupMouseDown(domElement) {
74
102
  domElement.onmousedown = this.handleClick;
@@ -1 +1 @@
1
- {"version":3,"file":"viral-mouse.js","sourceRoot":"","sources":["../../../src/components/mouse/viral-mouse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"viral-mouse.js","sourceRoot":"","sources":["../../../src/components/mouse/viral-mouse.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": "3.1.9",
3
+ "version": "3.2.1",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",