vtk.js 33.0.0-beta.1 → 33.0.0-beta.2

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.
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * @project vtk.js
3
- * @build Tue, Oct 29, 2024 4:02 PM ET
3
+ * @build Wed, Nov 13, 2024 10:30 AM ET
4
4
  * @copyright Copyright (c) 2024 Kitware, Inc.
5
5
  *
6
6
  */
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * @project vtk.js
3
- * @build Tue, Oct 29, 2024 4:02 PM ET
3
+ * @build Wed, Nov 13, 2024 10:30 AM ET
4
4
  * @copyright Copyright (c) 2024 Kitware, Inc.
5
5
  *
6
6
  */
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * @project vtk.js
3
- * @build Tue, Oct 29, 2024 4:02 PM ET
3
+ * @build Wed, Nov 13, 2024 10:30 AM ET
4
4
  * @copyright Copyright (c) 2024 Kitware, Inc.
5
5
  *
6
6
  */
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * @project vtk.js
3
- * @build Tue, Oct 29, 2024 4:02 PM ET
3
+ * @build Wed, Nov 13, 2024 10:30 AM ET
4
4
  * @copyright Copyright (c) 2024 Kitware, Inc.
5
5
  *
6
6
  */
@@ -0,0 +1,113 @@
1
+ import { Vector3 } from 'vtk.js/Sources/types';
2
+ import { vtkObject } from 'vtk.js/Sources/interfaces';
3
+ import vtkCompositeKeyboardManipulator from 'vtk.js/Sources/Interaction/Manipulators/CompositeKeyboardManipulator';
4
+ import vtkRenderWindowInteractor from 'vtk.js/Sources/Rendering/Core/RenderWindowInteractor';
5
+ import vtkCamera from 'vtk.js/Sources/Rendering/Core/Camera';
6
+ import vtkRenderer from 'vtk.js/Sources/Rendering/Core/Renderer';
7
+
8
+ export interface vtkKeyboardCameraManipulator
9
+ extends vtkObject,
10
+ vtkCompositeKeyboardManipulator {
11
+ /**
12
+ * Returns whether a movement is ongoing.
13
+ */
14
+ inMotion(): boolean;
15
+
16
+ /**
17
+ * Reset the movement speed to be proportional to the longest length of the renderer's bounds.
18
+ */
19
+ resetMovementSpeed(): void;
20
+
21
+ /**
22
+ * Initialize a movement of the current camera.
23
+ */
24
+ startMovement(): void;
25
+
26
+ /**
27
+ * Cancel any ongoing camera movement.
28
+ */
29
+ endMovement(): void;
30
+
31
+ /**
32
+ * Update active camera direction, depending on currently pressed keys.
33
+ */
34
+ calculateCurrentDirection(): void;
35
+
36
+ /**
37
+ * Returns the direction vector of the given camera for the given key.
38
+ * @param key the movedkey
39
+ * @param camera the camera
40
+ */
41
+ getDirectionFromKey(key: KeyboardEvent['key'], camera: vtkCamera): Vector3;
42
+
43
+ /**
44
+ * Moves the given camera, in the given direction, at the given speed.
45
+ * @param camera the moved camera
46
+ * @param direction the direction of the movemnt
47
+ * @param speed the speed
48
+ */
49
+ moveCamera(camera: vtkCamera, direction: Vector3, speed: number): void;
50
+
51
+ /**
52
+ * Handles a keypress event.
53
+ * @param interactor the interactor
54
+ * @param renderer the renderer
55
+ * @param key the key
56
+ */
57
+ onKeyPress(
58
+ interactor: vtkRenderWindowInteractor,
59
+ renderer: vtkRenderer,
60
+ key: KeyboardEvent['key']
61
+ ): void;
62
+
63
+ /**
64
+ * Handles a keydown event.
65
+ * @param interactor the interactor
66
+ * @param renderer the renderer
67
+ * @param key the key
68
+ */
69
+ onKeyDown(
70
+ interactor: vtkRenderWindowInteractor,
71
+ renderer: vtkRenderer,
72
+ key: KeyboardEvent['key']
73
+ ): void;
74
+
75
+ /**
76
+ * Handles a keyup event.
77
+ * @param interactor the interactor
78
+ * @param renderer the renderer
79
+ * @param key the key
80
+ */
81
+ onKeyUp(
82
+ interactor: vtkRenderWindowInteractor,
83
+ renderer: vtkRenderer,
84
+ key: KeyboardEvent['key']
85
+ ): void;
86
+ }
87
+
88
+ export interface IKeyboardCameraManipulatorInitialValues {
89
+ movementSpeed?: number;
90
+ moveForwardKeys?: KeyboardEvent['key'][];
91
+ moveLeftKeys?: KeyboardEvent['key'][];
92
+ moveBackwardKeys?: KeyboardEvent['key'][];
93
+ moveRightKeys?: KeyboardEvent['key'][];
94
+ moveUpKeys?: KeyboardEvent['key'][];
95
+ moveDownKeys?: KeyboardEvent['key'][];
96
+ }
97
+
98
+ export function newInstance(
99
+ initialValues?: IKeyboardCameraManipulatorInitialValues
100
+ ): vtkKeyboardCameraManipulator;
101
+
102
+ export function extend(
103
+ publicAPI: object,
104
+ model: object,
105
+ initialValues?: IKeyboardCameraManipulatorInitialValues
106
+ ): void;
107
+
108
+ export const vtkKeyboardCameraManipulator: {
109
+ newInstance: typeof newInstance;
110
+ extend: typeof extend;
111
+ };
112
+
113
+ export default vtkKeyboardCameraManipulator;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vtk.js",
3
- "version": "33.0.0-beta.1",
3
+ "version": "33.0.0-beta.2",
4
4
  "description": "Visualization Toolkit for the Web",
