Class: MathUtil
内置数学基本计算工厂函数
Methods
- computeGaussian
- gaussCoef
- clampf
- normalizeAngle
- fract
- getRandDirXZ
- getRandDirXYZ
- getCycleXYZ
- angle
- angle_360
- fromToRotation
- getEularDir_yUp
- transformVector
- getRotationY
Constructors
Methods
computeGaussian
▸ Static
computeGaussian(n
, theta
): number
计算高斯分布函数
Parameters
Name | Type | Description |
---|---|---|
n | any | 函数变量值 |
theta | any | 数据分布的离散程度 |
Returns
number
计算所得的高斯分布值结果
Defined in
src/engine/math/MathUtil.ts:65
gaussCoef
▸ Static
gaussCoef(sigma
): Float32Array
计算高斯系数
Parameters
Name | Type | Description |
---|---|---|
sigma | any | sigma值 |
Returns
Float32Array
返回计算结果
Defined in
src/engine/math/MathUtil.ts:74
clampf
▸ Static
clampf(value
, min_inclusive
, max_inclusive
): number
将数值限制在某一范围内
Parameters
Name | Type | Description |
---|---|---|
value | number | 原数值 |
min_inclusive | number | 最小值 |
max_inclusive | number | 最大值 |
Returns
number
处理结果
Defined in
src/engine/math/MathUtil.ts:104
normalizeAngle
▸ Static
normalizeAngle(a
): number
规范化角度,使其限制在[-180, 180]范围内
Parameters
Name | Type | Description |
---|---|---|
a | number | 输入角度 |
Returns
number
返回处理结果
Defined in
src/engine/math/MathUtil.ts:118
fract
▸ Static
fract(v
): number
返回某数的小数部分
Parameters
Name | Type | Description |
---|---|---|
v | number | 输入值 |
Returns
number
返回处理结果
Defined in
src/engine/math/MathUtil.ts:129
getRandDirXZ
▸ Static
getRandDirXZ(r
): Object
根据半径生成一对随机的落在该圆范围内的x, z坐标
Parameters
Name | Type | Description |
---|---|---|
r | number | 输入半径 |
Returns
Object
生成的x, z结果
Name | Type |
---|---|
x | number |
z | number |
Defined in
src/engine/math/MathUtil.ts:138
getRandDirXYZ
▸ Static
getRandDirXYZ(r
): Vector3
根据半径生成一对随机的落在该圆球范围内的x, y, z坐标
Parameters
Name | Type | Description |
---|---|---|
r | number | 输入半径 |
Returns
由生成的x, y, z坐标值构成的Vector3向量
Defined in
src/engine/math/MathUtil.ts:152
getCycleXYZ
▸ Static
getCycleXYZ(r
): Vector3
根据半径生成一对随机的落在该圆球范围内,且y值在[-r/2, r/2]之间的x, y, z坐标
Parameters
Name | Type | Description |
---|---|---|
r | number | 输入半径 |
Returns
由生成的x, y, z坐标值构成的Vector3向量
Defined in
src/engine/math/MathUtil.ts:167
angle
▸ Static
angle(p1
, p2
): number
计算两个向量之间的角度
Parameters
Name | Type | Description |
---|---|---|
p1 | Vector3 | 向量1 |
p2 | Vector3 | 向量2 |
Returns
number
返回计算结果
Defined in
src/engine/math/MathUtil.ts:183
angle_360
▸ Static
angle_360(from
, to
): number
计算两个向量之间的角度
Parameters
Name | Type | Description |
---|---|---|
from | any | 向量1 |
to | any | 向量2 |
Returns
number
两向量的夹角 角度
Defined in
src/engine/math/MathUtil.ts:199
fromToRotation
▸ Static
fromToRotation(fromDirection
, toDirection
, target?
): Quaternion
计算出一个方向变换到另一个方向的四元数
Version
UU3D 3.0
Platform
Web,Native
Parameters
Name | Type | Default value | Description |
---|---|---|---|
fromDirection | Vector3 | undefined | 初始方向 |
toDirection | Vector3 | undefined | 变换后的方向 |
target | Quaternion | null | 计算出的四元数 默认为null 结果会返回 |
Returns
Quaternion 计算出的四元数 如果 target为null 就会创建新实例返回
Defined in
src/engine/math/MathUtil.ts:225
getEularDir_yUp
▸ Static
getEularDir_yUp(v
): Vector3
获取Eular方向
Parameters
Name | Type | Description |
---|---|---|
v | number | 输入值 |
Returns
返回计算结果
Defined in
src/engine/math/MathUtil.ts:240
transformVector
▸ Static
transformVector(matrix
, vector
, result?
): Vector3
计算向量变换,并将结果赋值到输入变量中
Parameters
Name | Type | Default value | Description |
---|---|---|---|
matrix | Matrix4 | undefined | 变换矩阵 |
vector | Vector3 | undefined | 原始向量 |
result | Vector3 | null | 输出向量 |
Returns
返回输出向量
Defined in
src/engine/math/MathUtil.ts:254
getRotationY
▸ getRotationY(v
): number
根据输入向量获取绕Y轴旋转角度
Parameters
Name | Type | Description |
---|---|---|
v | Vector3 | 输入向量 |
Returns
number
返回计算结果
Defined in
src/engine/math/MathUtil.ts:211
Constructors
constructor
• new MathUtil()