@kitware/vtk.js
Version:
Visualization Toolkit for the Web
109 lines (93 loc) • 2.99 kB
TypeScript
import { Vector2, Vector3 } from './../../types';
import vtkRenderer from './../../Rendering/Core/Renderer';
import vtkImageProperty from './../../Rendering/Core/ImageProperty';
import vtkInteractorStyleTrackballCamera from './InteractorStyleTrackballCamera';
export interface vtkInteractorStyleImage
extends vtkInteractorStyleTrackballCamera {
/**
* Handles a mouse move.
* @param callData event data
*/
handleMouseMove(callData: unknown): void;
/**
* Handles a left button press event.
* @param callData event data
*/
handleLeftButtonPress(callData: unknown): void;
/**
* Handles a left button release event.
* @param callData event data
*/
handleLeftButtonRelease(callData: unknown): void;
/**
* Handles the start of a wheel event.
* @param callData event data
*/
handleStartMouseWheel(callData: unknown): void;
/**
* Handles the end of a wheel event.
* @param callData event data
*/
handleEndMouseWheel(callData: unknown): void;
/**
* Handles a wheel event.
* @param callData event data
*/
handleMouseWheel(callData: unknown): void;
/**
* Set window level from position.
* @param renderer the renderer
* @param position the display position
*/
windowLevel(renderer: vtkRenderer, position: { x: number; y: number }): void;
/**
* Set slice from position.
* @param renderer the renderer
* @param position the display position
*/
slice(renderer: vtkRenderer, position: { x: number; y: number }): void;
/**
* Sets the current image property.
*
* This is a way of dealing with images as if they were layers.
* It looks through the renderer's list of props and sets the
* interactor ivars from the Nth image that it finds. You can
* also use negative numbers, i.e. -1 will return the last image,
* -2 will return the second-to-last image, etc.
* @param i image number
*/
setCurrentImageNumber(i: number): boolean;
/**
* Sets the current image property.
* @param imageProperty image property
*/
setCurrentImageProperty(imageProperty: vtkImageProperty): boolean;
}
export interface IInteractorStyleImageInitialValues {
windowLevelStartPosition: Vector2;
windowLevelCurrentPosition: Vector2;
lastSlicePosition: number;
windowLevelInitial: Vector2;
// currentImageProperty: null;
currentImageNumber: number;
interactionMode: 'IMAGE2D' | 'IMAGE3D' | 'IMAGE_SLICING';
xViewRightVector: Vector3;
xViewUpVector: Vector3;
yViewRightVector: Vector3;
yViewUpVector: Vector3;
zViewRightVector: Vector3;
zViewUpVector: Vector3;
}
export function newInstance(
initialValues?: IInteractorStyleImageInitialValues
): vtkInteractorStyleImage;
export function extend(
publicAPI: object,
model: object,
initialValues?: IInteractorStyleImageInitialValues
): void;
export const vtkInteractorStyleImage: {
newInstance: typeof newInstance;
extend: typeof extend;
};
export default vtkInteractorStyleImage;