Skip to content

@simversus/yjvis


@simversus/yjvis / math / Quat

Class: Quat ​

Defined in: math/quat.ts:10

四元数类,用于表示旋转

Constructors ​

Constructor ​

new Quat(x, y, z, w): Quat

Defined in: math/quat.ts:25

构造函数

Parameters ​

x ​

number = 0

x 分量

y ​

number = 0

y 分量

z ​

number = 0

z 分量

w ​

number = 1

w 分量,默认 1

Returns ​

Quat

Properties ​

_onChangeCallback() ​

_onChangeCallback: () => void

Defined in: math/quat.ts:16

值改变时的回调函数

Returns ​

void


elements ​

elements: [number, number, number, number]

Defined in: math/quat.ts:13

Accessors ​

w ​

Get Signature ​

get w(): number

Defined in: math/quat.ts:47

w 分量

Returns ​

number

Set Signature ​

set w(v): void

Defined in: math/quat.ts:63

Parameters ​
v ​

number

Returns ​

void


x ​

Get Signature ​

get x(): number

Defined in: math/quat.ts:32

x 分量

Returns ​

number

Set Signature ​

set x(v): void

Defined in: math/quat.ts:51

Parameters ​
v ​

number

Returns ​

void


y ​

Get Signature ​

get y(): number

Defined in: math/quat.ts:37

y 分量

Returns ​

number

Set Signature ​

set y(v): void

Defined in: math/quat.ts:55

Parameters ​
v ​

number

Returns ​

void


z ​

Get Signature ​

get z(): number

Defined in: math/quat.ts:42

z 分量

Returns ​

number

Set Signature ​

set z(v): void

Defined in: math/quat.ts:59

Parameters ​
v ​

number

Returns ​

void

Methods ​

_onChange() ​

_onChange(callback): Quat

Defined in: math/quat.ts:280

设置值改变回调函数

Parameters ​

callback ​

() => void

回调函数

Returns ​

Quat

this


clone() ​

clone(): Quat

Defined in: math/quat.ts:164

克隆当前四元数

Returns ​

Quat

新的 Quat 实例


copy() ​

copy(q): Quat

Defined in: math/quat.ts:154

复制另一个四元数

Parameters ​

q ​

Quat

源四元数

Returns ​

Quat

this


fromArray() ​

fromArray(array, offset): Quat

Defined in: math/quat.ts:264

从数组设置数据

Parameters ​

array ​

number[]

数据数组

offset ​

number = 0

偏移量

Returns ​

Quat

this


fromAxisAngle() ​

fromAxisAngle(axis, radian): Quat

Defined in: math/quat.ts:253

从轴角设置四元数

Parameters ​

axis ​

Vec3

旋转轴

radian ​

number

旋转角度 (弧度)

Returns ​

Quat

this


fromEuler() ​

fromEuler(euler): Quat

Defined in: math/quat.ts:237

从欧拉角设置四元数

Parameters ​

euler ​

Euler

欧拉角

Returns ​

Quat

this


fromMatrix4() ​

fromMatrix4(m): Quat

Defined in: math/quat.ts:227

从 4x4 矩阵的旋转部分设置四元数

Parameters ​

m ​

Mat4

4x4 矩阵

Returns ​

Quat

this


identity() ​

identity(): Quat

Defined in: math/quat.ts:84

设置为单位四元数

Returns ​

Quat

this


invert() ​

invert(q): Quat

Defined in: math/quat.ts:137

求逆

Parameters ​

q ​

Quat = ...

结果四元数,默认 this

Returns ​

Quat

this


multiply() ​

multiply(qA, qB?): Quat

Defined in: math/quat.ts:186

四元数乘法 (this = qA * qB 或 this = this * qA)

Parameters ​

qA ​

Quat

四元数 A (或乘数)

qB? ​

Quat

四元数 B (可选)

Returns ​

Quat


normalize() ​

normalize(q): Quat

Defined in: math/quat.ts:175

归一化

Parameters ​

q ​

Quat = ...

结果四元数,默认 this

Returns ​

Quat

this


premultiply() ​

premultiply(qA, qB?): Quat

Defined in: math/quat.ts:202

四元数左乘 (this = qA * this 或 this = qA * qB) 注意参数顺序和 multiply 的区别

Parameters ​

qA ​

Quat

左乘的四元数 (或被乘数)

qB? ​

Quat

右乘的四元数 (可选)

Returns ​

Quat


rotateX() ​

rotateX(radian): Quat

Defined in: math/quat.ts:107

绕 X 轴旋转

Parameters ​

radian ​

number

弧度

Returns ​

Quat

this


rotateY() ​

rotateY(radian): Quat

Defined in: math/quat.ts:117

绕 Y 轴旋转

Parameters ​

radian ​

number

弧度

Returns ​

Quat

this


rotateZ() ​

rotateZ(radian): Quat

Defined in: math/quat.ts:127

绕 Z 轴旋转

Parameters ​

radian ​

number

弧度

Returns ​

Quat

this


set() ​

set(x, y, z, w): Quat

Defined in: math/quat.ts:97

设置四元数的值

Parameters ​

x ​

number

x 分量

y ​

number

y 分量

z ​

number

z 分量

w ​

number

w 分量

Returns ​

Quat

this


toArray() ​

toArray(array, offset): number[] | TypedArray

Defined in: math/quat.ts:72

转换为数组

Parameters ​

array ​

目标数组

number[] | TypedArray

offset ​

number = 0

偏移量

Returns ​

number[] | TypedArray