|
AR_Engine_SDK
|
Functions | |
| function XEMath | InvSqrt (fNumber) end |
| function XEMath | FastAsin (Value) end |
| function XEMath | ClampAxis (radian) end |
| function XEMath | NormalizeAxis (radian) end |
| function XEMath | Xmod (X, Y) end |
| function XEMath | Atan2 (Y, X) end |
| function XEMath | AreaOfTriangle (v1, v2, v3) end |
| function XEMath | IsNegativeFloat (A) end |
| function XEMath | IsNaN (A) end |
| function XEMath | IsFinite (A) end |
| function XEMath | IsNearlyZero (Value, ErrorTolerance) end |
| function XEMath | SinCos (ScalarSin, ScalarCos, Value) end |
| function XEMath | QuaternionToEuler (quat, fPitch, fYaw, fRoll) end |
| function XEMath | QuaternionToEuler (quat) end |
| function XEMath | EulerToMatrix (fPitch, fYaw, fRoll, mat) end |
| function XEMath | EulerToMatrix (fPitch, fYaw, fRoll) end |
| function XEMath | EulerToQuaternion (fPitch, fYaw, fRoll, quat) end |
| function XEMath | EulerToQuaternion (fPitch, fYaw, fRoll) end |
| function XEMath | DirAndUpToQuaternion (vForwardDir, vUp, quat) end |
| function XEMath | DirAndUpToQuaternion (vForwardDir, vUp) end |
| function XEMath | QuaternionToDirAndUp (quat, vForwardDir, vUp) end |
| function XEMath | QuaternionToDirAndUp (quat) end |
| function XEMath | LocationDirAndUpToMatrix (vLocation, vForwardDir, vUp, mat4) end |
| function XEMath | LocationDirAndUpToMatrix (vLocation, vForwardDir, vUp) end |
| function XEMath | MatrixToLocationAndDirAndUp (mat4, vLocation, vForwardDir, vUp) end |
| function XEMath | MatrixToLocationAndDirAndUp (mat4) end |
| function XEMath | GetScaleFromMatrix (mat) end |
| function XEMath | GetQuaternionFromMatrix (mat) end |
| function XEMath | GetMatrixFromQuaternion (quat) end |
| function XEMath | EliminateScaleFromMatrix (mat) end |
| function XEMath | EliminateRotateFromMatrix (mat) end |
| function XEMath | EliminateTranslateFromMatrix (mat) end |
| function XEMath | GenerateTranslateMatrixForVector (vTranslate) end |
| function XEMath | GenerateScaleMatrixForVector (vScale) end |
| function XEMath | GenerateScaleMatrixForVector (vScale, vOriginPoint) end |
| function XEMath | RotateMatrixWorld (mat, quat) end |
| function XEMath | ScaleMatrixWorld (mat, vScale) end |
| function XEMath | RotateVector (quat, vec) end |
| function XEMath | UnrotateVector (quat, vec) end |
| function XEMath | Is2MatrixClosed (mat1, mat2, fEpsilon) end |
| function XEMath | GenerateOrthoProjMatrix (fLeft, fRight, fButtom, fTop, fNear, fFar) end |
| function XEMath | GenerateMostNearSizeWithRate (vOriginSize, fSizeRate, nStepSize) end |
| function XEMath | ComputerMin2nSubSquare (nSize) end |
| function XEMath | GenerateMatrix (vTranslate, quatRotate, vScale) end |
| function XEMath | MultMatrix (mat1, mat2) end |
| function XEMath | GetCameraClipSpaceTransformMatrix () end |
Variables | |
| XEMath = {} | |
| function XEMath AreaOfTriangle | ( | v1 | , |
| v2 | , | ||
| v3 | |||
| ) |
计算三角形面积.
| v1 | XVECTOR2 点坐标1 |
| v2 | XVECTOR2 点坐标2 |
| v3 | XVECTOR2 点坐标3 |
| function XEMath Atan2 | ( | Y | , |
| X | |||
| ) |
计算 y/x 反正切值.
| Y | number 输入值Y |
| X | number 输入值X |
| function XEMath ClampAxis | ( | radian | ) |
把一个角度规范化到[0,2*PI).
| radian | number 输入值 |
| function XEMath ComputerMin2nSubSquare | ( | nSize | ) |
计算下个2的幂值
| nSize | number 输入数值 |
| function XEMath DirAndUpToQuaternion | ( | vForwardDir | , |
| vUp | , | ||
| quat | |||
| ) |
前方向和上方向向量转四元数
| vForwardDir | XVECTOR3 前方向向量 |
| vUp | XVECTOR3 上方向向量 |
| quat | XQUATERNION 输出的四元数 |
| function XEMath DirAndUpToQuaternion | ( | vForwardDir | , |
| vUp | |||
| ) |
XEMath_DirAndUpToQuaternion01
| vForwardDir | XVECTOR3 |
| vUp | XVECTOR3 |
| function XEMath EliminateRotateFromMatrix | ( | mat | ) |
从矩阵中去除旋转信息
| mat | XMATRIX4 矩阵 |
| function XEMath EliminateScaleFromMatrix | ( | mat | ) |
从矩阵中去除缩放信息
| mat | XMATRIX4 矩阵 |
| function XEMath EliminateTranslateFromMatrix | ( | mat | ) |
从矩阵中去除位置信息
| mat | XMATRIX4 矩阵 |
| function XEMath EulerToMatrix | ( | fPitch | , |
| fYaw | , | ||
| fRoll | , | ||
| mat | |||
| ) |
欧拉角转矩阵
| fPitch | number 俯仰角 |
| fYaw | number 偏航角 |
| fRoll | number 翻滚角 |
| mat | XMATRIX4 输出的矩阵 |
| function XEMath EulerToMatrix | ( | fPitch | , |
| fYaw | , | ||
| fRoll | |||
| ) |
XEMath_EulerToMatrix01
| fPitch | number |
| fYaw | number |
| fRoll | number |
| function XEMath EulerToQuaternion | ( | fPitch | , |
| fYaw | , | ||
| fRoll | , | ||
| quat | |||
| ) |
欧拉角转四元数
| fPitch | number 俯仰角 |
| fYaw | number 偏航角 |
| fRoll | number 翻滚角 |
| quat | XQUATERNION 输出的四元数 |
| function XEMath EulerToQuaternion | ( | fPitch | , |
| fYaw | , | ||
| fRoll | |||
| ) |
XEMath_EulerToQuaternion01
| fPitch | number |
| fYaw | number |
| fRoll | number |
| function XEMath FastAsin | ( | Value | ) |
计算一个浮点数的反正弦.
| Value | number 输入值 |
| function XEMath GenerateMatrix | ( | vTranslate | , |
| quatRotate | , | ||
| vScale | |||
| ) |
根据平移、旋转、缩放得到矩阵
| vTranslate | XVECTOR3 代表平移信息的向量 |
| quatRotate | XQUATERNION 代表旋转信息的四元数 |
| vScale | XVECTOR3 代表缩放信息的向量 |
| function XEMath GenerateMostNearSizeWithRate | ( | vOriginSize | , |
| fSizeRate | , | ||
| nStepSize | |||
| ) |
产生宽高等比(fSizeRate)的最接近原始宽高(vOriginSize)的宽高
| vOriginSize | XVECTOR2 原始宽高 |
| fSizeRate | number 宽高比 |
| nStepSize | number 测试步进长度默认为1.f |
| function XEMath GenerateOrthoProjMatrix | ( | fLeft | , |
| fRight | , | ||
| fButtom | , | ||
| fTop | , | ||
| fNear | , | ||
| fFar | |||
| ) |
生成一个正交投影矩阵
| fLeft | number 左平面到原点距离 |
| fRight | number 右平面到原点距离 |
| fButtom | number 底平面到原点距离 |
| fTop | number 上平面到原点距离 |
| fNear | number 近平面到原点距离 |
| fFar | number 远平面到原点距离 |
| function XEMath GenerateScaleMatrixForVector | ( | vScale | ) |
根据缩放信息生成缩放矩阵
| vScale | XVECTOR3 缩放信息 |
| function XEMath GenerateScaleMatrixForVector | ( | vScale | , |
| vOriginPoint | |||
| ) |
XEMath_GenerateScaleMatrixForVector01
| vScale | XVECTOR3 |
| vOriginPoint | XVECTOR3 |
| function XEMath GenerateTranslateMatrixForVector | ( | vTranslate | ) |
根据平移信息生成平移矩阵
| vTranslate | XVECTOR3 平移信息 |
| function XEMath GetCameraClipSpaceTransformMatrix | ( | ) |
获取引擎在相机裁剪空间里的变换矩阵(如果按OpenGL顶点NDC坐标对顶点变换,则MVP矩阵需要乘以此矩阵)
| function XEMath GetMatrixFromQuaternion | ( | quat | ) |
四元数转矩阵
| quat | XQUATERNION 输入的四元数 |
| function XEMath GetQuaternionFromMatrix | ( | mat | ) |
从矩阵中获取四元数信息
| mat | XMATRIX4 输入的矩阵 |
| function XEMath GetScaleFromMatrix | ( | mat | ) |
从矩阵中获取缩放信息
| mat | XMATRIX4 输入的矩阵 |
| function XEMath InvSqrt | ( | fNumber | ) |
平方根倒数
| fNumber | number 输入数值 |
| function XEMath Is2MatrixClosed | ( | mat1 | , |
| mat2 | , | ||
| fEpsilon | |||
| ) |
判断两个矩阵是否相等
| mat1 | XMATRIX4 矩阵1 |
| mat2 | XMATRIX4 矩阵2 |
| fEpsilon | number 精度,默认1.e-6f |
| function XEMath IsFinite | ( | A | ) |
如果是一个有限数值返回true (not NaN and not Infinity).
| A | number |
| function XEMath IsNaN | ( | A | ) |
判定浮点型数据是否溢出
| A | number 浮点数 |
| function XEMath IsNearlyZero | ( | Value | , |
| ErrorTolerance | |||
| ) |
判断一个浮点数是否接近0.
| Value | number |
| ErrorTolerance | number |
| function XEMath IsNegativeFloat | ( | A | ) |
是否是负浮点数.
| A | number 判断的浮点数 |
| function XEMath LocationDirAndUpToMatrix | ( | vLocation | , |
| vForwardDir | , | ||
| vUp | , | ||
| mat4 | |||
| ) |
位置、前方向和上方向向量转矩阵
| vLocation | XVECTOR3 位置坐标 |
| vForwardDir | XVECTOR3 前方向向量 |
| vUp | XVECTOR3 上方向向量 |
| mat4 | XMATRIX4 输出的矩阵 |
| function XEMath LocationDirAndUpToMatrix | ( | vLocation | , |
| vForwardDir | , | ||
| vUp | |||
| ) |
XEMath_LocationDirAndUpToMatrix01
| vLocation | XVECTOR3 |
| vForwardDir | XVECTOR3 |
| vUp | XVECTOR3 |
| function XEMath MatrixToLocationAndDirAndUp | ( | mat4 | , |
| vLocation | , | ||
| vForwardDir | , | ||
| vUp | |||
| ) |
矩阵转位置、前方向和上方向向量
| mat4 | XMATRIX4 输入的矩阵 |
| vLocation | XVECTOR3 位置坐标 |
| vForwardDir | XVECTOR3 前方向向量 |
| vUp | XVECTOR3 上方向向量 |
| function XEMath MatrixToLocationAndDirAndUp | ( | mat4 | ) |
XEMath_MatrixToLocationAndDirAndUp01
| mat4 | XMATRIX4 |
| function XEMath MultMatrix | ( | mat1 | , |
| mat2 | |||
| ) |
矩阵相乘
| mat1 | XMATRIX4 矩阵1 |
| mat2 | XMATRIX4 矩阵2 |
| function XEMath NormalizeAxis | ( | radian | ) |
把一个角度规范化到(-PI,PI].
| radian | number 输入值 |
| function XEMath QuaternionToDirAndUp | ( | quat | , |
| vForwardDir | , | ||
| vUp | |||
| ) |
四元数转前方向和上方向向量
| quat | XQUATERNION 输入的四元数 |
| vForwardDir | XVECTOR3 前方向向量 |
| vUp | XVECTOR3 上方向向量 |
| function XEMath QuaternionToDirAndUp | ( | quat | ) |
XEMath_QuaternionToDirAndUp01
| quat | XQUATERNION |
| function XEMath QuaternionToEuler | ( | quat | , |
| fPitch | , | ||
| fYaw | , | ||
| fRoll | |||
| ) |
四元数转欧拉角
| quat | XQUATERNION 输入的四元数 |
| fPitch | number [out]俯仰角 |
| fYaw | number [out]偏航角 |
| fRoll | number [out]翻滚角 |
| function XEMath QuaternionToEuler | ( | quat | ) |
XEMath_QuaternionToEuler01
| quat | XQUATERNION |
| function XEMath RotateMatrixWorld | ( | mat | , |
| quat | |||
| ) |
旋转矩阵
| mat | XMATRIX4 矩阵 |
| quat | XQUATERNION 旋转四元数信息 |
| function XEMath RotateVector | ( | quat | , |
| vec | |||
| ) |
对Vec按四元数quat旋转
| quat | XQUATERNION 旋转四元数信息 |
| vec | XVECTOR3 输入的向量 |
| function XEMath ScaleMatrixWorld | ( | mat | , |
| vScale | |||
| ) |
缩放矩阵
| mat | XMATRIX4 矩阵 |
| vScale | XVECTOR3 缩放信息 |
| function XEMath SinCos | ( | ScalarSin | , |
| ScalarCos | , | ||
| Value | |||
| ) |
返回对Value的 sin值、cos值.
| ScalarSin | number [out]Value的sin值 |
| ScalarCos | number [out]Value的cos值 |
| Value | number 输入数据 |
| function XEMath UnrotateVector | ( | quat | , |
| vec | |||
| ) |
对vec按四元数quat的逆旋转
| quat | XQUATERNION 旋转四元数信息 |
| vec | XVECTOR3 输入的向量 |
| function XEMath Xmod | ( | X | , |
| Y | |||
| ) |
取模运算.
| X | number 输入值X |
| Y | number 输入值Y |
| XEMath = {} |
1.8.15