UNPKG

@kitware/vtk.js

Version:

Visualization Toolkit for the Web

50 lines (37 loc) 1.73 kB
import { m as macro } from '../../macros2.js'; import vtkInteractorStyleManipulator from './InteractorStyleManipulator.js'; import vtk3DControllerModelSelectorManipulator from '../Manipulators/3DControllerModelSelectorManipulator/index.js'; import { Device, Input } from '../../Rendering/Core/RenderWindowInteractor/Constants.js'; function vtkInteractorStyleHMDXR(publicAPI, model) { model.classHierarchy.push('vtkInteractorStyleHMDXR'); const leftHandManipulator = vtk3DControllerModelSelectorManipulator.newInstance({ device: Device.LeftController, input: Input.A }); const rightHandManipulator = vtk3DControllerModelSelectorManipulator.newInstance({ device: Device.RightController, input: Input.A }); publicAPI.addVRManipulator(leftHandManipulator); publicAPI.addVRManipulator(rightHandManipulator); } // ---------------------------------------------------------------------------- // Object factory // ---------------------------------------------------------------------------- const DEFAULT_VALUES = {}; // ---------------------------------------------------------------------------- function extend(publicAPI, model, initialValues = {}) { Object.assign(model, DEFAULT_VALUES, initialValues); // Inheritance vtkInteractorStyleManipulator.extend(publicAPI, model, initialValues); // Object specific methods vtkInteractorStyleHMDXR(publicAPI, model); } // ---------------------------------------------------------------------------- const newInstance = macro.newInstance(extend, 'vtkInteractorStyleHMDXR'); // ---------------------------------------------------------------------------- var index = { newInstance, extend }; export { index as default, extend, newInstance };