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