@zeainc/zea-ux
Version:
76 lines • 2.25 kB
TypeScript
import { XfoParameter, ZeaPointerEvent, NumberParameter, Color } from '@zeainc/zea-engine';
import Handle from './Handle';
import SelectionGroup from '../SelectionGroup';
/**
* Class representing an axial rotation scene widget.
*
* @extends Handle
*/
declare class AxialRotationHandle extends Handle {
param: XfoParameter;
radiusParam: NumberParameter;
private baseXfo;
private handleXfo;
snapIncrementAngle: number;
enableAngleSnapping: boolean;
private handleToTargetXfo;
private vec0;
private change;
private handleMat;
private handle;
selectionGroup: SelectionGroup;
/**
* Create an axial rotation scene widget.
*
* @param name - The name value.
*/
constructor(name: string, radius: number, thickness: number, radians?: number, color?: Color);
/**
* highlight the handle to indicate it is under the mouse.
*/
highlight(): void;
/**
* Removes the highlight from the handle once the mouse moves away.
*/
unhighlight(): void;
/**
* Sets selectionGroup so this handle can modify the items.
*
* @param selectionGroup - The SelectionGroup.
*/
setSelectionGroup(selectionGroup: SelectionGroup): void;
/**
* Sets the target parameter for this manipulator.
* This parameter will be modified by interactions on the manipulator.
*
* @param param - The parameter that will be modified during manipulation
*/
setTargetParam(param: XfoParameter): void;
/**
* Returns target's global xfo parameter.
*
* @return {Parameter} - returns parameter
*/
getTargetParam(): XfoParameter;
/**
* Handles the initially drag of the handle.
*
* @param event - The event param.
*/
onDragStart(event: ZeaPointerEvent): void;
/**
* Handles drag action of the handle.
*
* @param event - The event param.
*/
onDrag(event: ZeaPointerEvent): void;
/**
* Handles the end of dragging the handle.
*
* @param event - The event param.
*/
onDragEnd(event: ZeaPointerEvent): void;
}
export default AxialRotationHandle;
export { AxialRotationHandle };
//# sourceMappingURL=AxialRotationHandle.d.ts.map