@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
TypeScript
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;
}