| 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):NumberParameters
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):voidParameters
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):voidParameters
v3:Vector3 | |
out:Matrix4x4 |
| transpose | () | method |
| DEFAULT | Constant |
public static const DEFAULT:Matrix4x4默认矩阵,禁止修改