@zeainc/zea-ux
Version:
74 lines • 2.25 kB
TypeScript
import { Color, Parameter, ZeaPointerEvent, XfoParameter } from '@zeainc/zea-engine';
import BaseLinearMovementHandle from './BaseLinearMovementHandle';
import './Shaders/HandleShader';
import SelectionGroup from '../SelectionGroup';
/**
* Class representing a linear scale scene widget.
*
* @extends BaseLinearMovementHandle
*/
declare class LinearScaleHandle extends BaseLinearMovementHandle {
private handleMat;
private oriXfo;
private tmplocalXfo;
private baseXfo;
private change;
param: Parameter<unknown>;
selectionGroup: SelectionGroup;
/**
* Create a linear scale scene widget.
*
* @param name - The name value.
* @param length - The length value.
* @param thickness - The thickness value.
* @param color - The color value.
*/
constructor(name: string, length: number, thickness: 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 global xfo target parameter.
*
* @param param - The parameter that will be modified during manipulation
*/
setTargetParam(param: XfoParameter): void;
/**
* Returns target's global xfo parameter.
*
* @return {Parameter} - returns handle's target global Xfo.
*/
getTargetParam(): XfoParameter | Parameter<unknown>;
/**
* 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 LinearScaleHandle;
export { LinearScaleHandle };
//# sourceMappingURL=LinearScaleHandle.d.ts.map