polygonjs-engine
Version:
node-based webgl 3D engine https://polygonjs.com
54 lines (53 loc) • 2.21 kB
TypeScript
import { Number3 } from '../types/GlobalTypes';
import { Vector3 } from 'three/src/math/Vector3';
import { Object3D } from 'three/src/core/Object3D';
import { Matrix4 } from 'three/src/math/Matrix4';
import { BufferGeometry } from 'three/src/core/BufferGeometry';
import { BaseNodeType } from '../engine/nodes/_Base';
export declare enum TransformTargetType {
OBJECTS = "objects",
GEOMETRIES = "geometries"
}
export declare const TRANSFORM_TARGET_TYPES: Array<TransformTargetType>;
export declare enum RotationOrder {
XYZ = "XYZ",
XZY = "XZY",
YXZ = "YXZ",
YZX = "YZX",
ZYX = "ZYX",
ZXY = "ZXY"
}
export declare const ROTATION_ORDERS: RotationOrder[];
export declare const DEFAULT_ROTATION_ORDER = RotationOrder.XYZ;
export interface SetParamsFromMatrixOptions {
scale?: boolean;
}
export declare class CoreTransform {
private static set_params_from_matrix_position;
private static set_params_from_matrix_quaternion;
private static set_params_from_matrix_scale;
private static set_params_from_matrix_euler;
private static set_params_from_matrix_rotation;
private static set_params_from_matrix_t;
private static set_params_from_matrix_r;
private static set_params_from_matrix_s;
static set_params_from_matrix(matrix: Matrix4, node: BaseNodeType, options?: SetParamsFromMatrixOptions): void;
static set_params_from_object_position_array: Number3;
static set_params_from_object_rotation_deg: Vector3;
static set_params_from_object_rotation_array: Number3;
static set_params_from_object(object: Object3D, node: BaseNodeType): void;
private _translation_matrix;
private _translation_matrix_q;
private _translation_matrix_s;
translation_matrix(t: Vector3): Matrix4;
private _matrix;
private _matrix_q;
private _matrix_euler;
private _matrix_s;
matrix(t: Vector3, r: Vector3, s: Vector3, scale: number, rotation_order: RotationOrder): Matrix4;
private _rotate_geometry_m;
private _rotate_geometry_q;
private _rotate_geometry_vec_dest;
rotate_geometry(geometry: BufferGeometry, vec_origin: Vector3, vec_dest: Vector3): void;
static decompose_matrix(object: Object3D): void;
}