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.

78 lines (77 loc) 2.9 kB
import type { IFlowGraphBlockConfiguration } from "../../../flowGraphBlock.js"; import { FlowGraphTypes } from "../../../flowGraphRichTypes.js"; import { FlowGraphBinaryOperationBlock } from "../flowGraphBinaryOperationBlock"; import { FlowGraphUnaryOperationBlock } from "../flowGraphUnaryOperationBlock"; import { Matrix, Vector2, Vector3 } from "../../../../Maths/math.vector.js"; import { FlowGraphTernaryOperationBlock } from "../flowGraphTernaryOperationBlock"; import type { FlowGraphMatrix, FlowGraphVector } from "../../../utils.js"; /** * Vector length block. */ export declare class FlowGraphLengthBlock extends FlowGraphUnaryOperationBlock<FlowGraphVector, number> { constructor(config?: IFlowGraphBlockConfiguration); private _polymorphicLength; } /** * Configuration for normalized vector */ export interface IFlowGraphNormalizeBlockConfiguration extends IFlowGraphBlockConfiguration { /** * If true, the block will return NaN if the input vector has a length of 0. * This is the expected behavior for glTF interactivity graphs. */ nanOnZeroLength?: boolean; } /** * Vector normalize block. */ export declare class FlowGraphNormalizeBlock extends FlowGraphUnaryOperationBlock<FlowGraphVector, FlowGraphVector> { constructor(config?: IFlowGraphNormalizeBlockConfiguration); private _polymorphicNormalize; } /** * Dot product block. */ export declare class FlowGraphDotBlock extends FlowGraphBinaryOperationBlock<FlowGraphVector, FlowGraphVector, number> { constructor(config?: IFlowGraphBlockConfiguration); private _polymorphicDot; } /** * Cross product block. */ export declare class FlowGraphCrossBlock extends FlowGraphBinaryOperationBlock<Vector3, Vector3, Vector3> { constructor(config?: IFlowGraphBlockConfiguration); } /** * 2D rotation block. */ export declare class FlowGraphRotate2DBlock extends FlowGraphBinaryOperationBlock<Vector2, number, Vector2> { constructor(config?: IFlowGraphBlockConfiguration); } /** * 3D rotation block. */ export declare class FlowGraphRotate3DBlock extends FlowGraphTernaryOperationBlock<Vector3, Vector3, number, Vector3> { constructor(config?: IFlowGraphBlockConfiguration); } /** * Configuration for the transform block. */ export interface IFlowGraphTransformBlockConfiguration extends IFlowGraphBlockConfiguration { /** * The vector type */ vectorType: FlowGraphTypes; } /** * Transform a vector3 by a matrix. */ export declare class FlowGraphTransformBlock extends FlowGraphBinaryOperationBlock<FlowGraphVector, FlowGraphMatrix, FlowGraphVector> { constructor(config?: IFlowGraphTransformBlockConfiguration); } /** * Transform a vector3 by a matrix. */ export declare class FlowGraphTransformCoordinatesBlock extends FlowGraphBinaryOperationBlock<Vector3, Matrix, Vector3> { constructor(config?: IFlowGraphBlockConfiguration); }