CompositeVRManipulator

Methods

Source

index.d.ts
import { States } from '../../../Rendering/Core/InteractorStyle/Constants';
import vtkRenderer from '../../../Rendering/Core/Renderer';
import vtkRenderWindowInteractor from '../../../Rendering/Core/RenderWindowInteractor';
import {
Device,
Input,
} from '../../../Rendering/Core/RenderWindowInteractor/Constants';

export interface vtkCompositeVRManipulator {
onButton3D(
interactor: vtkRenderWindowInteractor,
renderer: vtkRenderer,
state: States,
device: Device,
input: Input,
pressed: boolean
): void;

onMove3D(
interactor: vtkRenderWindowInteractor,
renderer: vtkRenderer,
state: States,
device: Device,
input: Input,
pressed: boolean
): void;
}

export interface ICompositeVRManipulatorInitialValues {
device?: Device;
input?: Input;
}

export function extend(
publicAPI: object,
model: object,
initialValues?: ICompositeVRManipulatorInitialValues
): void;

export const vtkCompositeVRManipulator: {
extend: typeof extend;
};

export default vtkCompositeVRManipulator;
index.js
import macro from 'vtk.js/Sources/macros';
import {
Device,
Input,
} from 'vtk.js/Sources/Rendering/Core/RenderWindowInteractor/Constants';

// ----------------------------------------------------------------------------
// vtkCompositeVRManipulator methods
// ----------------------------------------------------------------------------

function vtkCompositeVRManipulator(publicAPI, model) {
// Set our className
model.classHierarchy.push('vtkCompositeVRManipulator');

publicAPI.onButton3D = (
interactor,
renderer,
state,
device,
input,
pressed
) => {};
publicAPI.onMove3D = (
interactor,
renderer,
state,
device,
input,
pressed
) => {};
}

// ----------------------------------------------------------------------------
// Object factory
// ----------------------------------------------------------------------------

const DEFAULT_VALUES = {
// device: null, // Device.RightController
// input: null, // Input.TrackPad
};

// ----------------------------------------------------------------------------

export function extend(publicAPI, model, initialValues = {}) {
Object.assign(model, DEFAULT_VALUES, initialValues);

// Create get-set macros
macro.setGet(publicAPI, model, ['device', 'input']);

// Object specific methods
vtkCompositeVRManipulator(publicAPI, model);
}

// ----------------------------------------------------------------------------

export default { extend, Device, Input };