lingo3d
Version:
Lingo3D is a React/Vue 3d game development framework that ships with a complete visual editor
60 lines (59 loc) • 3.84 kB
TypeScript
import IMathNode from "../../interface/IMathNode";
import GameGraphChild from "../GameGraphChild";
export default class MathNode extends GameGraphChild implements IMathNode {
static componentName: string;
static defaults: Partial<import("../../interface/utils/Defaults").default<IMathNode>>;
static schema: Required<import("../../interface/utils/extractProps").ExtractProps<IMathNode>>;
static includeKeys: string[];
protected mathFn: {
abs: (x: number) => number;
log: (x: number) => number;
sqrt: (x: number) => number;
min: (...values: number[]) => number;
max: (...values: number[]) => number;
randomRange: (min: number, max: number) => number;
mapRange: (value: number, minFrom: number, maxFrom: number, minTo: number, maxTo: number, constrain?: boolean | undefined) => number;
ceil: (x: number) => number;
floor: (x: number) => number;
round: (x: number) => number;
sign: (x: number) => number;
sin: (x: number) => number;
cos: (x: number) => number;
tan: (x: number) => number;
asin: (x: number) => number;
acos: (x: number) => number;
atan: (x: number) => number;
atan2: (y: number, x: number) => number;
radToDeg: (rad: number) => number;
degToRad: (deg: number) => number;
mToCM: (m: number) => number;
cmToM: (cm: number) => number;
lerp: (a: number, b: number, t: number) => number;
inverseLerp: (a: number, b: number, t: number) => number;
smoothStep: (a: number, b: number, t: number) => number;
clamp: (val: number, min: number, max: number) => number;
fraction: (val: number) => number;
trunc: (val: number) => number;
cross: (a: import("../../utils/isPoint").Point3dType, b: import("../../utils/isPoint").Point3dType) => import("../..").Point3d;
dot: (a: import("../../utils/isPoint").Point3dType, b: import("../../utils/isPoint").Point3dType) => number;
length: (a: import("../../utils/isPoint").Point3dType) => number;
distance: (a: import("../../utils/isPoint").Point3dType, b: import("../../utils/isPoint").Point3dType) => number;
normalize: (a: import("../../utils/isPoint").Point3dType) => import("../..").Point3d;
reflect: (a: import("../../utils/isPoint").Point3dType, b: import("../../utils/isPoint").Point3dType) => import("../..").Point3d;
project: (a: import("../../utils/isPoint").Point3dType, b: import("../../utils/isPoint").Point3dType) => import("../..").Point3d;
angle: (a: import("../../utils/isPoint").Point3dType, b: import("../../utils/isPoint").Point3dType) => number;
rotate: (a: import("../../utils/isPoint").Point3dType, axis: import("../../utils/isPoint").Point3dType, angle: number) => import("../..").Point3d;
rotateX: (a: import("../../utils/isPoint").Point3dType, angle: number) => import("../..").Point3d;
rotateY: (a: import("../../utils/isPoint").Point3dType, angle: number) => import("../..").Point3d;
rotateZ: (a: import("../../utils/isPoint").Point3dType, angle: number) => import("../..").Point3d;
rotateXY: (a: import("../../utils/isPoint").Point3dType, angle: number) => import("../..").Point3d;
rotateXZ: (a: import("../../utils/isPoint").Point3dType, angle: number) => import("../..").Point3d;
rotateYZ: (a: import("../../utils/isPoint").Point3dType, angle: number) => import("../..").Point3d;
multiply: (a: import("../../utils/isPoint").Point3dType, b: number | import("../../utils/isPoint").Point3dType) => import("../..").Point3d;
};
private setRuntimeData;
private compiled?;
private _expression?;
get expression(): string | undefined;
set expression(val: string | undefined);
}