UNPKG

@needle-tools/engine

Version:

Needle Engine is a web-based runtime for 3D apps. It runs on your machine for development with great integrations into editors like Unity or Blender - and can be deployed onto any device! It is flexible, extensible and networking and XR are built-in

38 lines (37 loc) 1.21 kB
import { Object3D } from "three"; import { Behaviour } from "./Component.js"; import { EventList } from "./EventList.js"; /** * @category Interactivity * @group Components */ export declare class SpatialTriggerReceiver extends Behaviour { triggerMask: number; onEnter?: EventList<any>; onStay?: EventList<any>; onExit?: EventList<any>; start(): void; update(): void; currentIntersected: SpatialTrigger[]; lastIntersected: SpatialTrigger[]; onEnterTrigger(trigger: SpatialTrigger): void; onExitTrigger(trigger: SpatialTrigger): void; onStayTrigger(trigger: SpatialTrigger): void; } /** * A trigger that can be used to detect if an object is inside a box. * @category Interactivity * @group Components */ export declare class SpatialTrigger extends Behaviour { static triggers: SpatialTrigger[]; triggerMask?: number; private boxHelper?; start(): void; onEnable(): void; onDisable(): void; test(obj: Object3D): boolean; raiseOnEnterEvent(rec: SpatialTriggerReceiver): void; raiseOnStayEvent(rec: SpatialTriggerReceiver): void; raiseOnExitEvent(rec: SpatialTriggerReceiver): void; }