Package | laya.d3.math |
Class | public class Matrix4x4 |
Inheritance | Matrix4x4 Object |
Implements | laya.d3.core.IClone |
Matrix4x4
类用于创建4x4矩阵。
Property | Defined By | ||
---|---|---|---|
elements : Float32Array 矩阵元素数组 | Matrix4x4 |
Method | Defined By | ||
---|---|---|---|
Matrix4x4(m11:Number = 1, m12:Number = 0, m13:Number = 0, m14:Number = 0, m21:Number = 0, m22:Number = 1, m23:Number = 0, m24:Number = 0, m31:Number = 0, m32:Number = 0, m33:Number = 1, m34:Number = 0, m41:Number = 0, m42:Number = 0, m43:Number = 0, m44:Number = 1)
创建一个 Matrix4x4 实例。
| Matrix4x4 | ||
clone():*
克隆。
| Matrix4x4 | ||
cloneTo(destObject:*):void
克隆。
| Matrix4x4 | ||
[static]
计算仿射矩阵
| Matrix4x4 | ||
[static]
从四元数计算旋转矩阵
| Matrix4x4 | ||
[static]
计算观察矩阵
| Matrix4x4 | ||
createOrthoOffCenterRH(left:Number, right:Number, bottom:Number, top:Number, near:Number, far:Number, out:Matrix4x4):void [static]
计算正交投影矩阵。
| Matrix4x4 | ||
createPerspective(fov:Number, aspect:Number, near:Number, far:Number, out:Matrix4x4):void [static]
计算透视投影矩阵。
| Matrix4x4 | ||
[static]
通过旋转轴axis和旋转角度angle计算旋转矩阵。
| Matrix4x4 | ||
[static]
通过四元数创建旋转矩阵。
| Matrix4x4 | ||
createRotationX(rad:Number, out:Matrix4x4):void [static]
绕X轴旋转
| Matrix4x4 | ||
createRotationY(rad:Number, out:Matrix4x4):void [static]
绕Y轴旋转
| Matrix4x4 | ||
createRotationYawPitchRoll(yaw:Number, pitch:Number, roll:Number, result:Matrix4x4):void [static]
通过yaw pitch roll旋转创建旋转矩阵。
| Matrix4x4 | ||
createRotationZ(rad:Number, out:Matrix4x4):void [static]
绕Z轴旋转
| Matrix4x4 | ||
[static]
根据缩放计算输出矩阵
| Matrix4x4 | ||
[static]
根据平移计算输出矩阵
| Matrix4x4 | ||
分解矩阵为平移向量、旋转矩阵、缩放向量。
| Matrix4x4 | ||
分解矩阵为平移向量、旋转四元数、缩放向量。
| Matrix4x4 | ||
decomposeYawPitchRoll(yawPitchRoll:Vector3):void
分解旋转矩阵的旋转为YawPitchRoll欧拉角。
| Matrix4x4 | ||
equalsOtherMatrix(other:Matrix4x4):Boolean
判断两个4x4矩阵的值是否相等。
| Matrix4x4 | ||
getElementByRowColumn(row:Number, column:Number):Number | Matrix4x4 | ||
getForward(out:Vector3):void
获取前向量。
| Matrix4x4 | ||
getTranslationVector(out:Vector3):void
获取平移向量。
| Matrix4x4 | ||
identity():void 设置矩阵为单位矩阵 | Matrix4x4 | ||
计算一个矩阵的逆矩阵
| Matrix4x4 | ||
[static]
计算两个矩阵的乘法
| Matrix4x4 | ||
normalize():void 归一化矩阵 | Matrix4x4 | ||
setElementByRowColumn(row:Number, column:Number, value:Number):void | Matrix4x4 | ||
setForward(forward:Vector3):void
设置前向量。
| Matrix4x4 | ||
setTranslationVector(translate:Vector3):void
设置平移向量。
| Matrix4x4 | ||
[static] | Matrix4x4 | ||
计算矩阵的转置矩阵 | Matrix4x4 |
elements | property |
public var elements:Float32Array
矩阵元素数组
Matrix4x4 | () | Constructor |
public function Matrix4x4(m11:Number = 1, m12:Number = 0, m13:Number = 0, m14:Number = 0, m21:Number = 0, m22:Number = 1, m23:Number = 0, m24:Number = 0, m31:Number = 0, m32:Number = 0, m33:Number = 1, m34:Number = 0, m41:Number = 0, m42:Number = 0, m43:Number = 0, m44:Number = 1)
创建一个 Matrix4x4
实例。
m11:Number (default = 1 )
| |
m12:Number (default = 0 )
| |
m13:Number (default = 0 )
| |
m14:Number (default = 0 )
| |
m21:Number (default = 0 )
| |
m22:Number (default = 1 )
| |
m23:Number (default = 0 )
| |
m24:Number (default = 0 )
| |
m31:Number (default = 0 )
| |
m32:Number (default = 0 )
| |
m33:Number (default = 1 )
| |
m34:Number (default = 0 )
| |
m41:Number (default = 0 )
| |
m42:Number (default = 0 )
| |
m43:Number (default = 0 )
| |
m44:Number (default = 1 )
|
clone | () | method |
public function clone():*
克隆。
Returns* — 克隆副本。
|
cloneTo | () | method |
public function cloneTo(destObject:*):void
克隆。
Parameters
destObject:* — 克隆源。
|
createAffineTransformation | () | method |
public static function createAffineTransformation(trans:Vector3, rot:Quaternion, scale:Vector3, out:Matrix4x4):void
计算仿射矩阵
Parameters
trans:Vector3 — 平移
| |
rot:Quaternion — 旋转
| |
scale:Vector3 — 缩放
| |
out:Matrix4x4 — 输出矩阵
|
createFromQuaternion | () | method |
public static function createFromQuaternion(rotation:Quaternion, out:Matrix4x4):void
从四元数计算旋转矩阵
Parameters
rotation:Quaternion — 四元数
| |
out:Matrix4x4 — 输出矩阵
|
createLookAt | () | method |
public static function createLookAt(eye:Vector3, target:Vector3, up:Vector3, out:Matrix4x4):void
计算观察矩阵
Parameters
eye:Vector3 — 视点位置
| |
target:Vector3 — 视点目标
| |
up:Vector3 — 向上向量
| |
out:Matrix4x4 — 输出矩阵
|
createOrthoOffCenterRH | () | method |
public static function createOrthoOffCenterRH(left:Number, right:Number, bottom:Number, top:Number, near:Number, far:Number, out:Matrix4x4):void
计算正交投影矩阵。
Parameters
left:Number — 视椎左边界。
| |
right:Number — 视椎右边界。
| |
bottom:Number — 视椎底边界。
| |
top:Number — 视椎顶边界。
| |
near:Number — 视椎近边界。
| |
far:Number — 视椎远边界。
| |
out:Matrix4x4 — 输出矩阵。
|
createPerspective | () | method |
public static function createPerspective(fov:Number, aspect:Number, near:Number, far:Number, out:Matrix4x4):void
计算透视投影矩阵。
Parameters
fov:Number — 视角。
| |
aspect:Number — 横纵比。
| |
near:Number — 近裁面。
| |
far:Number — 远裁面。
| |
out:Matrix4x4 — 输出矩阵。
|
createRotationAxis | () | method |
public static function createRotationAxis(axis:Vector3, angle:Number, result:Matrix4x4):void
通过旋转轴axis和旋转角度angle计算旋转矩阵。
Parameters
axis:Vector3 — 旋转轴,假定已经归一化。
| |
angle:Number — 旋转角度。
| |
result:Matrix4x4 — 结果矩阵。
|
createRotationQuaternion | () | method |
public static function createRotationQuaternion(rotation:Quaternion, result:Matrix4x4):void
通过四元数创建旋转矩阵。
Parameters
rotation:Quaternion — 旋转四元数。
| |
result:Matrix4x4 — 输出旋转矩阵
|
createRotationX | () | method |
public static function createRotationX(rad:Number, out:Matrix4x4):void
绕X轴旋转
Parameters
rad:Number — 旋转角度
| |
out:Matrix4x4 — 输出矩阵
|
createRotationY | () | method |
public static function createRotationY(rad:Number, out:Matrix4x4):void
绕Y轴旋转
Parameters
rad:Number — 旋转角度
| |
out:Matrix4x4 — 输出矩阵
|
createRotationYawPitchRoll | () | method |
public static function createRotationYawPitchRoll(yaw:Number, pitch:Number, roll:Number, result:Matrix4x4):void
通过yaw pitch roll旋转创建旋转矩阵。
Parameters
yaw:Number | |
pitch:Number | |
roll:Number | |
result:Matrix4x4 |
createRotationZ | () | method |
public static function createRotationZ(rad:Number, out:Matrix4x4):void
绕Z轴旋转
Parameters
rad:Number — 旋转角度
| |
out:Matrix4x4 — 输出矩阵
|
createScaling | () | method |
public static function createScaling(scale:Vector3, out:Matrix4x4):void
根据缩放计算输出矩阵
Parameters
scale:Vector3 — 缩放值
| |
out:Matrix4x4 — 输出矩阵
|
createTranslate | () | method |
public static function createTranslate(trans:Vector3, out:Matrix4x4):void
根据平移计算输出矩阵
Parameters
trans:Vector3 — 平移向量
| |
out:Matrix4x4 — 输出矩阵
|
decomposeTransRotMatScale | () | method |
public function decomposeTransRotMatScale(translation:Vector3, rotationMatrix:Matrix4x4, scale:Vector3):Boolean
分解矩阵为平移向量、旋转矩阵、缩放向量。
Parameters
translation:Vector3 — 平移向量。
| |
rotationMatrix:Matrix4x4 — 旋转矩阵。
| |
scale:Vector3 — 缩放向量。
|
Boolean — 是否分解成功。
|
decomposeTransRotScale | () | method |
public function decomposeTransRotScale(translation:Vector3, rotation:Quaternion, scale:Vector3):Boolean
分解矩阵为平移向量、旋转四元数、缩放向量。
Parameters
translation:Vector3 — 平移向量。
| |
rotation:Quaternion — 旋转四元数。
| |
scale:Vector3 — 缩放向量。
|
Boolean — 是否分解成功。
|
decomposeYawPitchRoll | () | method |
public function decomposeYawPitchRoll(yawPitchRoll:Vector3):void
分解旋转矩阵的旋转为YawPitchRoll欧拉角。
Parameters
yawPitchRoll:Vector3 — float yaw
|
equalsOtherMatrix | () | method |
public function equalsOtherMatrix(other:Matrix4x4):Boolean
判断两个4x4矩阵的值是否相等。
Parameters
other:Matrix4x4 — 4x4矩阵
|
Boolean |
getElementByRowColumn | () | method |
public function getElementByRowColumn(row:Number, column:Number):Number
Parameters
row:Number | |
column:Number |
Number |
getForward | () | method |
getTranslationVector | () | method |
identity | () | method |
public function identity():void
设置矩阵为单位矩阵
invert | () | method |
multiply | () | method |
public static function multiply(left:Matrix4x4, right:Matrix4x4, out:Matrix4x4):void
计算两个矩阵的乘法
Parameters
left:Matrix4x4 — left矩阵
| |
right:Matrix4x4 — right矩阵
| |
out:Matrix4x4 — 输出矩阵
|
normalize | () | method |
public function normalize():void
归一化矩阵
setElementByRowColumn | () | method |
public function setElementByRowColumn(row:Number, column:Number, value:Number):void
Parameters
row:Number | |
column:Number | |
value:Number |
setForward | () | method |
setTranslationVector | () | method |
public function setTranslationVector(translate:Vector3):void
设置平移向量。
Parameters
translate:Vector3 — 平移向量。
|
translation | () | method |
public static function translation(v3:Vector3, out:Matrix4x4):void
Parameters
v3:Vector3 | |
out:Matrix4x4 |
transpose | () | method |
DEFAULT | Constant |
public static const DEFAULT:Matrix4x4
默认矩阵,禁止修改