import { Xfo, ColorParameter, Cross, TreeItem, Vec3, ZeaPointerEvent, ZeaMouseEvent, ZeaTouchEvent, BaseGeom, ZeaKeyboardEvent, XRController, XRControllerEvent, XRPoseEvent, LinesMaterial } from '@zeainc/zea-engine'; import BaseCreateTool from '../BaseCreateTool'; import { AppData } from '../../../types/types'; /** * Base class for creating geometry tools. * * @extends BaseCreateTool */ declare class CreateGeomTool extends BaseCreateTool { stage: number; removeToolOnRightClick: boolean; parentItem: TreeItem; colorParam: ColorParameter; vrControllerToolTipMat: LinesMaterial; vrControllerToolTip: BaseGeom | Cross; prevCursor: string; constructionPlane: Xfo; private activeController; /** * Create a create geom tool. * * @param appData - The appData value. */ constructor(appData: AppData, parentItem: TreeItem); /** * Adds a geometry icon to the VR Controller * @param controller - The controller object. */ addIconToVRController(controller: XRController): void; controllerAddedHandler(event: { controller: any; }): void; /** * The activateTool method. */ activateTool(): void; /** * The deactivateTool method. */ deactivateTool(): void; private setupConstructionPlane; /** * Transforms the screen position in the viewport to an Xfo object. * * @param event - The event param * @return {Xfo} The return value. */ screenPosToXfo(event: ZeaMouseEvent | ZeaTouchEvent, snapToSurfaceUnderPointer?: boolean): Xfo; /** * Starts the creation of the geometry. * * @param xfo - The xfo param. */ protected createStart(xfo: Xfo, event: ZeaPointerEvent): void; /** * The createPoint method. * * @param pt - The pt param. */ protected createPoint(pt: Vec3, event?: ZeaPointerEvent): void; /** * The createMove method. * * @param pt - The pt param. */ protected createMove(pt: Vec3, event: ZeaPointerEvent): void; /** * The createRelease method. * * @param pt - The pt param. */ protected createRelease(pt: Vec3, event: ZeaPointerEvent): void; /** * Event fired when a pointing device button is pressed over the viewport while the tool is activated. * * @param event - The event param. */ onPointerDown(event: ZeaPointerEvent): void; /** * Event fired when a pointing device is moved while the cursor's hotspot is inside the viewport, while tool is activated. * * @param event - The event param. */ onPointerMove(event: ZeaPointerEvent): void; /** * Event fired when a pointing device button is released while the pointer is over the viewport, while the tool is activated. * * @param event - The event param. */ onPointerUp(event: ZeaPointerEvent): void; /** * Event fired when the user rotates the pointing device wheel, while the tool is activated. * * @param event - The event param. */ onWheel(event: ZeaPointerEvent): void; /** * Event fired when the user presses a key on the keyboard, while the tool is activated. * * @param event - The event param. */ onKeyPressed(event: ZeaKeyboardEvent): void; /** * Event fired when the user presses down a key on the keyboard, while the tool is activated. * * @param event - The event param. */ onKeyDown(event: ZeaKeyboardEvent): void; /** * Event fired when the user releases a key on the keyboard. * * @param event - The event param. */ onKeyUp(event: ZeaKeyboardEvent): void; /** * Event fired when one or more touch points have been disrupted in an implementation-specific manner inside the viewport, when the tool is activated. * * @param event - The event param. */ onTouchCancel(event: ZeaPointerEvent): void; /** * Event fired when a VR controller button is pressed inside the viewport, when the tool is activated. * * @param event - The event param. */ onXRControllerButtonDown(event: XRControllerEvent): void; /** * The onXRPoseChanged method. * * @param event - The event param. */ onXRPoseChanged(event: XRPoseEvent): void; /** * Event fired when a VR controller button is released inside the viewport, when the tool is activated. * * @param event - The event param. */ onVRControllerButtonUp(event: XRControllerEvent): void; } export default CreateGeomTool; export { CreateGeomTool }; //# sourceMappingURL=CreateGeomTool.d.ts.map