@thewtex/vtk.js-esm
Version:
Visualization Toolkit for the Web
141 lines (115 loc) • 3.19 kB
TypeScript
import { vtkObject } from '@kitware/vtk.js/interfaces';
import vtkRenderer from '@kitware/vtk.js/Rendering/Core/Renderer';
import vtkRenderWindow from '@kitware/vtk.js/Rendering/Core/RenderWindow';
import vtkRenderWindowInteractor from '@kitware/vtk.js/Rendering/Core/RenderWindowInteractor';
// import vtkOpenGLRenderWindow from '@kitware/vtk.js/OpenGL/RenderWindow';
// import vtkWebGPURenderWindow from '@kitware/vtk.js/WebGPU/RenderWindow';
/**
*
*/
interface IFullScreenRenderWindowInitialValues {
background?: number[];
containerStyle?: object;
controlPanelStyle?: object,
listenWindowResize?: boolean;
controllerVisibility?: boolean;
resizeCallback?: any;
}
export interface vtkFullScreenRenderWindow extends vtkObject {
/**
*
* @param {HTMLElement} html
*/
addController(html : HTMLElement): void;
/**
* Representation API
* @param representation
*/
addRepresentation(representation : any): void;
/**
* Release GL context
*/
delete(): void;
/**
*
*/
getApiSpecificRenderWindow(): any; // vtkOpenGLRenderWindow || vtkWebGPURenderWindow
/**
* Get container element
*/
getContainer(): HTMLElement;
/**
* Get control container element
*/
getControlContainer(): HTMLElement;
/**
* Get interactor object
*/
getInteractor(): vtkRenderWindowInteractor;
/**
* Get Render windows object
*/
getRenderWindow(): vtkRenderWindow;
/**
* Get Renderer object
*/
getRenderer(): vtkRenderer;
/**
* Get root container element
*/
getRootContainer(): HTMLElement;
/**
* Remove controller
*/
removeController(): void;
/**
* Remove representation
* @param representation
*/
removeRepresentation(representation : any): void;
/**
* Handle window resize
*/
resize(): void;
/**
* Set background color
* @param {Number[]} background The background color.
*/
setBackground(background: number[]): boolean;
/**
* Hide or show controller
* @param {Boolean} visible
*/
setControllerVisibility(visible : boolean): void;
/**
*
* @param cb
*/
setResizeCallback(cb : any): void;
/**
* Toggle controller visibility
*/
toggleControllerVisibility(): void;
}
/**
* Method used to decorate a given object (publicAPI+model) with vtkFullScreenRenderWindow characteristics.
*
* @param publicAPI object on which methods will be bounds (public)
* @param model object on which data structure will be bounds (protected)
* @param {IFullScreenRenderWindowInitialValues} [initialValues] (default: {})
*/
export function extend(publicAPI: object, model: object, initialValues?: IFullScreenRenderWindowInitialValues): void;
/**
* Method used to create a new instance of vtkFullScreenRenderWindow
* @param {IFullScreenRenderWindowInitialValues} [initialValues] for pre-setting some of its content
*/
export function newInstance(initialValues?: IFullScreenRenderWindowInitialValues): vtkFullScreenRenderWindow;
/**
* vtkFullScreenRenderWindow provides a skeleton for implementing a fullscreen
* render window.
*/
export declare const vtkFullScreenRenderWindow: {
newInstance: typeof newInstance;
extend: typeof extend;
}
export default vtkFullScreenRenderWindow;