5
5
  "keywords": [
6
6
  "3d",
package/vtk-bundle.html CHANGED
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="UTF-8"/>
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1"/>
6
- <title>vtk.js [29 Oct 2024 at 16:03]</title>
6
+ <title>vtk.js [13 Nov 2024 at 10:31]</title>
7
7
  <link rel="shortcut icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAABrVBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+O1foceMD///+J0/qK1Pr7/v8Xdr/9///W8P4UdL7L7P0Scr2r4Pyj3vwad8D5/f/2/f+55f3E6f34+/2H0/ojfMKpzOd0rNgQcb3F3O/j9f7c8v6g3Pz0/P/w+v/q+P7n9v6T1/uQ1vuE0vqLut/y+v+Z2fvt+f+15Pzv9fuc2/vR7v2V2Pvd6/bg9P7I6/285/2y4/yp3/zp8vk8i8kqgMT7/P31+fyv4vxGkcz6/P6/6P3j7vfS5PNnpNUxhcbO7f7F6v3O4vHK3/DA2u631Ouy0eqXweKJud5wqthfoNMMbLvY8f73+v2dxeR8sNtTmdDx9/zX6PSjyeaCtd1YnNGX2PuQveCGt95Nls42h8dLlM3F4vBtAAAAM3RSTlMAAyOx0/sKBvik8opWGBMOAe3l1snDm2E9LSb06eHcu5JpHbarfHZCN9CBb08zzkdNS0kYaptYAAAFV0lEQVRYw92X51/aYBDHHS2O2qqttVbrqNq9m+TJIAYIShBkWwqIiCgoWvfeq7Z2/s29hyQNyUcR7LveGwVyXy6XH8/9rqxglLfUPLxVduUor3h0rfp2TYvpivk37929TkG037hffoX0+peVtZQc1589rigVUdXS/ABSAyEmGIO/1XfvldSK8vs3OqB6u3m0nxmIrvgB0dj7rr7Y9IbuF68hnfFaiHA/sxqm0wciIG43P60qKv9WXWc1RXGh/mFESFABTSBi0sNAKzqet17eCtOb3kZIDwxEEU0oAIJGYxNBDhBND29e0rtXXbcpuPmED9IhEAAQ/AXEaF8EPmnrrKsv0LvWR3fg5sWDNAFZOgAgaKvZDogHNU9MFwnnYROkc56RD5CjAbQX9Ow4g7upCsvYu55aSI/Nj0H1akgKQEUM94dwK65hYRmFU9MIcH/fqJYOZYcnuJSU/waKDgTOEVaVKhwrTRP5XzgSpAITYzom7UvkhFX5VutmxeNnWDjjswTKTyfgluNDGbUpWissXhF3s7mlSml+czWkg3D0l1nNjGNjz3myOQOa1KM/jOS6ebdbAVTCi4gljHSFrviza7tOgRWcS0MOUX9zdNgag5w7rRqA44Lzw0hr1WqES36dFliSJFlh2rXIae3FFcDDgKdxrUIDePr8jGcSClV1u7A9xeN0ModY/pHMxmR1EzRh8TJiwqsHmKW0l4FCEZI+jHio+JdPPE9qwQtTRxku2D8sIeRL2LnxWSllANCQGOIiqVHAz2ye2JR0DcH+HoxDkaADLjgxjKQ+AwCX/g0+DNgdG0ukYCONAe+dbc2IAc6fwt1ARoDSezNHxV2Cmzwv3O6lDMV55edBGwGK9n1+x2F8EDfAGCxug8MhpsMEcTEAWf3rx2vZhe/LAmtIn/6apE6PN0ULKgywD9mmdxbmFl3OvD5AS5fW5zLbv/YHmcsBTjf/afDz3MaZTVCfAP9z6/Bw6ycv8EUBWJIn9zYcoAWWlW9+OzO3vkTy8H+RANLmdrpOuYWdZYEXpo+TlCJrW5EARb7fF+bWdqf3hhyZI1nWJQHgznErZhbjoEsWqi8dQNoE294aldzFurwSABL2XXMf9+H1VQGke9exw5P/AnA5Pv5ngMul7LOvO922iwACu8WkCwLCafvM4CeWPxfA8lNHcWZSoi8EwMAIciKX2Z4SWCMAa3snCZ/G4EA8D6CMLNFsGQhkkz/gQNEBbPCbWsxGUpYVu3z8IyNAknwJkfPMEhLyrdi5RTyUVACkw4GSFRNWJNEW+fgPGwHD8/JxnRuLabN4CGNRkAE23na2+VmEAUmrYymSGjMAYqH84YUIyzgzs3XC7gNgH36Vcc4zKY9o9fgPBXUAiHHwVboBHGLiX6Zcjp1f2wu4tvzZKo0ecPnDtQYDQvJXaBeNzce45Fp28ZQLrEZVuFqgBwOalArKXnW1UzlnSusQKJqKYNuz4tOnI6sZG4zanpemv+7ySU2jbA9h6uhcgpfy6G2PahirDZ6zvq6zDduMVFTKvzw8wgyEdelwY9in3XkEPs3osJuwRQ4qTkfzifndg9Gfc4pdsu82+tTnHZTBa2EAMrqr2t43pguc8tNm7JQVQ2S0ukj2d22dhXYP0/veWtwKrCkNoNimAN5+Xr/oLrxswKbVJjteWrX7eR63o4j9q0GxnaBdWgGA5VStpanIjQmEhV0/nVt5VOFUvix6awJhPcAaTEShgrG+iGyvb5a0Ndb1YGHFPEwoqAinoaykaID1o1pdPNu7XsnCKQ3R+hwWIIhGvORcJUBYXe3Xa3vq/mF/N9V13ugufMkfXn+KHsRD0B8AAAAASUVORK5CYII=" type="image/x-icon" />
8
8
 
9
9
  <script>
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="UTF-8"/>
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1"/>
6
- <title>vtk.js [29 Oct 2024 at 16:03]</title>
6
+ <title>vtk.js [13 Nov 2024 at 10:31]</title>
7
7
  <link rel="shortcut icon" href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAABrVBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+O1foceMD///+J0/qK1Pr7/v8Xdr/9///W8P4UdL7L7P0Scr2r4Pyj3vwad8D5/f/2/f+55f3E6f34+/2H0/ojfMKpzOd0rNgQcb3F3O/j9f7c8v6g3Pz0/P/w+v/q+P7n9v6T1/uQ1vuE0vqLut/y+v+Z2fvt+f+15Pzv9fuc2/vR7v2V2Pvd6/bg9P7I6/285/2y4/yp3/zp8vk8i8kqgMT7/P31+fyv4vxGkcz6/P6/6P3j7vfS5PNnpNUxhcbO7f7F6v3O4vHK3/DA2u631Ouy0eqXweKJud5wqthfoNMMbLvY8f73+v2dxeR8sNtTmdDx9/zX6PSjyeaCtd1YnNGX2PuQveCGt95Nls42h8dLlM3F4vBtAAAAM3RSTlMAAyOx0/sKBvik8opWGBMOAe3l1snDm2E9LSb06eHcu5JpHbarfHZCN9CBb08zzkdNS0kYaptYAAAFV0lEQVRYw92X51/aYBDHHS2O2qqttVbrqNq9m+TJIAYIShBkWwqIiCgoWvfeq7Z2/s29hyQNyUcR7LveGwVyXy6XH8/9rqxglLfUPLxVduUor3h0rfp2TYvpivk37929TkG037hffoX0+peVtZQc1589rigVUdXS/ABSAyEmGIO/1XfvldSK8vs3OqB6u3m0nxmIrvgB0dj7rr7Y9IbuF68hnfFaiHA/sxqm0wciIG43P60qKv9WXWc1RXGh/mFESFABTSBi0sNAKzqet17eCtOb3kZIDwxEEU0oAIJGYxNBDhBND29e0rtXXbcpuPmED9IhEAAQ/AXEaF8EPmnrrKsv0LvWR3fg5sWDNAFZOgAgaKvZDogHNU9MFwnnYROkc56RD5CjAbQX9Ow4g7upCsvYu55aSI/Nj0H1akgKQEUM94dwK65hYRmFU9MIcH/fqJYOZYcnuJSU/waKDgTOEVaVKhwrTRP5XzgSpAITYzom7UvkhFX5VutmxeNnWDjjswTKTyfgluNDGbUpWissXhF3s7mlSml+czWkg3D0l1nNjGNjz3myOQOa1KM/jOS6ebdbAVTCi4gljHSFrviza7tOgRWcS0MOUX9zdNgag5w7rRqA44Lzw0hr1WqES36dFliSJFlh2rXIae3FFcDDgKdxrUIDePr8jGcSClV1u7A9xeN0ModY/pHMxmR1EzRh8TJiwqsHmKW0l4FCEZI+jHio+JdPPE9qwQtTRxku2D8sIeRL2LnxWSllANCQGOIiqVHAz2ye2JR0DcH+HoxDkaADLjgxjKQ+AwCX/g0+DNgdG0ukYCONAe+dbc2IAc6fwt1ARoDSezNHxV2Cmzwv3O6lDMV55edBGwGK9n1+x2F8EDfAGCxug8MhpsMEcTEAWf3rx2vZhe/LAmtIn/6apE6PN0ULKgywD9mmdxbmFl3OvD5AS5fW5zLbv/YHmcsBTjf/afDz3MaZTVCfAP9z6/Bw6ycv8EUBWJIn9zYcoAWWlW9+OzO3vkTy8H+RANLmdrpOuYWdZYEXpo+TlCJrW5EARb7fF+bWdqf3hhyZI1nWJQHgznErZhbjoEsWqi8dQNoE294aldzFurwSABL2XXMf9+H1VQGke9exw5P/AnA5Pv5ngMul7LOvO922iwACu8WkCwLCafvM4CeWPxfA8lNHcWZSoi8EwMAIciKX2Z4SWCMAa3snCZ/G4EA8D6CMLNFsGQhkkz/gQNEBbPCbWsxGUpYVu3z8IyNAknwJkfPMEhLyrdi5RTyUVACkw4GSFRNWJNEW+fgPGwHD8/JxnRuLabN4CGNRkAE23na2+VmEAUmrYymSGjMAYqH84YUIyzgzs3XC7gNgH36Vcc4zKY9o9fgPBXUAiHHwVboBHGLiX6Zcjp1f2wu4tvzZKo0ecPnDtQYDQvJXaBeNzce45Fp28ZQLrEZVuFqgBwOalArKXnW1UzlnSusQKJqKYNuz4tOnI6sZG4zanpemv+7ySU2jbA9h6uhcgpfy6G2PahirDZ6zvq6zDduMVFTKvzw8wgyEdelwY9in3XkEPs3osJuwRQ4qTkfzifndg9Gfc4pdsu82+tTnHZTBa2EAMrqr2t43pguc8tNm7JQVQ2S0ukj2d22dhXYP0/veWtwKrCkNoNimAN5+Xr/oLrxswKbVJjteWrX7eR63o4j9q0GxnaBdWgGA5VStpanIjQmEhV0/nVt5VOFUvix6awJhPcAaTEShgrG+iGyvb5a0Ndb1YGHFPEwoqAinoaykaID1o1pdPNu7XsnCKQ3R+hwWIIhGvORcJUBYXe3Xa3vq/mF/N9V13ugufMkfXn+KHsRD0B8AAAAASUVORK5CYII=" type="image/x-icon" />
8
8
 
9
9
  <script>
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * @project vtk.js
3
- * @build Tue, Oct 29, 2024 4:02 PM ET
3
+ * @build Wed, Nov 13, 2024 10:30 AM ET
4
4
  * @copyright Copyright (c) 2024 Kitware, Inc.
5
5
  *
6
6
  */
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * @project vtk.js
3
- * @build Tue, Oct 29, 2024 4:02 PM ET
3
+ * @build Wed, Nov 13, 2024 10:30 AM ET
4
4
  * @copyright Copyright (c) 2024 Kitware, Inc.
5
5
  *
6
6
  */