UNPKG

@babylonjs/core

Version:

Getting started? Play directly with the Babylon.js API using our [playground](https://playground.babylonjs.com/). It also contains a lot of samples to learn how to use it.

79 lines (78 loc) 2.72 kB
import type { AbstractMesh } from "../../../Meshes/abstractMesh.js"; import { FlowGraphEventBlock } from "../../flowGraphEventBlock.js"; import type { PointerInfo } from "../../../Events/pointerEvents.js"; import { PointerEventTypes } from "../../../Events/pointerEvents.js"; import type { FlowGraphContext } from "../../flowGraphContext.js"; import type { IFlowGraphBlockConfiguration } from "../../flowGraphBlock.js"; import type { FlowGraphDataConnection } from "../../flowGraphDataConnection.js"; import type { Vector3 } from "../../../Maths/math.vector.js"; import { FlowGraphEventType } from "../../flowGraphEventType.js"; /** * Configuration for the mesh pick event block. */ export interface IFlowGraphMeshPickEventBlockConfiguration extends IFlowGraphBlockConfiguration { /** * Should this mesh block propagation of the event. */ stopPropagation?: boolean; /** * The mesh to listen to. Can also be set by the asset input. */ targetMesh?: AbstractMesh; } /** * A block that activates when a mesh is picked. */ export declare class FlowGraphMeshPickEventBlock extends FlowGraphEventBlock { /** * the configuration of the block */ config?: IFlowGraphMeshPickEventBlockConfiguration | undefined; /** * Input connection: The mesh to listen to. */ readonly asset: FlowGraphDataConnection<AbstractMesh>; /** * Output connection: The picked point. */ readonly pickedPoint: FlowGraphDataConnection<Vector3>; /** * Output connection: The picked origin. */ readonly pickOrigin: FlowGraphDataConnection<Vector3>; /** * Output connection: The pointer id. */ readonly pointerId: FlowGraphDataConnection<number>; /** * Output connection: The picked mesh. Possibly NOT the same as the asset (could be a descendant). */ readonly pickedMesh: FlowGraphDataConnection<AbstractMesh>; /** * Input connection: The type of the pointer event. */ readonly pointerType: FlowGraphDataConnection<PointerEventTypes>; /** * the type of the event this block reacts to */ readonly type: FlowGraphEventType; constructor( /** * the configuration of the block */ config?: IFlowGraphMeshPickEventBlockConfiguration | undefined); _getReferencedMesh(context: FlowGraphContext): AbstractMesh; _executeEvent(context: FlowGraphContext, pickedInfo: PointerInfo): boolean; /** * @internal */ _preparePendingTasks(_context: FlowGraphContext): void; /** * @internal */ _cancelPendingTasks(_context: FlowGraphContext): void; /** * @returns class name of the block. */ getClassName(): string; }