UNPKG

1.34 kBTypeScriptView Raw
1import { Matrix4 } from "./Matrix4.js";
2import { Quaternion } from "./Quaternion.js";
3import { Vector3 } from "./Vector3.js";
4
5export type EulerOrder = "XYZ" | "YXZ" | "ZXY" | "ZYX" | "YZX" | "XZY";
6
7export type EulerTuple = [x: number, y: number, z: number, order?: EulerOrder];
8
9export class Euler {
10 constructor(x?: number, y?: number, z?: number, order?: EulerOrder);
11
12 /**
13 * @default 0
14 */
15 x: number;
16
17 /**
18 * @default 0
19 */
20 y: number;
21
22 /**
23 * @default 0
24 */
25 z: number;
26
27 /**
28 * @default THREE.Euler.DEFAULT_ORDER
29 */
30 order: EulerOrder;
31 readonly isEuler: true;
32
33 _onChangeCallback: () => void;
34
35 set(x: number, y: number, z: number, order?: EulerOrder): Euler;
36 clone(): this;
37 copy(euler: Euler): this;
38 setFromRotationMatrix(m: Matrix4, order?: EulerOrder, update?: boolean): Euler;
39 setFromQuaternion(q: Quaternion, order?: EulerOrder, update?: boolean): Euler;
40 setFromVector3(v: Vector3, order?: EulerOrder): Euler;
41 reorder(newOrder: EulerOrder): Euler;
42 equals(euler: Euler): boolean;
43 fromArray(array: EulerTuple): Euler;
44 toArray(array?: Partial<EulerTuple>, offset?: number): EulerTuple;
45 _onChange(callback: () => void): this;
46
47 static DEFAULT_ORDER: "XYZ";
48
49 [Symbol.iterator](): Generator<string | number, void>;
50}