Introduction vtkPickerManipulator.
Methods extend Method use to decorate a given object (publicAPI+model) with vtkPickerManipulator characteristics.
Argument
Type
Required
Description
publicAPI
Yes
object on which methods will be bounds (public)
model
Yes
object on which data structure will be bounds (protected)
initialValues
IPickerManipulatorInitialValues
No
(default: {})
getPicker newInstance Method use to create a new instance of vtkPickerManipulator
setPicker Source index.d.ts import { IAbstractManipulatorInitialValues , vtkAbstractManipulator, } from '../AbstractManipulator' ; import vtkPicker from '../../../Rendering/Core/Picker' ;export interface IPickerManipulatorInitialValues extends IAbstractManipulatorInitialValues {} export interface vtkPickerManipulator extends vtkAbstractManipulator { getPicker (): vtkPicker; setPicker (picker : vtkPicker): void ; } export function extend ( publicAPI: object, model: object, initialValues?: IPickerManipulatorInitialValues ): void ;export function newInstance ( initialValues?: IPickerManipulatorInitialValues ): vtkPickerManipulator;export declare const vtkPickerManipulator : { newInstance : typeof newInstance; extend : typeof extend; }; export default vtkPickerManipulator;
index.js import macro from 'vtk.js/Sources/macros' ;import vtkCellPicker from 'vtk.js/Sources/Rendering/Core/CellPicker' ;import vtkAbstractManipulator from 'vtk.js/Sources/Widgets/Manipulators/AbstractManipulator' ;function vtkPickerManipulator (publicAPI, model ) { model.classHierarchy .push ('vtkPickerManipulator' ); publicAPI.handleEvent = (callData ) => { const { position, pokedRenderer } = callData; model.picker .pick ([position.x , position.y , 0.0 ], pokedRenderer); if (model.picker .getPickedPositions ().length > 0 ) { model.position = model.picker .getPickedPositions ()[0 ]; } else { model.position = null ; } return model._addWorldDeltas ({ worldCoords : model.position , }); }; } function defaultValues (initialValues ) { if (!initialValues.picker ) { const picker = vtkCellPicker.newInstance (); picker.initializePickList (); picker.setPickFromList (true ); picker.setTolerance (0 ); initialValues.picker = picker; } return { ...initialValues, }; } export function extend (publicAPI, model, initialValues = {} ) { vtkAbstractManipulator.extend (publicAPI, model, defaultValues (initialValues)); macro.setGet (publicAPI, model, ['picker' ]); vtkPickerManipulator (publicAPI, model); } export const newInstance = macro.newInstance (extend, 'vtkPickerManipulator' );export default { extend, newInstance };