Classes | |
| struct | Complex< T > |
| Complex number template. More... | |
| struct | sDecomposedMatrix< T > |
| Decomposed matrix template. More... | |
| struct | FPUMode |
| Utility call to control the x87 FPU modes. More... | |
| struct | sRect< T > |
| Rect template class. More... | |
| struct | XMatrix< N, M, T > |
Typedefs | |
| typedef Complex< tF32 > | Complexf |
| tF32 complex number More... | |
| typedef Complex< tF64 > | Complexd |
| tF64 complex number More... | |
| typedef sDecomposedMatrix< tF32 > | sDecomposedMatrixf |
| Decomposed matrix tF32. More... | |
| typedef sDecomposedMatrix< tF64 > | sDecomposedMatrixd |
| Decomposed matrix tF64. More... | |
| typedef sRect< tI32 > | sRecti |
| Int Rect. More... | |
| typedef sRect< tF32 > | sRectf |
| Float Rect. More... | |
| typedef astl::vector< sVec2f > | tVec2fVec |
| typedef tVec2fVec::iterator | tVec2fVecIt |
| typedef tVec2fVec::const_iterator | tVec2fVecCIt |
| typedef astl::vector< sVec2i > | tVec2iVec |
| typedef tVec2iVec::iterator | tVec2iVecIt |
| typedef tVec2iVec::const_iterator | tVec2iVecCIt |
| typedef astl::vector< sVec3f > | tVec3fVec |
| typedef tVec3fVec::iterator | tVec3fVecIt |
| typedef tVec3fVec::const_iterator | tVec3fVecCIt |
| typedef astl::vector< sVec4f > | tVec4fVec |
| typedef tVec4fVec::iterator | tVec4fVecIt |
| typedef tVec4fVec::const_iterator | tVec4fVecCIt |
| typedef astl::vector< sPlanef > | tPlanefVec |
| typedef tPlanefVec::iterator | tPlanefVecIt |
| typedef tPlanefVec::const_iterator | tPlanefVecCIt |
| typedef astl::vector< sMatrixf > | tMatrixfVec |
| sMatrixf vector. More... | |
| typedef tMatrixfVec::iterator | tMatrixfVecIt |
| sMatrixf vector iterator. More... | |
| typedef tMatrixfVec::const_iterator | tMatrixfVecCIt |
| sMatrixf vector constant iterator. More... | |
| typedef tMatrixfVec::reverse_iterator | tMatrixfVecRIt |
| sMatrixf vector reverse iterator. More... | |
| typedef tMatrixfVec::const_reverse_iterator | tMatrixfVecCRIt |
| sMatrixf vector constant reverse iterator. More... | |
| typedef sMatrix< tF64 > | sMatrixd |
| tF64 matrix. More... | |
| typedef astl::vector< sMatrixd > | tMatrixdVec |
| sMatrixd vector. More... | |
| typedef tMatrixdVec::iterator | tMatrixdVecIt |
| sMatrixd vector iterator. More... | |
| typedef tMatrixdVec::const_iterator | tMatrixdVecCIt |
| sMatrixd vector constant iterator. More... | |
| typedef tMatrixdVec::reverse_iterator | tMatrixdVecRIt |
| sMatrixd vector reverse iterator. More... | |
| typedef tMatrixdVec::const_reverse_iterator | tMatrixdVecCRIt |
| sMatrixd vector constant reverse iterator. More... | |
| typedef XMatrix< 2, 2, tI32 > | XMatrix22l |
| typedef XMatrix< 2, 3, tI32 > | XMatrix23l |
| typedef XMatrix< 3, 3, tI32 > | XMatrix33l |
| typedef XMatrix< 4, 4, tI32 > | XMatrix44l |
| typedef XMatrix< 2, 1, tI32 > | XVec2l |
| typedef XMatrix< 3, 1, tI32 > | XVec3l |
| typedef XMatrix< 4, 1, tI32 > | XVec4l |
| typedef XMatrix< 2, 2, tF32 > | XMatrix22f |
| typedef XMatrix< 2, 3, tF32 > | XMatrix23f |
| typedef XMatrix< 3, 3, tF32 > | XMatrix33f |
| typedef XMatrix< 4, 4, tF32 > | XMatrix44f |
| typedef XMatrix< 2, 1, tF32 > | XVec2f |
| typedef XMatrix< 3, 1, tF32 > | XVec3f |
| typedef XMatrix< 4, 1, tF32 > | XVec4f |
| typedef XMatrix< 2, 2, tF64 > | XMatrix22d |
| typedef XMatrix< 2, 3, tF64 > | XMatrix23d |
| typedef XMatrix< 3, 3, tF64 > | XMatrix33d |
| typedef XMatrix< 4, 4, tF64 > | XMatrix44d |
| typedef XMatrix< 2, 1, tF64 > | XVec2d |
| typedef XMatrix< 3, 1, tF64 > | XVec3d |
| typedef XMatrix< 4, 1, tF64 > | XVec4d |
Enumerations | |
| enum | eFPUPrecision { eFPUPrecision_24, eFPUPrecision_53, eFPUPrecision_64, eFPUPrecision_Mask, eFPUPrecision_Lowest, eFPUPrecision_Highest, eFPUPrecision_ForceDWORD } |
| FPU precision. More... | |
| enum | eFPURounding { eFPURounding_Near, eFPURounding_Down, eFPURounding_Up, eFPURounding_Truncate, eFPURounding_Mask, eFPURounding_ForceDWORD } |
| FPU rounding. More... | |
Functions | |
| template<typename T > | |
| Complex< T > | cx (T re, T im=T(0)) |
| template<typename T > | |
| Complex< T > | cx (const ni::sVec2< T > &c) |
| template<typename T > | |
| Complex< T > | re (T v) |
| template<typename T > | |
| Complex< T > | im (T v) |
| template<typename T > | |
| T | re (const Complex< T > &v) |
| template<typename T > | |
| T | im (const Complex< T > &v) |
| template<> | |
| Complex< tF32 > | Num< Complex< tF32 > > (const tF64 a) |
| template<> | |
| Complex< tF64 > | Num< Complex< tF64 > > (const tF64 a) |
| template<typename T > | |
| bool | operator== (T v, const Complex< T > &c) |
| template<typename T > | |
| bool | operator!= (T v, const Complex< T > &c) |
| template<typename T > | |
| Complex< T > | Polar (T rho, T phi) |
| template<typename T > | |
| Complex< T > | Conjugate (const Complex< T > &c) |
| template<typename T > | |
| T | Modulus (const Complex< T > &c) |
| template<typename T > | |
| T | ModulusSq (const Complex< T > &c) |
| template<typename T > | |
| T | Argument (const Complex< T > &c) |
| template<typename T > | |
| Complex< T > | Sqrt (const Complex< T > &c) |
| template<typename T > | |
| Complex< T > | Exp (const Complex< T > &c) |
| template<typename T > | |
| Complex< T > | Log10 (const Complex< T > &c) |
| template<typename T > | |
| Complex< T > | LogE (const Complex< T > &c) |
| template<typename T > | |
| Complex< T > | Pow (const Complex< T > &c, const Complex< T > &b) |
| template<typename T > | |
| Complex< T > | Sin (const Complex< T > &c) |
| template<typename T > | |
| Complex< T > | Cos (const Complex< T > &c) |
| template<typename T > | |
| Complex< T > | Tan (const Complex< T > &c) |
| Complexf | ref (tF32 v) |
| Complexf | imf (tF32 v) |
| template<typename T > | |
| T | ClampT (T aX, T aMin, T aMax) |
| template<typename T > | |
| T | RepeatT (T aX, T aMin, T aMax) |
| template<typename T > | |
| T | MirrorT (T aX, T aMin, T aMax) |
| template<typename T > | |
| T | CycleT (T aX, T aMin, T aMax) |
| template<typename T , typename S > | |
| T | CurveStep (const T &a, const T &b, const S t) |
| template<class T , class S > | |
| T | CurveLinear (const T &V1, const T &V2, S s) |
| template<typename T , typename S > | |
| T | CurveCos (const T &a, const T &b, const S t) |
| template<class T , class S > | |
| T | CurveHermite (const T &V1, const T &T1, const T &V2, const T &T2, S s) |
| template<class T , class S > | |
| T | CurveCatmullRom (const T &V1, const T &V2, const T &V3, const T &V4, S s) |
| template<class T , class S > | |
| T | CurveCardinal (const T &V1, const T &V2, const T &V3, const T &V4, S s, S a) |
| template<class T , class S > | |
| T | CurveCardinal (const T &V1, const T &V2, S s, S a) |
| template<typename T > | |
| T | CycleLinear (T aX, T aMin, T aMax) |
| template<typename T > | |
| T | CycleCos (T aX, T aMin, T aMax) |
| template<typename T > | |
| T | CycleCardinal (T aX, T aMin, T aMax, const T a) |
| template<typename T > | |
| sDecomposedMatrix< T > & | DecomposedMatrixFromMatrix (sDecomposedMatrix< T > &Out, const sMatrix< T > &In) |
| template<typename T > | |
| sMatrix< T > & | DecomposedMatrixToMatrix (sMatrix< T > &Out, const sDecomposedMatrix< T > &In) |
| template<typename T > | |
| sDecomposedMatrix< T > & | DecomposedMatrixLerp (sDecomposedMatrix< T > &Out, const sDecomposedMatrix< T > &A, const sDecomposedMatrix< T > &B, T fac, eQuatSlerp aSlerp=eQuatSlerp_Short) |
| template<typename T > | |
| sDecomposedMatrix< T > & | DecomposedMatrixMultiply (sDecomposedMatrix< T > &Out, const sDecomposedMatrix< T > &A, const sDecomposedMatrix< T > &B) |
| template<class T > | |
| void | MathUtilMatrixFromQuat (T &r11, T &r12, T &r13, T &r21, T &r22, T &r23, T &r31, T &r32, T &r33, const sQuat< T > &q) |
| template<class T > | |
| void | MathUtilPostTranslate (sMatrix< T > &m, const T tx, const T ty, const T tz) |
| template<class T > | |
| void | MathUtilPostRotateQuat (sMatrix< T > &m, const sQuat< T > &q) |
| template<class T > | |
| void | MathUtilPostRotateQuatInverse (sMatrix< T > &m, const sQuat< T > &q) |
| template<class T > | |
| void | MathUtilPostScale (sMatrix< T > &m, const T sx, const T sy, const T sz) |
| template<typename T > | |
| sMatrix< T > & | MatrixAffineTransformation (sMatrix< T > &Out, T scaling, const sVec3< T > *pRotationCenter=NULL, const sQuat< T > *pRotation=NULL, const sVec3< T > *pTranslation=NULL) |
| template<typename T > | |
| T | MatrixDeterminant2 (const sMatrix< T > &M) |
| template<typename T > | |
| T | MatrixDeterminant3 (const sMatrix< T > &M) |
| template<typename T > | |
| T | MatrixDeterminant (const sMatrix< T > &M) |
| template<typename T > | |
| T | MatrixGetHandeness (const sMatrix< T > &M) |
| template<typename T > | |
| sMatrix< T > & | MatrixIdentity (sMatrix< T > &Out) |
| template<typename T > | |
| sMatrix< T > & | MatrixInverse (sMatrix< T > &aOut, const sMatrix< T > &aIn, T *apDet=NULL) |
| template<typename T > | |
| sMatrix< T > & | MatrixTransformInverse (sMatrix< T > &Out, const sMatrix< T > &M) |
| template<typename T > | |
| tBool | MatrixIsIdentity (const sMatrix< T > &M) |
| template<typename T > | |
| sMatrix< T > & | MatrixLookAtRH (sMatrix< T > &Out, const sVec3< T > &Eye, const sVec3< T > &At, const sVec3< T > &Up) |
| template<typename T > | |
| sMatrix< T > & | MatrixLookAtLH (sMatrix< T > &Out, const sVec3< T > &Eye, const sVec3< T > &At, const sVec3< T > &Up) |
| template<typename T > | |
| sMatrix< T > & | MatrixMultiply (sMatrix< T > &Out, const sMatrix< T > &M1, const sMatrix< T > &M2) |
| template<typename T > | |
| sMatrix< T > * | MatrixMultiply (sMatrix< T > *Out, const sMatrix< T > *M1, const sMatrix< T > *M2) |
| template<typename T > | |
| sMatrix< T > & | MatrixOrthoRH (sMatrix< T > &Out, T w, T h, T zn, T zf) |
| template<typename T > | |
| sMatrix< T > & | MatrixOrthoLH (sMatrix< T > &Out, T w, T h, T zn, T zf) |
| template<typename T > | |
| sMatrix< T > & | MatrixOrthoOffCenterRH (sMatrix< T > &Out, T l, T r, T t, T b, T zn, T zf) |
| template<typename T > | |
| sMatrix< T > & | MatrixOrthoOffCenterLH (sMatrix< T > &Out, T l, T r, T t, T b, T zn, T zf) |
| template<typename T > | |
| sMatrix< T > & | MatrixPerspectiveRH (sMatrix< T > &Out, T w, T h, T zn, T zf) |
| template<typename T > | |
| sMatrix< T > & | MatrixPerspectiveLH (sMatrix< T > &Out, T w, T h, T zn, T zf) |
| template<typename T > | |
| sMatrix< T > & | MatrixPerspectiveFovRH (sMatrix< T > &Out, T fovy, T aspect, T zn, T zf) |
| template<typename T > | |
| sMatrix< T > & | MatrixPerspectiveFovLH (sMatrix< T > &Out, T fovy, T aspect, T zn, T zf) |
| template<typename T > | |
| sMatrix< T > & | MatrixPerspectiveOffCenterRH (sMatrix< T > &Out, T l, T r, T t, T b, T zn, T zf) |
| template<typename T > | |
| sMatrix< T > & | MatrixPerspectiveOffCenterLH (sMatrix< T > &Out, T l, T r, T t, T b, T zn, T zf) |
| template<typename T > | |
| sMatrix< T > & | MatrixReflect (sMatrix< T > &Out, const sVec4< T > &Plane) |
| template<typename T > | |
| ni::sMatrix< T > & | MatrixRotationAxis (ni::sMatrix< T > &Out, const ni::sVec3< T > &V, T angle) |
| template<typename T > | |
| sMatrix< T > & | MatrixRotationQuat (sMatrix< T > &Out, const sQuat< T > &Q) |
| template<typename T > | |
| sMatrix< T > & | MatrixRotationX (sMatrix< T > &Out, T angle) |
| template<typename T > | |
| sMatrix< T > & | MatrixRotationY (sMatrix< T > &Out, T angle) |
| template<typename T > | |
| sMatrix< T > & | MatrixRotationZ (sMatrix< T > &Out, T angle) |
| template<typename T > | |
| sMatrix< T > & | MatrixRotationYawPitchRoll (sMatrix< T > &Out, T yaw, T pitch, T roll) |
| template<typename T > | |
| sVec3< T > | MatrixDecomposeYawPitchRoll (const sMatrix< T > &mat) |
| template<typename T > | |
| sMatrix< T > & | MatrixScaling (sMatrix< T > &Out, T sx, T sy, T sz) |
| template<typename T > | |
| sMatrix< T > & | MatrixScaling (sMatrix< T > &Out, const sVec3< T > &V) |
| template<typename T > | |
| sMatrix< T > & | MatrixScale (sMatrix< T > &Out, const sMatrix< T > &M, const T x, const T y, const T z) |
| template<typename T > | |
| sMatrix< T > & | MatrixScale (sMatrix< T > &Out, const sMatrix< T > &M, const sVec3< T > &V) |
| template<typename T > | |
| sMatrix< T > & | MatrixScale (sMatrix< T > &Out, const sMatrix< T > &M, const T s) |
| template<typename T > | |
| sMatrix< T > & | MatrixShadow (sMatrix< T > &Out, const sVec4< T > &vLight, const sVec4< T > &Plane) |
| template<typename T > | |
| sMatrix< T > & | MatrixTransformation (sMatrix< T > &Out, const sVec3< T > *pScalingCenter, const sQuat< T > *pScalingRotation, const sVec3< T > *pScaling, const sVec3< T > *pRotationCenter, const sQuat< T > *pRotation, const sVec3< T > *pTranslation) |
| template<typename T > | |
| sMatrix< T > & | MatrixTranslation (sMatrix< T > &Out, T x, T y, T z) |
| template<typename T > | |
| sMatrix< T > & | MatrixTranslation (sMatrix< T > &Out, const sVec3< T > &V) |
| template<typename T > | |
| sMatrix< T > & | MatrixTranspose (sMatrix< T > &Out, const sMatrix< T > &M) |
| template<typename T > | |
| sMatrix< T > & | MatrixTranspose3x3 (sMatrix< T > &Out, const sMatrix< T > &M) |
| template<typename T > | |
| sMatrix< T > & | MatrixTextureOffset2 (sMatrix< T > &Out, T fBias, tI32 nTexW, tI32 nTexH, tI32 nDepthBits) |
| template<typename T > | |
| sMatrix< T > & | MatrixTextureOffset (sMatrix< T > &Out, T fBias, tI32 nTexW, tI32 nTexH) |
| template<typename T > | |
| sMatrix< T > & | MatrixLerp (sMatrix< T > &Out, const sMatrix< T > &A, const sMatrix< T > &B, T fFac) |
| template<typename T > | |
| sVec3< T > & | MatrixGetForward (sVec3< T > &Out, const sMatrix< T > &M) |
| template<typename T > | |
| sVec3< T > & | MatrixGetUp (sVec3< T > &Out, const sMatrix< T > &M) |
| template<typename T > | |
| sVec3< T > & | MatrixGetRight (sVec3< T > &Out, const sMatrix< T > &M) |
| template<typename T > | |
| sVec3< T > & | MatrixGetTranslation (sVec3< T > &Out, const sMatrix< T > &M) |
| template<typename T > | |
| sMatrix< T > & | MatrixSetForward (sMatrix< T > &Out, const sVec3< T > &V) |
| template<typename T > | |
| sMatrix< T > & | MatrixSetUp (sMatrix< T > &Out, const sVec3< T > &V) |
| template<typename T > | |
| sMatrix< T > & | MatrixSetRight (sMatrix< T > &Out, const sVec3< T > &V) |
| template<typename T > | |
| sMatrix< T > & | MatrixSetTranslation (sMatrix< T > &Out, const sVec3< T > &V) |
| template<typename T > | |
| tBool | MatrixIsNormal (const sMatrix< T > &M, T epsilon=niEpsilon5) |
| template<typename T > | |
| tBool | MatrixIsOrthogonal (const sMatrix< T > &M, T epsilon=niEpsilon5) |
| template<typename T > | |
| tBool | MatrixIsOrthoNormal (const sMatrix< T > &M, T epsilon=niEpsilon5) |
| template<typename T > | |
| sMatrix< T > & | MatrixSetRotation (sMatrix< T > &Out, const sMatrix< T > &M) |
| template<typename T > | |
| sVec3< T > & | MatrixToEuler (const sMatrix< T > &M, sVec3< T > &euler) |
| template<typename T > | |
| sMatrix< T > & | MatrixToCoordinateSystem (sMatrix< T > &Out, const sVec3< T > &avRight, const sVec3< T > &avUp, const sVec3< T > &avFwd, const sVec3< T > &avOrg=sVec3< T >::Zero()) |
| template<typename T > | |
| sMatrix< T > * | MatrixOrthogonalize (sMatrix< T > &Out, const sMatrix< T > &In, const T epsilon=(T) niEpsilon5) |
| template<typename T > | |
| sMatrix< T > & | MatrixNormalize (sMatrix< T > &Out, const sMatrix< T > &In) |
| template<typename T > | |
| sMatrix< T > & | MatrixSetScale (sMatrix< T > &Out, const sMatrix< T > &In, const sVec3f &avScale) |
| template<typename T > | |
| sVec3< T > & | MatrixGetProjectedTranslation (sVec3< T > &Out, const sMatrix< T > &M, T *pDeterminant=NULL) |
| template<typename T > | |
| sMatrix< T > & | MatrixSetProjectedTranslation (sMatrix< T > &Out, const sVec3< T > &avT) |
| template<typename T > | |
| sMatrix< T > & | MatrixSetNotRotation (sMatrix< T > &Out, const sMatrix< T > &M) |
| template<typename T > | |
| sMatrix< T > & | MatrixRotate (sMatrix< T > &Out, const sMatrix< T > &M1, const sMatrix< T > &M2) |
| template<typename T > | |
| sMatrix< T > | MatrixRotationPivot (sMatrix< T > &aOut, const sMatrix< T > &aM2, const sVec3< T > &avPivot) |
| template<typename T > | |
| sMatrix< T > | MatrixRotationPivotAndScale (sMatrix< T > &aOut, const sMatrix< T > &aM2, const sVec3< T > &avPivot, const sVec3< T > &avScale) |
| template<typename T > | |
| sMatrix< T > & | MatrixScalingH (sMatrix< T > &Out, T sx, T sy, T sz, T sh) |
| template<typename T > | |
| sMatrix< T > & | MatrixScalingH (sMatrix< T > &Out, const sVec4< T > &aR) |
| template<typename T > | |
| sMatrix< T > & | MatrixRotationXYZ (sMatrix< T > &Out, T x, T y, T z) |
| template<typename T > | |
| sMatrix< T > & | MatrixRotationXYZ (sMatrix< T > &Out, const sVec3< T > &aR) |
| template<typename T > | |
| sMatrix< T > & | MatrixRotationZYX (sMatrix< T > &Out, T x, T y, T z) |
| template<typename T > | |
| sMatrix< T > & | MatrixRotationZYX (sMatrix< T > &Out, const sVec3< T > &aR) |
| template<typename T > | |
| sVec3< T > & | MatrixGetLocalScale (sVec3< T > &aS, const sMatrix< T > &In) |
| template<typename T > | |
| sVec3< T > & | MatrixGetLocalScaleSq (sVec3< T > &aS, const sMatrix< T > &In) |
| template<typename T > | |
| void | MatrixDecompose (const sMatrix< T > &In, sVec3< T > &aT, sVec3< T > &aR, sVec4< T > &aS, const T aEps=(T) niEpsilon4) |
| template<typename T > | |
| void | MatrixDecomposeQ (const sMatrix< T > &In, sVec3< T > &aT, sQuat< T > &aR, sVec4< T > &aS, const T aEps=(T) niEpsilon5) |
| template<typename T > | |
| sMatrix< T > & | MatrixCompose (sMatrix< T > &Out, const sVec3< T > &aT, const sVec3< T > &aR, const sVec4< T > &aS) |
| template<typename T > | |
| sMatrix< T > & | MatrixComposeQ (sMatrix< T > &Out, const sVec3< T > &aT, const sQuat< T > &aR, const sVec4< T > &aS) |
| template<typename T > | |
| sMatrix< T > & | MatrixViewport (sMatrix< T > &Out, const sVec4< T > &aVP, const T aMinZ, const T aMaxZ) |
| template<typename T > | |
| const sMatrix< T > & | MatrixAdjustViewport (sMatrix< T > &Out, const sVec4< T > &aContextVP, const sVec4< T > &aVirtualVP, const T afMinZ, const T afMaxZ) |
| template<typename T > | |
| T | MatrixGetFovV (const sMatrix< T > &aMtx) |
| template<typename T > | |
| sVec3< T > & | MatrixDecomposeGetZYX (sVec3< T > &aR, const sMatrix< T > &In, const T aEps=(T) niEpsilon4) |
| template<typename T > | |
| sQuat< T > & | MatrixDecomposeGetQ (sQuat< T > &aR, const sMatrix< T > &In, const T aEps=(T) niEpsilon4) |
| template<typename T > | |
| sVec4< T > & | MatrixDecomposeGetScale (sVec4< T > &aS, const sMatrix< T > &In, const T aEps=(T) niEpsilon4) |
| template<typename T > | |
| sVec3< T > & | MatrixDecomposeGetTranslation (sVec3< T > &aT, const sMatrix< T > &In) |
| template<typename T > | |
| sMatrix< T > | MatrixFlipProjectionY (const sMatrix< T > &aMatrix) |
| template<typename T > | |
| sMatrix< T > | MatrixProjection2D (const T afOrthoProjectionOffset, const sRect< T > &aRect, const T afVerticalFov, const sVec2< T > &aCameraPos=sVec2< T >::Zero()) |
| Compute a projection matrix to do pixel perfect 2d rendering. More... | |
| template<class T > | |
| T | PlaneDot (const sVec4< T > &P, const sVec4< T > &V) |
| template<class T > | |
| T | PlaneDotCoord (const sVec4< T > &P, const sVec3< T > &V) |
| template<class T > | |
| T | PlaneDistance (const sVec4< T > &P, const sVec3< T > &V) |
| template<class T > | |
| T | PlaneDotNormal (const sVec4< T > &P, const sVec3< T > &V) |
| template<class T > | |
| sVec4< T > & | PlaneFromPointNormal (sVec4< T > &Out, const sVec3< T > &vPoint, const sVec3< T > &vNormal) |
| template<class T > | |
| sVec4< T > & | PlaneFromPoints (sVec4< T > &Out, const sVec3< T > &V1, const sVec3< T > &V2, const sVec3< T > &V3) |
| template<class T > | |
| sVec3< T > * | PlaneIntersectLine (const sVec4< T > &P, const sVec3< T > &V1, const sVec3< T > &V2, sVec3< T > *pOut=NULL, T *percent=NULL) |
| template<typename T > | |
| sVec3< T > * | PlaneIntersectRay (const sVec4< T > &P, const sVec3< T > &avRayPos, const sVec3< T > &avRayDir, sVec3< T > *pOut=NULL, T *dist=NULL) |
| template<class T > | |
| sVec4< T > * | PlaneNormalize (sVec4< T > &Out, const sVec4< T > &P) |
| template<class T > | |
| sVec4< T > * | PlaneNormalize (sVec4< T > &Out) |
| template<class T > | |
| sVec4< T > & | PlaneTransform (sVec4< T > &Out, const sVec4< T > &P, const sMatrix< T > &M) |
| template<class T > | |
| sVec4< T > & | PlaneTransformInversedMatrix (sVec4< T > &Out, const sVec4< T > &P, const sMatrix< T > &M) |
| template<class T > | |
| sVec3< T > * | PlaneIntersection (sVec3< T > &Out, const sVec4< T > &PA, const sVec4< T > &PB, const sVec4< T > &PC) |
| template<class T > | |
| sVec3< T > & | PlaneClosest (sVec3< T > &Out, const sVec4< T > &P, const sVec3< T > &A) |
| template<class T > | |
| ePlaneType | PlaneType (const sVec4< T > &Plane) |
| template<class T > | |
| ePlaneType | PlaneMaxType (const sVec4< T > &Plane) |
| template<class T > | |
| sMatrix< T > & | PlaneExtractCoordinateSystem (sMatrix< T > &Out, const sVec4< T > &Plane, tBool abTranspose, const sVec3< T > *apFwdDir, const sVec3< T > *apOrigin) |
| The output matrix will contain the coordinate system that corespond to the plane. Up vector is the plane normal. Right and Fwd lies on the plane. If not NULL apFwdDir is the direction toward which the forward vector should be the closest. By example if you want the forward vector to be the one that points down you'd pass sVec3f::OpYAxis() here. More... | |
| template<class T > | |
| tBool | PlaneIntersectSphere (const sVec4< T > &plane, const sVec3< T > &pos, T radius) |
| template<class T > | |
| sQuat< T > & | QuatBaryCentric (sQuat< T > &Out, const sQuat< T > &Q1, const sQuat< T > &Q2, const sQuat< T > &Q3, T f, T g) |
| template<class T > | |
| sQuat< T > & | QuatConjugate (sQuat< T > &Out, const sQuat< T > &Q) |
| template<class T > | |
| T | QuatDot (const sQuat< T > &Q1, const sQuat< T > &Q2) |
| template<class T > | |
| sQuat< T > & | QuatExp (sQuat< T > &Out, const sQuat< T > &Q) |
| template<class T > | |
| sQuat< T > & | QuatIdentity (sQuat< T > &Out) |
| template<class T > | |
| sQuat< T > & | QuatInverse (sQuat< T > &Out, const sQuat< T > &Q) |
| template<class T > | |
| tBool | QuatIsIdentity (const sQuat< T > &Q) |
| template<class T > | |
| T | QuatLength (const sQuat< T > &Q) |
| template<class T > | |
| T | QuatLengthSq (const sQuat< T > &Q) |
| template<class T > | |
| sQuat< T > & | QuatLn (sQuat< T > &Out, const sQuat< T > &Q) |
| template<class T > | |
| sQuat< T > & | QuatMultiply (sQuat< T > &Out, const sQuat< T > &Q1, const sQuat< T > &Q2) |
| template<class T > | |
| sQuat< T > & | QuatNormalize (sQuat< T > &Out, const sQuat< T > &Q) |
| template<class T > | |
| sQuat< T > & | QuatNormalize (sQuat< T > &Out) |
| template<class T > | |
| sQuat< T > & | QuatRotationAxis (sQuat< T > &Out, const sVec3< T > &V, T angle) |
| template<class T > | |
| sQuat< T > & | QuatRotateX (sQuat< T > &Out, const sQuat< T > &Src, T angle) |
| template<class T > | |
| sQuat< T > & | QuatRotateY (sQuat< T > &Out, const sQuat< T > &Src, T angle) |
| template<class T > | |
| sQuat< T > & | QuatRotateZ (sQuat< T > &Out, const sQuat< T > &Src, T angle) |
| template<class T > | |
| sQuat< T > & | QuatRotationX (sQuat< T > &Out, T angle) |
| template<class T > | |
| sQuat< T > & | QuatRotationY (sQuat< T > &Out, T angle) |
| template<class T > | |
| sQuat< T > & | QuatRotationZ (sQuat< T > &Out, T angle) |
| template<class T > | |
| sQuat< T > & | QuatRotationMatrix (sQuat< T > &Out, const sMatrix< T > &M) |
| template<class T > | |
| sQuat< T > & | QuatRotationYawPitchRoll (sQuat< T > &Out, const T yaw, const T pitch, const T roll) |
| template<class T > | |
| sQuat< T > & | QuatRotationVector (sQuat< T > &Out, const sVec3< T > &vFrom, const sVec3< T > &vTo) |
| template<class T > | |
| sQuat< T > & | QuatSlerp (sQuat< T > &Out, const sQuat< T > &Q1, const sQuat< T > &Q2, T t, eQuatSlerp mode=eQuatSlerp_Short) |
| template<class T > | |
| sQuat< T > & | QuatSquad (sQuat< T > &Out, const sQuat< T > &Q1, const sQuat< T > &Q2, const sQuat< T > &Q3, const sQuat< T > &Q4, T t) |
| template<class T > | |
| sVec3< T > & | QuatGetAxis (sVec3< T > &vAxis, const sQuat< T > &Q) |
| template<class T > | |
| T | QuatGetAngle (const sQuat< T > &Q) |
| template<class T > | |
| void | QuatToAxisAngle (const sQuat< T > &Q, sVec3< T > &vAxis, T &Angle) |
| template<class T > | |
| sVec3< T > & | QuatToEuler (const sQuat< T > &Q, sVec3< T > &euler) |
| template<typename T > | |
| sQuat< T > & | QuatRandom (sQuat< T > &aQ) |
| template<class T > | |
| sQuat< T > & | QuatRotationZYX (sQuat< T > &Out, T rx, T ry, T rz) |
| template<class T > | |
| sQuat< T > & | QuatRotationZYX (sQuat< T > &Out, const sVec3< T > &V) |
| template<class T > | |
| sQuat< T > & | QuatRotationXYZ (sQuat< T > &Out, T rx, T ry, T rz) |
| template<class T > | |
| sQuat< T > & | QuatRotationXYZ (sQuat< T > &Out, const sVec3< T > &V) |
| template<typename T > | |
| sVec2< T > & | VecClamp (sVec2< T > &Out, const sVec2< T > &V, const sVec2< T > &aMin=sVec2< T >::Zero(), const sVec2< T > &aMax=sVec2< T >::One()) |
| template<class T > | |
| sVec2< T > & | VecAdd (sVec2< T > &Out, const sVec2< T > &V1, const sVec2< T > &V2) |
| template<class T > | |
| sVec2< T > & | VecMul (sVec2< T > &Out, const sVec2< T > &V1, const sVec2< T > &V2) |
| template<class T > | |
| sVec2< T > & | VecDiv (sVec2< T > &Out, const sVec2< T > &V1, const sVec2< T > &V2) |
| template<class T > | |
| sVec2< T > & | VecMAD (sVec2< T > &Out, const sVec2< T > &A, const sVec2< T > &B, const sVec2< T > &C) |
| template<class T > | |
| sVec2< T > & | VecMAD (sVec2< T > &Out, const sVec2< T > &A, T scale, const sVec2< T > &B) |
| template<class T > | |
| sVec2< T > & | VecMAD (sVec2< T > &Out, const sVec2< T > &A, T scale, T add) |
| template<class T > | |
| sVec2< T > & | VecSub (sVec2< T > &Out, const sVec2< T > &V1, const sVec2< T > &V2) |
| template<class T > | |
| sVec2< T > & | VecBaryCentric (sVec2< T > &Out, const sVec2< T > &V1, const sVec2< T > &V2, const sVec2< T > &V3, T f, T g) |
| template<class T > | |
| sVec2< T > & | VecCatmullRom (sVec2< T > &Out, const sVec2< T > &V1, const sVec2< T > &V2, const sVec2< T > &V3, const sVec2< T > &V4, T s) |
| template<class T > | |
| T | VecCCW (const sVec2< T > &V1, const sVec2< T > &V2) |
| template<class T > | |
| T | VecDot (const sVec2< T > &V1, const sVec2< T > &V2) |
| template<class T > | |
| T | VecDot (const sVec2< T > *V1, const sVec2< T > *V2) |
| template<class T > | |
| sVec2< T > & | VecHermite (sVec2< T > &Out, const sVec2< T > &V1, const sVec2< T > &T1, const sVec2< T > &V2, const sVec2< T > &T2, T s) |
| template<class T > | |
| T | VecLength (const sVec2< T > &V) |
| template<class T > | |
| T | VecDistance (const sVec2< T > &A, const sVec2< T > &B) |
| template<class T > | |
| sVec2< T > & | VecSetLength (sVec2< T > &Out, const sVec2< T > &V, T l) |
| template<class T > | |
| T | VecLengthSq (const sVec2< T > &V) |
| template<class T > | |
| sVec2< T > & | VecMaximize (sVec2< T > &Out, const sVec2< T > &V1, const sVec2< T > &V2) |
| template<class T > | |
| sVec2< T > & | VecMinimize (sVec2< T > &Out, const sVec2< T > &V1, const sVec2< T > &V2) |
| template<class T > | |
| sVec2< T > & | VecNormalize (sVec2< T > &Out, const sVec2< T > &V) |
| template<class T > | |
| sVec2< T > * | VecNormalize (sVec2< T > *Out, const sVec2< T > *V) |
| template<class T > | |
| sVec2< T > & | VecNormalize (sVec2< T > &Out) |
| template<class T > | |
| sVec2< T > & | VecScale (sVec2< T > &Out, const sVec2< T > &V, T s) |
| template<class T > | |
| sVec4< T > & | VecTransform (sVec4< T > &Out, const sVec2< T > &V, const sMatrix< T > &M) |
| template<class T > | |
| sVec4< T > * | VecTransform (sVec4< T > *Out, const sVec2< T > *V, const sMatrix< T > *M) |
| template<class T > | |
| sVec2< T > & | VecTransformCoord (sVec2< T > &Out, const sVec2< T > &V, const sMatrix< T > &M) |
| template<class T > | |
| sVec2< T > * | VecTransformCoord (sVec2< T > *Out, const sVec2< T > *V, const sMatrix< T > *M) |
| template<class T > | |
| sVec2< T > & | VecTransformNormal (sVec2< T > &Out, const sVec2< T > &V, const sMatrix< T > &M) |
| template<class T > | |
| sVec2< T > * | VecTransformNormal (sVec2< T > *Out, const sVec2< T > *V, const sMatrix< T > *M) |
| template<class T > | |
| sVec2< T > & | VecAbs (sVec2< T > &Out, const sVec2< T > &V) |
| template<class T > | |
| sVec2< T > & | VecLerp (sVec2< T > &Out, const sVec2< T > &V1, const sVec2< T > &V2, T fac) |
| template<class T > | |
| sVec2< T > & | VecLerp (sVec2< T > &Out, const sVec2< T > &V1, const sVec2< T > &V2, const sVec2< T > &V3) |
| template<class T > | |
| tBool | VecIsNormal (const sVec2< T > &v, T epsilon=niEpsilon5) |
| template<class T > | |
| sVec2< T > & | VecInverse (sVec2< T > &Out, const sVec2< T > &V) |
| template<class T > | |
| tBool | VecEqual (const sVec2< T > &A, const sVec2< T > &B, T epsilon=niEpsilon5) |
| template<class T > | |
| int | VecMaxAxis (const sVec2< T > &V) |
| template<typename T > | |
| sVec3< T > & | VecClamp (sVec3< T > &Out, const sVec3< T > &V, const sVec3< T > &aMin=sVec3< T >::Zero(), const sVec3< T > &aMax=sVec3< T >::One()) |
| template<class T > | |
| sVec3< T > & | VecAdd (sVec3< T > &Out, const sVec3< T > &V1, const sVec3< T > &V2) |
| template<class T > | |
| sVec3< T > & | VecSub (sVec3< T > &Out, const sVec3< T > &V1, const sVec3< T > &V2) |
| template<class T > | |
| sVec3< T > & | VecMul (sVec3< T > &Out, const sVec3< T > &V1, const sVec3< T > &V2) |
| template<class T > | |
| sVec3< T > & | VecDiv (sVec3< T > &Out, const sVec3< T > &V1, const sVec3< T > &V2) |
| template<class T > | |
| sVec3< T > & | VecMAD (sVec3< T > &Out, const sVec3< T > &A, const sVec3< T > &B, const sVec3< T > &C) |
| template<class T > | |
| sVec3< T > & | VecMAD (sVec3< T > &Out, const sVec3< T > &A, const T scale, const sVec3< T > &B) |
| template<class T > | |
| sVec3< T > & | VecBaryCentric (sVec3< T > &Out, const sVec3< T > &V1, const sVec3< T > &V2, const sVec3< T > &V3, T f, T g) |
| template<class T > | |
| sVec3< T > & | VecCatmullRom (sVec3< T > &Out, const sVec3< T > &V1, const sVec3< T > &V2, const sVec3< T > &V3, const sVec3< T > &V4, T s) |
| template<class T > | |
| sVec3< T > & | VecCross (sVec3< T > &Out, const sVec3< T > &V1, const sVec3< T > &V2) |
| template<class T > | |
| sVec3< T > * | VecCross (sVec3< T > *Out, const sVec3< T > *V1, const sVec3< T > *V2) |
| template<class T > | |
| T | VecDot (const sVec3< T > &V1, const sVec3< T > &V2) |
| template<class T > | |
| T | VecDot (const sVec3< T > *V1, const sVec3< T > *V2) |
| template<class T > | |
| sVec3< T > & | VecHermite (sVec3< T > &Out, const sVec3< T > &V1, const sVec3< T > &T1, const sVec3< T > &V2, const sVec3< T > &T2, T s) |
| template<class T > | |
| T | VecLength (const sVec3< T > &V) |
| template<class T > | |
| T | VecDistance (const sVec3< T > &A, const sVec3< T > &B) |
| template<class T > | |
| sVec3< T > & | VecSetLength (sVec3< T > &Out, const sVec3< T > &V, T l) |
| template<class T > | |
| T | VecLengthSq (const sVec3< T > &V) |
| template<class T > | |
| sVec3< T > & | VecMaximize (sVec3< T > &Out, const sVec3< T > &V1, const sVec3< T > &V2) |
| template<class T > | |
| sVec3< T > & | VecMinimize (sVec3< T > &Out, const sVec3< T > &V1, const sVec3< T > &V2) |
| template<class T > | |
| sVec3< T > & | VecNormalize (sVec3< T > &Out, const sVec3< T > &V) |
| template<class T > | |
| sVec3< T > * | VecNormalize (sVec3< T > *Out, const sVec3< T > *V) |
| template<class T > | |
| sVec3< T > & | VecNormalize (sVec3< T > &Out) |
| template<class T > | |
| sVec3< T > & | VecScale (sVec3< T > &Out, const sVec3< T > &V, T s) |
| template<class T > | |
| sVec4< T > & | VecTransform (sVec4< T > &Out, const sVec3< T > &V, const sMatrix< T > &M) |
| template<class T > | |
| sVec4< T > * | VecTransform (sVec4< T > *Out, const sVec3< T > *V, const sMatrix< T > *M) |
| template<class T > | |
| sVec3< T > & | VecTransformCoord (sVec3< T > &Out, const sVec3< T > &V, const sMatrix< T > &M) |
| template<class T > | |
| sVec3< T > * | VecTransformCoord (sVec3< T > *Out, const sVec3< T > *V, const sMatrix< T > *M) |
| template<class T > | |
| sVec3< T > & | VecTransformNormal (sVec3< T > &Out, const sVec3< T > &V, const sMatrix< T > &M) |
| template<class T > | |
| sVec3< T > * | VecTransformNormal (sVec3< T > *Out, const sVec3< T > *V, const sMatrix< T > *M) |
| template<class T > | |
| sVec3< T > & | VecAbs (sVec3< T > &Out, const sVec3< T > &V) |
| template<class T > | |
| sVec3< T > & | VecLerp (sVec3< T > &Out, const sVec3< T > &V1, const sVec3< T > &V2, T fac) |
| template<class T > | |
| sVec3< T > & | VecLerp (sVec3< T > &Out, const sVec3< T > &V1, const sVec3< T > &V2, const sVec3< T > &V3) |
| template<class T > | |
| tBool | VecIsNormal (const sVec3< T > &v, T epsilon=niEpsilon5) |
| template<class T > | |
| sVec3< T > & | VecInverse (sVec3< T > &Out, const sVec3< T > &V) |
| template<typename T > | |
| sVec3< T > & | VecToViewport (sVec3< T > &aOut, const ni::sVec3< T > &avProjected, const ni::sRect< T > &aRect) |
| template<typename T > | |
| sVec3< T > & | VecProject (sVec3< T > &aOut, const ni::sVec3< T > &avPos, const ni::sMatrix< T > &amtxWVP, const ni::sRect< T > &aRect) |
| template<typename T > | |
| sVec4< T > & | VecProjectRHW (sVec4< T > &aOut, const ni::sVec3< T > &avPos, const ni::sMatrix< T > &mtxWVP, const ni::sRect< T > &aRect) |
| template<class T > | |
| sVec3< T > & | VecUnproject (sVec3< T > &avOut, const sVec3< T > &avIn, T afVPX, T afVPY, T afVPW, T afVPH, const sMatrix< T > &amtxViewProj) |
| template<class T > | |
| tBool | VecEqual (const sVec3< T > &A, const sVec3< T > &B, T epsilon=niEpsilon5) |
| template<class T > | |
| sVec3< T > & | VecReflect (sVec3< T > &Out, const sVec3< T > &Dir, const sVec3< T > &Normal) |
| template<typename T > | |
| T | VecAngle (const sVec3< T > &v1, const sVec3< T > &v2) |
| template<class T > | |
| int | VecMaxAxis (const sVec3< T > &V) |
| template<typename T > | |
| ni::sVec3< T > | GetScreenPosition (const ni::sVec3< T > &avPos, const sMatrix< T > &mtxVP, const ni::sRect< T > &aRect) |
| template<class T > | |
| void | ComputeTangentSpace (const sVec3< T > &PA, const sVec2< T > &TA, const sVec3< T > &PB, const sVec2< T > &TB, const sVec3< T > &PC, const sVec2< T > &TC, sVec3< T > &vTangent0, sVec3< T > &vTangent1) |
| Compute texture space of a triangle. More... | |
| template<typename T > | |
| T | ComputePixelScaleX (const sVec3< T > &pos, const sMatrix< T > &worldView, const sMatrix< T > &proj, const ni::sRect< T > &aRect) |
| template<typename T > | |
| T | ComputePixelScaleY (const sVec3< T > &pos, const sMatrix< T > &worldView, const sMatrix< T > &proj, const ni::sRect< T > &aRect) |
| template<typename T > | |
| T | ComputePixelWorldSizeX (const T afPixelSize, const ni::sVec3< T > &avPos, const ni::sMatrix< T > &mtxWorldView, const ni::sMatrix< T > &mtxProj, const ni::sRect< T > &aRect) |
| template<typename T > | |
| T | ComputePixelWorldSizeY (const T afPixelSize, const ni::sVec3< T > &avPos, const ni::sMatrix< T > &mtxWorldView, const ni::sMatrix< T > &mtxProj, const ni::sRect< T > &aRect) |
| template<typename T > | |
| sVec2< T > | ComputePixelWorldSizeVec2 (const T afPixelSize, const ni::sVec3< T > &avPos, const ni::sMatrix< T > &mtxWorldView, const ni::sMatrix< T > &mtxProj, const ni::sRect< T > &aRect) |
| template<typename T > | |
| T | ComputePixelWorldSize (const T afPixelSize, const ni::sVec3< T > &avPos, const ni::sMatrix< T > &mtxWorldView, const ni::sMatrix< T > &mtxProj, const ni::sRect< T > &aRect) |
| template<typename T > | |
| ni::sVec3< T > & | VecSphericalToCartesian (ni::sVec3< T > &aOut, const ni::sVec3< T > &avS) |
| template<typename T > | |
| ni::sVec3< T > & | VecCartesianToSpherical (ni::sVec3< T > &aOut, const ni::sVec3< T > &avC) |
| template<typename T > | |
| ni::sVec3< T > & | VecOrbitPitch (ni::sVec3< T > &aOut, const ni::sVec3< T > &aTarget, const ni::sVec3< T > &aPos, T afPitch) |
| template<typename T > | |
| ni::sVec3< T > & | VecOrbitYaw (ni::sVec3< T > &aOut, const ni::sVec3< T > &aTarget, const ni::sVec3< T > &aPos, T afYaw) |
| template<typename T > | |
| ni::sVec3< T > & | VecOrbitYawPitch (ni::sVec3< T > &aOut, const ni::sVec3< T > &aTarget, const ni::sVec3< T > &aPos, T afYaw, T afPitch) |
| template<typename T > | |
| sVec3< T > & | RandomDirection (sVec3< T > &vDirOut, const sVec3< T > &vN, int4 *aPRNG=ni_prng_global()) |
| Generates a random direction in the upper hemisphere. More... | |
| template<typename T > | |
| sVec4< T > & | VecClamp (sVec4< T > &Out, const sVec4< T > &V, const sVec4< T > &aMin=sVec4< T >::Zero(), const sVec4< T > &aMax=sVec4< T >::One()) |
| template<class T > | |
| sVec4< T > & | VecAdd (sVec4< T > &Out, const sVec4< T > &V1, const sVec4< T > &V2) |
| template<class T > | |
| sVec4< T > & | VecSub (sVec4< T > &Out, const sVec4< T > &V1, const sVec4< T > &V2) |
| template<class T > | |
| sVec4< T > & | VecMul (sVec4< T > &Out, const sVec4< T > &V1, const sVec4< T > &V2) |
| template<class T > | |
| sVec4< T > & | VecDiv (sVec4< T > &Out, const sVec4< T > &V1, const sVec4< T > &V2) |
| template<class T > | |
| sVec4< T > & | VecMAD (sVec4< T > &Out, const sVec4< T > &A, const sVec4< T > &B, const sVec4< T > &C) |
| template<class T > | |
| sVec4< T > & | VecMAD (sVec4< T > &Out, const sVec4< T > &A, const T scale, const sVec4< T > &B) |
| template<class T > | |
| sVec4< T > & | VecBaryCentric (sVec4< T > &Out, const sVec4< T > &V1, const sVec4< T > &V2, const sVec4< T > &V3, T f, T g) |
| template<class T > | |
| sVec4< T > & | VecCatmullRom (sVec4< T > &Out, const sVec4< T > &V1, const sVec4< T > &V2, const sVec4< T > &V3, const sVec4< T > &V4, T s) |
| template<class T > | |
| sVec4< T > & | VecCross (sVec4< T > &Out, const sVec4< T > &V1, const sVec4< T > &V2, const sVec4< T > &V3) |
| template<class T > | |
| sVec4< T > * | VecCross (sVec4< T > *Out, const sVec4< T > *V1, const sVec4< T > *V2, const sVec4< T > *V3) |
| template<class T > | |
| T | VecDot (const sVec4< T > &V1, const sVec4< T > &V2) |
| template<class T > | |
| T | VecDot (const sVec4< T > *V1, const sVec4< T > *V2) |
| template<class T > | |
| sVec4< T > & | VecHermite (sVec4< T > &Out, const sVec4< T > &V1, const sVec4< T > &T1, const sVec4< T > &V2, const sVec4< T > &T2, T s) |
| template<class T > | |
| T | VecLength (const sVec4< T > &V) |
| template<class T > | |
| T | VecDistance (const sVec4< T > &A, const sVec4< T > &B) |
| template<class T > | |
| sVec4< T > & | VecSetLength (sVec4< T > &Out, const sVec4< T > &V, T l) |
| template<class T > | |
| T | VecLengthSq (const sVec4< T > &V) |
| template<class T > | |
| sVec4< T > & | VecMaximize (sVec4< T > &Out, const sVec4< T > &V1, const sVec4< T > &V2) |
| template<class T > | |
| sVec4< T > & | VecMinimize (sVec4< T > &Out, const sVec4< T > &V1, const sVec4< T > &V2) |
| template<class T > | |
| sVec4< T > & | VecNormalize (sVec4< T > &Out, const sVec4< T > &V) |
| template<class T > | |
| sVec4< T > * | VecNormalize (sVec4< T > *Out, const sVec4< T > *V) |
| template<class T > | |
| sVec4< T > & | VecNormalize (sVec4< T > &Out) |
| template<class T > | |
| sVec4< T > & | VecScale (sVec4< T > &Out, const sVec4< T > &V, T s) |
| template<class T > | |
| sVec4< T > & | VecTransform (sVec4< T > &Out, const sVec4< T > &V, const sMatrix< T > &M) |
| template<class T > | |
| sVec4< T > * | VecTransform (sVec4< T > *Out, const sVec4< T > *V, const sMatrix< T > *M) |
| template<class T > | |
| sVec4< T > & | VecAbs (sVec4< T > &Out, const sVec4< T > &V) |
| template<class T > | |
| sVec4< T > & | VecLerp (sVec4< T > &Out, const sVec4< T > &V1, const sVec4< T > &V2, T fac) |
| template<class T > | |
| sVec4< T > & | VecLerp (sVec4< T > &Out, const sVec4< T > &V1, const sVec4< T > &V2, const sVec4< T > &V3) |
| template<class T > | |
| tBool | VecIsNormal (const sVec4< T > &v, T epsilon=niEpsilon5) |
| template<class T > | |
| sVec4< T > & | VecInverse (sVec4< T > &Out, const sVec4< T > &V) |
| template<class T > | |
| tBool | VecEqual (const sVec4< T > &A, const sVec4< T > &B, T epsilon=niEpsilon5) |
| template<class T > | |
| int | VecMaxAxis (const sVec4< T > &V) |
| sRect () | |
| sRect (const sVec4< T > &avVec) | |
| sRect (const sVec2< T > &aTopLeft, const sVec2< T > &aBottomRight) | |
| sRect (T aLeft, T aTop, T aWidth=0, T aHeight=0) | |
| sRect (const sVec2< T > &aTopLeft, T aWidth=0, T aHeight=0) | |
| void | Set (const sVec2< T > &aTopLeft, T aWidth, T aHeight) |
| Set the Top Left corner and the size of the rectangle. More... | |
| void | Set (T aLeft, T aTop, T aWidth=0, T aHeight=0) |
| Set the Top Left corner and the size of the rectangle. More... | |
| void | SetCorners (const sVec2< T > &aTopLeft, const sVec2< T > &aBottomRight) |
| Set the rectangle corners. More... | |
| void | SetCorner (eRectCorners aCorner, const sVec2< T > &aCornerPos) |
| Set a rectangle corner. Adapt the others accordingly. More... | |
| sVec2< T > | GetCorner (eRectCorners aCorner) const |
| Get a rectangle corner. More... | |
| void | SetLeft (T aV) |
| Set the Left edge. More... | |
| T | GetLeft () const |
| Get the Left edge. More... | |
| void | SetRight (T aV) |
| Set the Right edge. More... | |
| T | GetRight () const |
| Get the Right edge. More... | |
| void | SetTop (T aV) |
| Set the Top edge. More... | |
| T | GetTop () const |
| Get the Top edge. More... | |
| void | SetBottom (T aV) |
| Set the Bottom edge. More... | |
| T | GetBottom () const |
| Get the Bottom edge. More... | |
| void | SetWidth (T aWidth) |
| Set the width of the rectangle. More... | |
| T | GetWidth () const |
| Get the width of the rectangle. More... | |
| void | SetHeight (T aHeight) |
| Set the height of the rectangle. More... | |
| T | GetHeight () const |
| Get the height of the rectangle. More... | |
| void | SetSize (T aWidth, T aHeight) |
| Set the width and height of the rectangle. More... | |
| void | SetSize (const sVec2< T > &aSize) |
| Set the size of the rectangle. More... | |
| sVec2< T > | GetSize () const |
| Get the size of the rectangle. More... | |
| void | Move (const sVec2< T > &aMoveOffset) |
| Move the rectangle of the given offsets (relative movement). More... | |
| void | MoveTo (const sVec2< T > &aPos, eRectCorners aCorner=eRectCorners_TopLeft) |
| Move the rectangle to the given position (absolute movement). More... | |
| void | Inflate (const sVec2< T > &aV) |
| Inflate the size of the rectangle. More... | |
| void | Normalize () |
| Normalize the rectangle. Make sure that width and height are positive. More... | |
| void | SetCenter (const sVec2< T > &avPos) |
| Set the center point of the rectangle. More... | |
| sVec2< T > | GetCenter () const |
| Get the center point of the rectangle. More... | |
| tBool | IntersectRect (const sRect< T > &aRect) const |
| Return eTrue if the given rectangle intersect this rectangle. More... | |
| tBool | Intersect (const sVec2< T > &aPoint) const |
| Return eTrue if the given point intersect/is inside this rectangle. More... | |
| sRect | ClipRect (const sRect< T > &aRect) const |
| clips the rectangle passed against himself and returns the resulting rectangle More... | |
| sRect | ComputeFrameCenter (T Left, T Right, T Top, T Bottom) const |
| Get the center of the a frame with the specified borders. More... | |
| sRect & | operator+= (const sVec2< T > &v) |
| += operator, move the rectangle. More... | |
| sRect | operator+ (const sVec2< T > &v) const |
| += operator, move the rectangle. More... | |
| sRect & | operator-= (const sVec2< T > &v) |
| -= operator, move the rectangle. More... | |
| sRect | operator- (const sVec2< T > &v) const |
| -= operator, move the rectangle. More... | |
| sRect & | operator= (const sVec2< T > &v) |
| = operator, move the rectangle to the specified position, Top Left is the anchor corner. More... | |
| typedef Complex<tF32> Complexf |
tF32 complex number
| typedef Complex<tF64> Complexd |
tF64 complex number
| typedef sDecomposedMatrix<tF32> sDecomposedMatrixf |
Decomposed matrix tF32.
| typedef sDecomposedMatrix<tF64> sDecomposedMatrixd |
Decomposed matrix tF64.
| typedef sRect<tI32> sRecti |
Int Rect.
| typedef sRect<tF32> sRectf |
Float Rect.
| typedef astl::vector<sVec2f> tVec2fVec |
| typedef tVec2fVec::iterator tVec2fVecIt |
| typedef tVec2fVec::const_iterator tVec2fVecCIt |
| typedef astl::vector<sVec2i> tVec2iVec |
| typedef tVec2iVec::iterator tVec2iVecIt |
| typedef tVec2iVec::const_iterator tVec2iVecCIt |
| typedef astl::vector<sVec3f> tVec3fVec |
| typedef tVec3fVec::iterator tVec3fVecIt |
| typedef tVec3fVec::const_iterator tVec3fVecCIt |
| typedef astl::vector<sVec4f> tVec4fVec |
| typedef tVec4fVec::iterator tVec4fVecIt |
| typedef tVec4fVec::const_iterator tVec4fVecCIt |
| typedef astl::vector<sPlanef> tPlanefVec |
| typedef tPlanefVec::iterator tPlanefVecIt |
| typedef tPlanefVec::const_iterator tPlanefVecCIt |
| typedef astl::vector<sMatrixf> tMatrixfVec |
sMatrixf vector.
| typedef tMatrixfVec::iterator tMatrixfVecIt |
sMatrixf vector iterator.
| typedef tMatrixfVec::const_iterator tMatrixfVecCIt |
sMatrixf vector constant iterator.
| typedef tMatrixfVec::reverse_iterator tMatrixfVecRIt |
sMatrixf vector reverse iterator.
| typedef tMatrixfVec::const_reverse_iterator tMatrixfVecCRIt |
sMatrixf vector constant reverse iterator.
| typedef sMatrix< tF64 > sMatrixd |
tF64 matrix.
| typedef astl::vector<sMatrixd> tMatrixdVec |
sMatrixd vector.
| typedef tMatrixdVec::iterator tMatrixdVecIt |
sMatrixd vector iterator.
| typedef tMatrixdVec::const_iterator tMatrixdVecCIt |
sMatrixd vector constant iterator.
| typedef tMatrixdVec::reverse_iterator tMatrixdVecRIt |
sMatrixd vector reverse iterator.
| typedef tMatrixdVec::const_reverse_iterator tMatrixdVecCRIt |
sMatrixd vector constant reverse iterator.
| typedef XMatrix<2,2,tI32> XMatrix22l |
| typedef XMatrix<2,3,tI32> XMatrix23l |
| typedef XMatrix<3,3,tI32> XMatrix33l |
| typedef XMatrix<4,4,tI32> XMatrix44l |
| typedef XMatrix<2,1,tI32> XVec2l |
| typedef XMatrix<3,1,tI32> XVec3l |
| typedef XMatrix<4,1,tI32> XVec4l |
| typedef XMatrix<2,2,tF32> XMatrix22f |
| typedef XMatrix<2,3,tF32> XMatrix23f |
| typedef XMatrix<3,3,tF32> XMatrix33f |
| typedef XMatrix<4,4,tF32> XMatrix44f |
| typedef XMatrix<2,1,tF32> XVec2f |
| typedef XMatrix<3,1,tF32> XVec3f |
| typedef XMatrix<4,1,tF32> XVec4f |
| typedef XMatrix<2,2,tF64> XMatrix22d |
| typedef XMatrix<2,3,tF64> XMatrix23d |
| typedef XMatrix<3,3,tF64> XMatrix33d |
| typedef XMatrix<4,4,tF64> XMatrix44d |
| typedef XMatrix<2,1,tF64> XVec2d |
| typedef XMatrix<3,1,tF64> XVec3d |
| typedef XMatrix<4,1,tF64> XVec4d |
| enum eFPUPrecision |
| enum eFPURounding |
| Complex<T> ni::cx | ( | T | re, |
| T | im = T(0) |
||
| ) |
| Complex<T> ni::cx | ( | const ni::sVec2< T > & | c | ) |
| Complex<T> ni::re | ( | T | v | ) |
| Complex<T> ni::im | ( | T | v | ) |
| T ni::re | ( | const Complex< T > & | v | ) |
| T ni::im | ( | const Complex< T > & | v | ) |
| Complex<tF32> ni::Num< Complex< tF32 > > | ( | const tF64 | a | ) |
| Complex<tF64> ni::Num< Complex< tF64 > > | ( | const tF64 | a | ) |
| bool ni::operator== | ( | T | v, |
| const Complex< T > & | c | ||
| ) |
| bool ni::operator!= | ( | T | v, |
| const Complex< T > & | c | ||
| ) |
| Complex<T> ni::Polar | ( | T | rho, |
| T | phi | ||
| ) |
| Complex<T> ni::Conjugate | ( | const Complex< T > & | c | ) |
| T ni::Modulus | ( | const Complex< T > & | c | ) |
| T ni::ModulusSq | ( | const Complex< T > & | c | ) |
| T ni::Argument | ( | const Complex< T > & | c | ) |
| Complex<T> ni::Sqrt | ( | const Complex< T > & | c | ) |
| Complex<T> ni::Exp | ( | const Complex< T > & | c | ) |
| Complex<T> ni::Log10 | ( | const Complex< T > & | c | ) |
| Complex<T> ni::LogE | ( | const Complex< T > & | c | ) |
| Complex<T> ni::Pow | ( | const Complex< T > & | c, |
| const Complex< T > & | b | ||
| ) |
| Complex<T> ni::Sin | ( | const Complex< T > & | c | ) |
| Complex<T> ni::Cos | ( | const Complex< T > & | c | ) |
| Complex<T> ni::Tan | ( | const Complex< T > & | c | ) |
| Complexf ni::ref | ( | tF32 | v | ) |
| Complexf ni::imf | ( | tF32 | v | ) |
| T ni::ClampT | ( | T | aX, |
| T | aMin, | ||
| T | aMax | ||
| ) |
| T ni::RepeatT | ( | T | aX, |
| T | aMin, | ||
| T | aMax | ||
| ) |
| T ni::MirrorT | ( | T | aX, |
| T | aMin, | ||
| T | aMax | ||
| ) |
| T ni::CycleT | ( | T | aX, |
| T | aMin, | ||
| T | aMax | ||
| ) |
| T ni::CurveStep | ( | const T & | a, |
| const T & | b, | ||
| const S | t | ||
| ) |
| T ni::CurveLinear | ( | const T & | V1, |
| const T & | V2, | ||
| S | s | ||
| ) |
| T ni::CurveCos | ( | const T & | a, |
| const T & | b, | ||
| const S | t | ||
| ) |
| T ni::CurveHermite | ( | const T & | V1, |
| const T & | T1, | ||
| const T & | V2, | ||
| const T & | T2, | ||
| S | s | ||
| ) |
| T ni::CurveCatmullRom | ( | const T & | V1, |
| const T & | V2, | ||
| const T & | V3, | ||
| const T & | V4, | ||
| S | s | ||
| ) |
| T ni::CurveCardinal | ( | const T & | V1, |
| const T & | V2, | ||
| const T & | V3, | ||
| const T & | V4, | ||
| S | s, | ||
| S | a | ||
| ) |
| T ni::CurveCardinal | ( | const T & | V1, |
| const T & | V2, | ||
| S | s, | ||
| S | a | ||
| ) |
| T ni::CycleLinear | ( | T | aX, |
| T | aMin, | ||
| T | aMax | ||
| ) |
| T ni::CycleCos | ( | T | aX, |
| T | aMin, | ||
| T | aMax | ||
| ) |
| T ni::CycleCardinal | ( | T | aX, |
| T | aMin, | ||
| T | aMax, | ||
| const T | a | ||
| ) |
| sDecomposedMatrix<T>& ni::DecomposedMatrixFromMatrix | ( | sDecomposedMatrix< T > & | Out, |
| const sMatrix< T > & | In | ||
| ) |
| sMatrix<T>& ni::DecomposedMatrixToMatrix | ( | sMatrix< T > & | Out, |
| const sDecomposedMatrix< T > & | In | ||
| ) |
| sDecomposedMatrix<T>& ni::DecomposedMatrixLerp | ( | sDecomposedMatrix< T > & | Out, |
| const sDecomposedMatrix< T > & | A, | ||
| const sDecomposedMatrix< T > & | B, | ||
| T | fac, | ||
| eQuatSlerp | aSlerp = eQuatSlerp_Short |
||
| ) |
| sDecomposedMatrix<T>& ni::DecomposedMatrixMultiply | ( | sDecomposedMatrix< T > & | Out, |
| const sDecomposedMatrix< T > & | A, | ||
| const sDecomposedMatrix< T > & | B | ||
| ) |
| void ni::MathUtilMatrixFromQuat | ( | T & | r11, |
| T & | r12, | ||
| T & | r13, | ||
| T & | r21, | ||
| T & | r22, | ||
| T & | r23, | ||
| T & | r31, | ||
| T & | r32, | ||
| T & | r33, | ||
| const sQuat< T > & | q | ||
| ) |
| void ni::MathUtilPostTranslate | ( | sMatrix< T > & | m, |
| const T | tx, | ||
| const T | ty, | ||
| const T | tz | ||
| ) |
| void ni::MathUtilPostRotateQuat | ( | sMatrix< T > & | m, |
| const sQuat< T > & | q | ||
| ) |
| void ni::MathUtilPostRotateQuatInverse | ( | sMatrix< T > & | m, |
| const sQuat< T > & | q | ||
| ) |
| void ni::MathUtilPostScale | ( | sMatrix< T > & | m, |
| const T | sx, | ||
| const T | sy, | ||
| const T | sz | ||
| ) |
| sMatrix<T>& ni::MatrixAffineTransformation | ( | sMatrix< T > & | Out, |
| T | scaling, | ||
| const sVec3< T > * | pRotationCenter = NULL, |
||
| const sQuat< T > * | pRotation = NULL, |
||
| const sVec3< T > * | pTranslation = NULL |
||
| ) |
| T ni::MatrixDeterminant2 | ( | const sMatrix< T > & | M | ) |
| T ni::MatrixDeterminant3 | ( | const sMatrix< T > & | M | ) |
| T ni::MatrixDeterminant | ( | const sMatrix< T > & | M | ) |
| T ni::MatrixGetHandeness | ( | const sMatrix< T > & | M | ) |
| sMatrix<T>& ni::MatrixIdentity | ( | sMatrix< T > & | Out | ) |
| sMatrix<T>& ni::MatrixInverse | ( | sMatrix< T > & | aOut, |
| const sMatrix< T > & | aIn, | ||
| T * | apDet = NULL |
||
| ) |
| sMatrix<T>& ni::MatrixTransformInverse | ( | sMatrix< T > & | Out, |
| const sMatrix< T > & | M | ||
| ) |
| tBool ni::MatrixIsIdentity | ( | const sMatrix< T > & | M | ) |
| sMatrix<T>& ni::MatrixLookAtRH | ( | sMatrix< T > & | Out, |
| const sVec3< T > & | Eye, | ||
| const sVec3< T > & | At, | ||
| const sVec3< T > & | Up | ||
| ) |
| sMatrix<T>& ni::MatrixLookAtLH | ( | sMatrix< T > & | Out, |
| const sVec3< T > & | Eye, | ||
| const sVec3< T > & | At, | ||
| const sVec3< T > & | Up | ||
| ) |
| sMatrix<T>& ni::MatrixMultiply | ( | sMatrix< T > & | Out, |
| const sMatrix< T > & | M1, | ||
| const sMatrix< T > & | M2 | ||
| ) |
| sMatrix<T>* ni::MatrixMultiply | ( | sMatrix< T > * | Out, |
| const sMatrix< T > * | M1, | ||
| const sMatrix< T > * | M2 | ||
| ) |
| sMatrix<T>& ni::MatrixOrthoRH | ( | sMatrix< T > & | Out, |
| T | w, | ||
| T | h, | ||
| T | zn, | ||
| T | zf | ||
| ) |
| sMatrix<T>& ni::MatrixOrthoLH | ( | sMatrix< T > & | Out, |
| T | w, | ||
| T | h, | ||
| T | zn, | ||
| T | zf | ||
| ) |
| sMatrix<T>& ni::MatrixOrthoOffCenterRH | ( | sMatrix< T > & | Out, |
| T | l, | ||
| T | r, | ||
| T | t, | ||
| T | b, | ||
| T | zn, | ||
| T | zf | ||
| ) |
| sMatrix<T>& ni::MatrixOrthoOffCenterLH | ( | sMatrix< T > & | Out, |
| T | l, | ||
| T | r, | ||
| T | t, | ||
| T | b, | ||
| T | zn, | ||
| T | zf | ||
| ) |
| sMatrix<T>& ni::MatrixPerspectiveRH | ( | sMatrix< T > & | Out, |
| T | w, | ||
| T | h, | ||
| T | zn, | ||
| T | zf | ||
| ) |
| sMatrix<T>& ni::MatrixPerspectiveLH | ( | sMatrix< T > & | Out, |
| T | w, | ||
| T | h, | ||
| T | zn, | ||
| T | zf | ||
| ) |
| sMatrix<T>& ni::MatrixPerspectiveFovRH | ( | sMatrix< T > & | Out, |
| T | fovy, | ||
| T | aspect, | ||
| T | zn, | ||
| T | zf | ||
| ) |
| sMatrix<T>& ni::MatrixPerspectiveFovLH | ( | sMatrix< T > & | Out, |
| T | fovy, | ||
| T | aspect, | ||
| T | zn, | ||
| T | zf | ||
| ) |
| sMatrix<T>& ni::MatrixPerspectiveOffCenterRH | ( | sMatrix< T > & | Out, |
| T | l, | ||
| T | r, | ||
| T | t, | ||
| T | b, | ||
| T | zn, | ||
| T | zf | ||
| ) |
| sMatrix<T>& ni::MatrixPerspectiveOffCenterLH | ( | sMatrix< T > & | Out, |
| T | l, | ||
| T | r, | ||
| T | t, | ||
| T | b, | ||
| T | zn, | ||
| T | zf | ||
| ) |
| sMatrix<T>& ni::MatrixReflect | ( | sMatrix< T > & | Out, |
| const sVec4< T > & | Plane | ||
| ) |
| ni::sMatrix<T>& ni::MatrixRotationAxis | ( | ni::sMatrix< T > & | Out, |
| const ni::sVec3< T > & | V, | ||
| T | angle | ||
| ) |
| sMatrix<T>& ni::MatrixRotationQuat | ( | sMatrix< T > & | Out, |
| const sQuat< T > & | Q | ||
| ) |
| sMatrix<T>& ni::MatrixRotationX | ( | sMatrix< T > & | Out, |
| T | angle | ||
| ) |
| sMatrix<T>& ni::MatrixRotationY | ( | sMatrix< T > & | Out, |
| T | angle | ||
| ) |
| sMatrix<T>& ni::MatrixRotationZ | ( | sMatrix< T > & | Out, |
| T | angle | ||
| ) |
| sMatrix<T>& ni::MatrixRotationYawPitchRoll | ( | sMatrix< T > & | Out, |
| T | yaw, | ||
| T | pitch, | ||
| T | roll | ||
| ) |
| sVec3<T> ni::MatrixDecomposeYawPitchRoll | ( | const sMatrix< T > & | mat | ) |
| sMatrix<T>& ni::MatrixScaling | ( | sMatrix< T > & | Out, |
| T | sx, | ||
| T | sy, | ||
| T | sz | ||
| ) |
| sMatrix<T>& ni::MatrixScaling | ( | sMatrix< T > & | Out, |
| const sVec3< T > & | V | ||
| ) |
| sMatrix<T>& ni::MatrixScale | ( | sMatrix< T > & | Out, |
| const sMatrix< T > & | M, | ||
| const T | x, | ||
| const T | y, | ||
| const T | z | ||
| ) |
| sMatrix<T>& ni::MatrixScale | ( | sMatrix< T > & | Out, |
| const sMatrix< T > & | M, | ||
| const sVec3< T > & | V | ||
| ) |
| sMatrix<T>& ni::MatrixScale | ( | sMatrix< T > & | Out, |
| const sMatrix< T > & | M, | ||
| const T | s | ||
| ) |
| sMatrix<T>& ni::MatrixShadow | ( | sMatrix< T > & | Out, |
| const sVec4< T > & | vLight, | ||
| const sVec4< T > & | Plane | ||
| ) |
| sMatrix<T>& ni::MatrixTransformation | ( | sMatrix< T > & | Out, |
| const sVec3< T > * | pScalingCenter, | ||
| const sQuat< T > * | pScalingRotation, | ||
| const sVec3< T > * | pScaling, | ||
| const sVec3< T > * | pRotationCenter, | ||
| const sQuat< T > * | pRotation, | ||
| const sVec3< T > * | pTranslation | ||
| ) |
| sMatrix<T>& ni::MatrixTranslation | ( | sMatrix< T > & | Out, |
| T | x, | ||
| T | y, | ||
| T | z | ||
| ) |
| sMatrix<T>& ni::MatrixTranslation | ( | sMatrix< T > & | Out, |
| const sVec3< T > & | V | ||
| ) |
| sMatrix<T>& ni::MatrixTranspose | ( | sMatrix< T > & | Out, |
| const sMatrix< T > & | M | ||
| ) |
| sMatrix<T>& ni::MatrixTranspose3x3 | ( | sMatrix< T > & | Out, |
| const sMatrix< T > & | M | ||
| ) |
| sMatrix<T>& ni::MatrixTextureOffset2 | ( | sMatrix< T > & | Out, |
| T | fBias, | ||
| tI32 | nTexW, | ||
| tI32 | nTexH, | ||
| tI32 | nDepthBits | ||
| ) |
| sMatrix<T>& ni::MatrixTextureOffset | ( | sMatrix< T > & | Out, |
| T | fBias, | ||
| tI32 | nTexW, | ||
| tI32 | nTexH | ||
| ) |
| sMatrix<T>& ni::MatrixLerp | ( | sMatrix< T > & | Out, |
| const sMatrix< T > & | A, | ||
| const sMatrix< T > & | B, | ||
| T | fFac | ||
| ) |
| sVec3<T>& ni::MatrixGetForward | ( | sVec3< T > & | Out, |
| const sMatrix< T > & | M | ||
| ) |
| sVec3<T>& ni::MatrixGetUp | ( | sVec3< T > & | Out, |
| const sMatrix< T > & | M | ||
| ) |
| sVec3<T>& ni::MatrixGetRight | ( | sVec3< T > & | Out, |
| const sMatrix< T > & | M | ||
| ) |
| sVec3<T>& ni::MatrixGetTranslation | ( | sVec3< T > & | Out, |
| const sMatrix< T > & | M | ||
| ) |
| sMatrix<T>& ni::MatrixSetForward | ( | sMatrix< T > & | Out, |
| const sVec3< T > & | V | ||
| ) |
| sMatrix<T>& ni::MatrixSetUp | ( | sMatrix< T > & | Out, |
| const sVec3< T > & | V | ||
| ) |
| sMatrix<T>& ni::MatrixSetRight | ( | sMatrix< T > & | Out, |
| const sVec3< T > & | V | ||
| ) |
| sMatrix<T>& ni::MatrixSetTranslation | ( | sMatrix< T > & | Out, |
| const sVec3< T > & | V | ||
| ) |
| tBool ni::MatrixIsNormal | ( | const sMatrix< T > & | M, |
| T | epsilon = niEpsilon5 |
||
| ) |
| tBool ni::MatrixIsOrthogonal | ( | const sMatrix< T > & | M, |
| T | epsilon = niEpsilon5 |
||
| ) |
| tBool ni::MatrixIsOrthoNormal | ( | const sMatrix< T > & | M, |
| T | epsilon = niEpsilon5 |
||
| ) |
| sMatrix<T>& ni::MatrixSetRotation | ( | sMatrix< T > & | Out, |
| const sMatrix< T > & | M | ||
| ) |
| sVec3<T>& ni::MatrixToEuler | ( | const sMatrix< T > & | M, |
| sVec3< T > & | euler | ||
| ) |
| sMatrix<T>& ni::MatrixToCoordinateSystem | ( | sMatrix< T > & | Out, |
| const sVec3< T > & | avRight, | ||
| const sVec3< T > & | avUp, | ||
| const sVec3< T > & | avFwd, | ||
| const sVec3< T > & | avOrg = sVec3<T>::Zero() |
||
| ) |
| sMatrix<T>* ni::MatrixOrthogonalize | ( | sMatrix< T > & | Out, |
| const sMatrix< T > & | In, | ||
| const T | epsilon = (T)niEpsilon5 |
||
| ) |
| sMatrix<T>& ni::MatrixNormalize | ( | sMatrix< T > & | Out, |
| const sMatrix< T > & | In | ||
| ) |
| sMatrix<T>& ni::MatrixSetScale | ( | sMatrix< T > & | Out, |
| const sMatrix< T > & | In, | ||
| const sVec3f & | avScale | ||
| ) |
| sVec3<T>& ni::MatrixGetProjectedTranslation | ( | sVec3< T > & | Out, |
| const sMatrix< T > & | M, | ||
| T * | pDeterminant = NULL |
||
| ) |
| sMatrix<T>& ni::MatrixSetProjectedTranslation | ( | sMatrix< T > & | Out, |
| const sVec3< T > & | avT | ||
| ) |
| sMatrix<T>& ni::MatrixSetNotRotation | ( | sMatrix< T > & | Out, |
| const sMatrix< T > & | M | ||
| ) |
| sMatrix<T>& ni::MatrixRotate | ( | sMatrix< T > & | Out, |
| const sMatrix< T > & | M1, | ||
| const sMatrix< T > & | M2 | ||
| ) |
| sMatrix<T> ni::MatrixRotationPivot | ( | sMatrix< T > & | aOut, |
| const sMatrix< T > & | aM2, | ||
| const sVec3< T > & | avPivot | ||
| ) |
| sMatrix<T> ni::MatrixRotationPivotAndScale | ( | sMatrix< T > & | aOut, |
| const sMatrix< T > & | aM2, | ||
| const sVec3< T > & | avPivot, | ||
| const sVec3< T > & | avScale | ||
| ) |
| sMatrix<T>& ni::MatrixScalingH | ( | sMatrix< T > & | Out, |
| T | sx, | ||
| T | sy, | ||
| T | sz, | ||
| T | sh | ||
| ) |
| sMatrix<T>& ni::MatrixScalingH | ( | sMatrix< T > & | Out, |
| const sVec4< T > & | aR | ||
| ) |
| sMatrix<T>& ni::MatrixRotationXYZ | ( | sMatrix< T > & | Out, |
| T | x, | ||
| T | y, | ||
| T | z | ||
| ) |
| sMatrix<T>& ni::MatrixRotationXYZ | ( | sMatrix< T > & | Out, |
| const sVec3< T > & | aR | ||
| ) |
| sMatrix<T>& ni::MatrixRotationZYX | ( | sMatrix< T > & | Out, |
| T | x, | ||
| T | y, | ||
| T | z | ||
| ) |
| sMatrix<T>& ni::MatrixRotationZYX | ( | sMatrix< T > & | Out, |
| const sVec3< T > & | aR | ||
| ) |
| sVec3<T>& ni::MatrixGetLocalScale | ( | sVec3< T > & | aS, |
| const sMatrix< T > & | In | ||
| ) |
| sVec3<T>& ni::MatrixGetLocalScaleSq | ( | sVec3< T > & | aS, |
| const sMatrix< T > & | In | ||
| ) |
| void ni::MatrixDecompose | ( | const sMatrix< T > & | In, |
| sVec3< T > & | aT, | ||
| sVec3< T > & | aR, | ||
| sVec4< T > & | aS, | ||
| const T | aEps = (T)niEpsilon4 |
||
| ) |
| void ni::MatrixDecomposeQ | ( | const sMatrix< T > & | In, |
| sVec3< T > & | aT, | ||
| sQuat< T > & | aR, | ||
| sVec4< T > & | aS, | ||
| const T | aEps = (T)niEpsilon5 |
||
| ) |
| sMatrix<T>& ni::MatrixCompose | ( | sMatrix< T > & | Out, |
| const sVec3< T > & | aT, | ||
| const sVec3< T > & | aR, | ||
| const sVec4< T > & | aS | ||
| ) |
| sMatrix<T>& ni::MatrixComposeQ | ( | sMatrix< T > & | Out, |
| const sVec3< T > & | aT, | ||
| const sQuat< T > & | aR, | ||
| const sVec4< T > & | aS | ||
| ) |
| sMatrix<T>& ni::MatrixViewport | ( | sMatrix< T > & | Out, |
| const sVec4< T > & | aVP, | ||
| const T | aMinZ, | ||
| const T | aMaxZ | ||
| ) |
| const sMatrix<T>& ni::MatrixAdjustViewport | ( | sMatrix< T > & | Out, |
| const sVec4< T > & | aContextVP, | ||
| const sVec4< T > & | aVirtualVP, | ||
| const T | afMinZ, | ||
| const T | afMaxZ | ||
| ) |
| T ni::MatrixGetFovV | ( | const sMatrix< T > & | aMtx | ) |
| sVec3<T>& ni::MatrixDecomposeGetZYX | ( | sVec3< T > & | aR, |
| const sMatrix< T > & | In, | ||
| const T | aEps = (T)niEpsilon4 |
||
| ) |
| sQuat<T>& ni::MatrixDecomposeGetQ | ( | sQuat< T > & | aR, |
| const sMatrix< T > & | In, | ||
| const T | aEps = (T)niEpsilon4 |
||
| ) |
| sVec4<T>& ni::MatrixDecomposeGetScale | ( | sVec4< T > & | aS, |
| const sMatrix< T > & | In, | ||
| const T | aEps = (T)niEpsilon4 |
||
| ) |
| sVec3<T>& ni::MatrixDecomposeGetTranslation | ( | sVec3< T > & | aT, |
| const sMatrix< T > & | In | ||
| ) |
| sMatrix<T> ni::MatrixFlipProjectionY | ( | const sMatrix< T > & | aMatrix | ) |
| sMatrix<T> ni::MatrixProjection2D | ( | const T | afOrthoProjectionOffset, |
| const sRect< T > & | aRect, | ||
| const T | afVerticalFov, | ||
| const sVec2< T > & | aCameraPos = sVec2<T>::Zero() |
||
| ) |
Compute a projection matrix to do pixel perfect 2d rendering.
| afOrthoProjectionOffset | is the projection offset to do pixel perfect mapping, usually retrieved from ultof(iGraphicsDriver::GetCaps(eGraphicsCaps_OrthoProjectionOffset)). |
| aRect | the 2d canvas size. |
| afVerticalFov,if | > 0 creates a perspective matrix with the specified fov instead of a ortho projection. |
| aCameraPos,x | & y offset of the camera afVerticalFov is specified. |
| T ni::PlaneDot | ( | const sVec4< T > & | P, |
| const sVec4< T > & | V | ||
| ) |
| T ni::PlaneDotCoord | ( | const sVec4< T > & | P, |
| const sVec3< T > & | V | ||
| ) |
| T ni::PlaneDistance | ( | const sVec4< T > & | P, |
| const sVec3< T > & | V | ||
| ) |
| T ni::PlaneDotNormal | ( | const sVec4< T > & | P, |
| const sVec3< T > & | V | ||
| ) |
| sVec4<T>& ni::PlaneFromPointNormal | ( | sVec4< T > & | Out, |
| const sVec3< T > & | vPoint, | ||
| const sVec3< T > & | vNormal | ||
| ) |
| sVec4<T>& ni::PlaneFromPoints | ( | sVec4< T > & | Out, |
| const sVec3< T > & | V1, | ||
| const sVec3< T > & | V2, | ||
| const sVec3< T > & | V3 | ||
| ) |
| sVec3<T>* ni::PlaneIntersectLine | ( | const sVec4< T > & | P, |
| const sVec3< T > & | V1, | ||
| const sVec3< T > & | V2, | ||
| sVec3< T > * | pOut = NULL, |
||
| T * | percent = NULL |
||
| ) |
| sVec3<T>* ni::PlaneIntersectRay | ( | const sVec4< T > & | P, |
| const sVec3< T > & | avRayPos, | ||
| const sVec3< T > & | avRayDir, | ||
| sVec3< T > * | pOut = NULL, |
||
| T * | dist = NULL |
||
| ) |
| sVec4<T>* ni::PlaneNormalize | ( | sVec4< T > & | Out, |
| const sVec4< T > & | P | ||
| ) |
| sVec4<T>* ni::PlaneNormalize | ( | sVec4< T > & | Out | ) |
| sVec4<T>& ni::PlaneTransform | ( | sVec4< T > & | Out, |
| const sVec4< T > & | P, | ||
| const sMatrix< T > & | M | ||
| ) |
| sVec4<T>& ni::PlaneTransformInversedMatrix | ( | sVec4< T > & | Out, |
| const sVec4< T > & | P, | ||
| const sMatrix< T > & | M | ||
| ) |
| sVec3<T>* ni::PlaneIntersection | ( | sVec3< T > & | Out, |
| const sVec4< T > & | PA, | ||
| const sVec4< T > & | PB, | ||
| const sVec4< T > & | PC | ||
| ) |
| sVec3<T>& ni::PlaneClosest | ( | sVec3< T > & | Out, |
| const sVec4< T > & | P, | ||
| const sVec3< T > & | A | ||
| ) |
| ePlaneType ni::PlaneType | ( | const sVec4< T > & | Plane | ) |
| ePlaneType ni::PlaneMaxType | ( | const sVec4< T > & | Plane | ) |
| sMatrix<T>& ni::PlaneExtractCoordinateSystem | ( | sMatrix< T > & | Out, |
| const sVec4< T > & | Plane, | ||
| tBool | abTranspose, | ||
| const sVec3< T > * | apFwdDir, | ||
| const sVec3< T > * | apOrigin | ||
| ) |
The output matrix will contain the coordinate system that corespond to the plane. Up vector is the plane normal. Right and Fwd lies on the plane. If not NULL apFwdDir is the direction toward which the forward vector should be the closest. By example if you want the forward vector to be the one that points down you'd pass sVec3f::OpYAxis() here.
| tBool ni::PlaneIntersectSphere | ( | const sVec4< T > & | plane, |
| const sVec3< T > & | pos, | ||
| T | radius | ||
| ) |
| sQuat<T>& ni::QuatBaryCentric | ( | sQuat< T > & | Out, |
| const sQuat< T > & | Q1, | ||
| const sQuat< T > & | Q2, | ||
| const sQuat< T > & | Q3, | ||
| T | f, | ||
| T | g | ||
| ) |
| sQuat<T>& ni::QuatConjugate | ( | sQuat< T > & | Out, |
| const sQuat< T > & | Q | ||
| ) |
| T ni::QuatDot | ( | const sQuat< T > & | Q1, |
| const sQuat< T > & | Q2 | ||
| ) |
| sQuat<T>& ni::QuatExp | ( | sQuat< T > & | Out, |
| const sQuat< T > & | Q | ||
| ) |
| sQuat<T>& ni::QuatIdentity | ( | sQuat< T > & | Out | ) |
| sQuat<T>& ni::QuatInverse | ( | sQuat< T > & | Out, |
| const sQuat< T > & | Q | ||
| ) |
| tBool ni::QuatIsIdentity | ( | const sQuat< T > & | Q | ) |
| T ni::QuatLength | ( | const sQuat< T > & | Q | ) |
| T ni::QuatLengthSq | ( | const sQuat< T > & | Q | ) |
| sQuat<T>& ni::QuatLn | ( | sQuat< T > & | Out, |
| const sQuat< T > & | Q | ||
| ) |
| sQuat<T>& ni::QuatMultiply | ( | sQuat< T > & | Out, |
| const sQuat< T > & | Q1, | ||
| const sQuat< T > & | Q2 | ||
| ) |
| sQuat<T>& ni::QuatNormalize | ( | sQuat< T > & | Out, |
| const sQuat< T > & | Q | ||
| ) |
| sQuat<T>& ni::QuatNormalize | ( | sQuat< T > & | Out | ) |
| sQuat<T>& ni::QuatRotationAxis | ( | sQuat< T > & | Out, |
| const sVec3< T > & | V, | ||
| T | angle | ||
| ) |
| sQuat<T>& ni::QuatRotateX | ( | sQuat< T > & | Out, |
| const sQuat< T > & | Src, | ||
| T | angle | ||
| ) |
| sQuat<T>& ni::QuatRotateY | ( | sQuat< T > & | Out, |
| const sQuat< T > & | Src, | ||
| T | angle | ||
| ) |
| sQuat<T>& ni::QuatRotateZ | ( | sQuat< T > & | Out, |
| const sQuat< T > & | Src, | ||
| T | angle | ||
| ) |
| sQuat<T>& ni::QuatRotationX | ( | sQuat< T > & | Out, |
| T | angle | ||
| ) |
| sQuat<T>& ni::QuatRotationY | ( | sQuat< T > & | Out, |
| T | angle | ||
| ) |
| sQuat<T>& ni::QuatRotationZ | ( | sQuat< T > & | Out, |
| T | angle | ||
| ) |
| sQuat<T>& ni::QuatRotationMatrix | ( | sQuat< T > & | Out, |
| const sMatrix< T > & | M | ||
| ) |
| sQuat<T>& ni::QuatRotationYawPitchRoll | ( | sQuat< T > & | Out, |
| const T | yaw, | ||
| const T | pitch, | ||
| const T | roll | ||
| ) |
| sQuat<T>& ni::QuatRotationVector | ( | sQuat< T > & | Out, |
| const sVec3< T > & | vFrom, | ||
| const sVec3< T > & | vTo | ||
| ) |
| sQuat<T>& ni::QuatSlerp | ( | sQuat< T > & | Out, |
| const sQuat< T > & | Q1, | ||
| const sQuat< T > & | Q2, | ||
| T | t, | ||
| eQuatSlerp | mode = eQuatSlerp_Short |
||
| ) |
| sQuat<T>& ni::QuatSquad | ( | sQuat< T > & | Out, |
| const sQuat< T > & | Q1, | ||
| const sQuat< T > & | Q2, | ||
| const sQuat< T > & | Q3, | ||
| const sQuat< T > & | Q4, | ||
| T | t | ||
| ) |
| sVec3<T>& ni::QuatGetAxis | ( | sVec3< T > & | vAxis, |
| const sQuat< T > & | Q | ||
| ) |
| T ni::QuatGetAngle | ( | const sQuat< T > & | Q | ) |
| void ni::QuatToAxisAngle | ( | const sQuat< T > & | Q, |
| sVec3< T > & | vAxis, | ||
| T & | Angle | ||
| ) |
| sVec3<T>& ni::QuatToEuler | ( | const sQuat< T > & | Q, |
| sVec3< T > & | euler | ||
| ) |
| sQuat<T>& ni::QuatRandom | ( | sQuat< T > & | aQ | ) |
| sQuat<T>& ni::QuatRotationZYX | ( | sQuat< T > & | Out, |
| T | rx, | ||
| T | ry, | ||
| T | rz | ||
| ) |
| sQuat<T>& ni::QuatRotationZYX | ( | sQuat< T > & | Out, |
| const sVec3< T > & | V | ||
| ) |
| sQuat<T>& ni::QuatRotationXYZ | ( | sQuat< T > & | Out, |
| T | rx, | ||
| T | ry, | ||
| T | rz | ||
| ) |
| sQuat<T>& ni::QuatRotationXYZ | ( | sQuat< T > & | Out, |
| const sVec3< T > & | V | ||
| ) |
| sVec2<T>& ni::VecClamp | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V, | ||
| const sVec2< T > & | aMin = sVec2<T>::Zero(), |
||
| const sVec2< T > & | aMax = sVec2<T>::One() |
||
| ) |
| sVec2<T>& ni::VecAdd | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V1, | ||
| const sVec2< T > & | V2 | ||
| ) |
| sVec2<T>& ni::VecMul | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V1, | ||
| const sVec2< T > & | V2 | ||
| ) |
| sVec2<T>& ni::VecDiv | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V1, | ||
| const sVec2< T > & | V2 | ||
| ) |
| sVec2<T>& ni::VecMAD | ( | sVec2< T > & | Out, |
| const sVec2< T > & | A, | ||
| const sVec2< T > & | B, | ||
| const sVec2< T > & | C | ||
| ) |
| sVec2<T>& ni::VecMAD | ( | sVec2< T > & | Out, |
| const sVec2< T > & | A, | ||
| T | scale, | ||
| const sVec2< T > & | B | ||
| ) |
| sVec2<T>& ni::VecMAD | ( | sVec2< T > & | Out, |
| const sVec2< T > & | A, | ||
| T | scale, | ||
| T | add | ||
| ) |
| sVec2<T>& ni::VecSub | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V1, | ||
| const sVec2< T > & | V2 | ||
| ) |
| sVec2<T>& ni::VecBaryCentric | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V1, | ||
| const sVec2< T > & | V2, | ||
| const sVec2< T > & | V3, | ||
| T | f, | ||
| T | g | ||
| ) |
| sVec2<T>& ni::VecCatmullRom | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V1, | ||
| const sVec2< T > & | V2, | ||
| const sVec2< T > & | V3, | ||
| const sVec2< T > & | V4, | ||
| T | s | ||
| ) |
| T ni::VecCCW | ( | const sVec2< T > & | V1, |
| const sVec2< T > & | V2 | ||
| ) |
| T ni::VecDot | ( | const sVec2< T > & | V1, |
| const sVec2< T > & | V2 | ||
| ) |
| T ni::VecDot | ( | const sVec2< T > * | V1, |
| const sVec2< T > * | V2 | ||
| ) |
| sVec2<T>& ni::VecHermite | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V1, | ||
| const sVec2< T > & | T1, | ||
| const sVec2< T > & | V2, | ||
| const sVec2< T > & | T2, | ||
| T | s | ||
| ) |
| T ni::VecLength | ( | const sVec2< T > & | V | ) |
| T ni::VecDistance | ( | const sVec2< T > & | A, |
| const sVec2< T > & | B | ||
| ) |
| sVec2<T>& ni::VecSetLength | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V, | ||
| T | l | ||
| ) |
| T ni::VecLengthSq | ( | const sVec2< T > & | V | ) |
| sVec2<T>& ni::VecMaximize | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V1, | ||
| const sVec2< T > & | V2 | ||
| ) |
| sVec2<T>& ni::VecMinimize | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V1, | ||
| const sVec2< T > & | V2 | ||
| ) |
| sVec2<T>& ni::VecNormalize | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V | ||
| ) |
| sVec2<T>* ni::VecNormalize | ( | sVec2< T > * | Out, |
| const sVec2< T > * | V | ||
| ) |
| sVec2<T>& ni::VecNormalize | ( | sVec2< T > & | Out | ) |
| sVec2<T>& ni::VecScale | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V, | ||
| T | s | ||
| ) |
| sVec4<T>& ni::VecTransform | ( | sVec4< T > & | Out, |
| const sVec2< T > & | V, | ||
| const sMatrix< T > & | M | ||
| ) |
| sVec4<T>* ni::VecTransform | ( | sVec4< T > * | Out, |
| const sVec2< T > * | V, | ||
| const sMatrix< T > * | M | ||
| ) |
| sVec2<T>& ni::VecTransformCoord | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V, | ||
| const sMatrix< T > & | M | ||
| ) |
| sVec2<T>* ni::VecTransformCoord | ( | sVec2< T > * | Out, |
| const sVec2< T > * | V, | ||
| const sMatrix< T > * | M | ||
| ) |
| sVec2<T>& ni::VecTransformNormal | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V, | ||
| const sMatrix< T > & | M | ||
| ) |
| sVec2<T>* ni::VecTransformNormal | ( | sVec2< T > * | Out, |
| const sVec2< T > * | V, | ||
| const sMatrix< T > * | M | ||
| ) |
| sVec2<T>& ni::VecAbs | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V | ||
| ) |
| sVec2<T>& ni::VecLerp | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V1, | ||
| const sVec2< T > & | V2, | ||
| T | fac | ||
| ) |
| sVec2<T>& ni::VecLerp | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V1, | ||
| const sVec2< T > & | V2, | ||
| const sVec2< T > & | V3 | ||
| ) |
| tBool ni::VecIsNormal | ( | const sVec2< T > & | v, |
| T | epsilon = niEpsilon5 |
||
| ) |
| sVec2<T>& ni::VecInverse | ( | sVec2< T > & | Out, |
| const sVec2< T > & | V | ||
| ) |
| tBool ni::VecEqual | ( | const sVec2< T > & | A, |
| const sVec2< T > & | B, | ||
| T | epsilon = niEpsilon5 |
||
| ) |
| int ni::VecMaxAxis | ( | const sVec2< T > & | V | ) |
| sVec3<T>& ni::VecClamp | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V, | ||
| const sVec3< T > & | aMin = sVec3<T>::Zero(), |
||
| const sVec3< T > & | aMax = sVec3<T>::One() |
||
| ) |
| sVec3<T>& ni::VecAdd | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V1, | ||
| const sVec3< T > & | V2 | ||
| ) |
| sVec3<T>& ni::VecSub | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V1, | ||
| const sVec3< T > & | V2 | ||
| ) |
| sVec3<T>& ni::VecMul | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V1, | ||
| const sVec3< T > & | V2 | ||
| ) |
| sVec3<T>& ni::VecDiv | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V1, | ||
| const sVec3< T > & | V2 | ||
| ) |
| sVec3<T>& ni::VecMAD | ( | sVec3< T > & | Out, |
| const sVec3< T > & | A, | ||
| const sVec3< T > & | B, | ||
| const sVec3< T > & | C | ||
| ) |
| sVec3<T>& ni::VecMAD | ( | sVec3< T > & | Out, |
| const sVec3< T > & | A, | ||
| const T | scale, | ||
| const sVec3< T > & | B | ||
| ) |
| sVec3<T>& ni::VecBaryCentric | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V1, | ||
| const sVec3< T > & | V2, | ||
| const sVec3< T > & | V3, | ||
| T | f, | ||
| T | g | ||
| ) |
| sVec3<T>& ni::VecCatmullRom | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V1, | ||
| const sVec3< T > & | V2, | ||
| const sVec3< T > & | V3, | ||
| const sVec3< T > & | V4, | ||
| T | s | ||
| ) |
| sVec3<T>& ni::VecCross | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V1, | ||
| const sVec3< T > & | V2 | ||
| ) |
| sVec3<T>* ni::VecCross | ( | sVec3< T > * | Out, |
| const sVec3< T > * | V1, | ||
| const sVec3< T > * | V2 | ||
| ) |
| T ni::VecDot | ( | const sVec3< T > & | V1, |
| const sVec3< T > & | V2 | ||
| ) |
| T ni::VecDot | ( | const sVec3< T > * | V1, |
| const sVec3< T > * | V2 | ||
| ) |
| sVec3<T>& ni::VecHermite | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V1, | ||
| const sVec3< T > & | T1, | ||
| const sVec3< T > & | V2, | ||
| const sVec3< T > & | T2, | ||
| T | s | ||
| ) |
| T ni::VecLength | ( | const sVec3< T > & | V | ) |
| T ni::VecDistance | ( | const sVec3< T > & | A, |
| const sVec3< T > & | B | ||
| ) |
| sVec3<T>& ni::VecSetLength | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V, | ||
| T | l | ||
| ) |
| T ni::VecLengthSq | ( | const sVec3< T > & | V | ) |
| sVec3<T>& ni::VecMaximize | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V1, | ||
| const sVec3< T > & | V2 | ||
| ) |
| sVec3<T>& ni::VecMinimize | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V1, | ||
| const sVec3< T > & | V2 | ||
| ) |
| sVec3<T>& ni::VecNormalize | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V | ||
| ) |
| sVec3<T>* ni::VecNormalize | ( | sVec3< T > * | Out, |
| const sVec3< T > * | V | ||
| ) |
| sVec3<T>& ni::VecNormalize | ( | sVec3< T > & | Out | ) |
| sVec3<T>& ni::VecScale | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V, | ||
| T | s | ||
| ) |
| sVec4<T>& ni::VecTransform | ( | sVec4< T > & | Out, |
| const sVec3< T > & | V, | ||
| const sMatrix< T > & | M | ||
| ) |
| sVec4<T>* ni::VecTransform | ( | sVec4< T > * | Out, |
| const sVec3< T > * | V, | ||
| const sMatrix< T > * | M | ||
| ) |
| sVec3<T>& ni::VecTransformCoord | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V, | ||
| const sMatrix< T > & | M | ||
| ) |
| sVec3<T>* ni::VecTransformCoord | ( | sVec3< T > * | Out, |
| const sVec3< T > * | V, | ||
| const sMatrix< T > * | M | ||
| ) |
| sVec3<T>& ni::VecTransformNormal | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V, | ||
| const sMatrix< T > & | M | ||
| ) |
| sVec3<T>* ni::VecTransformNormal | ( | sVec3< T > * | Out, |
| const sVec3< T > * | V, | ||
| const sMatrix< T > * | M | ||
| ) |
| sVec3<T>& ni::VecAbs | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V | ||
| ) |
| sVec3<T>& ni::VecLerp | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V1, | ||
| const sVec3< T > & | V2, | ||
| T | fac | ||
| ) |
| sVec3<T>& ni::VecLerp | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V1, | ||
| const sVec3< T > & | V2, | ||
| const sVec3< T > & | V3 | ||
| ) |
| tBool ni::VecIsNormal | ( | const sVec3< T > & | v, |
| T | epsilon = niEpsilon5 |
||
| ) |
| sVec3<T>& ni::VecInverse | ( | sVec3< T > & | Out, |
| const sVec3< T > & | V | ||
| ) |
| sVec3<T>& ni::VecToViewport | ( | sVec3< T > & | aOut, |
| const ni::sVec3< T > & | avProjected, | ||
| const ni::sRect< T > & | aRect | ||
| ) |
| sVec3<T>& ni::VecProject | ( | sVec3< T > & | aOut, |
| const ni::sVec3< T > & | avPos, | ||
| const ni::sMatrix< T > & | amtxWVP, | ||
| const ni::sRect< T > & | aRect | ||
| ) |
| sVec4<T>& ni::VecProjectRHW | ( | sVec4< T > & | aOut, |
| const ni::sVec3< T > & | avPos, | ||
| const ni::sMatrix< T > & | mtxWVP, | ||
| const ni::sRect< T > & | aRect | ||
| ) |
| sVec3<T>& ni::VecUnproject | ( | sVec3< T > & | avOut, |
| const sVec3< T > & | avIn, | ||
| T | afVPX, | ||
| T | afVPY, | ||
| T | afVPW, | ||
| T | afVPH, | ||
| const sMatrix< T > & | amtxViewProj | ||
| ) |
| tBool ni::VecEqual | ( | const sVec3< T > & | A, |
| const sVec3< T > & | B, | ||
| T | epsilon = niEpsilon5 |
||
| ) |
| sVec3<T>& ni::VecReflect | ( | sVec3< T > & | Out, |
| const sVec3< T > & | Dir, | ||
| const sVec3< T > & | Normal | ||
| ) |
| T ni::VecAngle | ( | const sVec3< T > & | v1, |
| const sVec3< T > & | v2 | ||
| ) |
| int ni::VecMaxAxis | ( | const sVec3< T > & | V | ) |
| ni::sVec3<T> ni::GetScreenPosition | ( | const ni::sVec3< T > & | avPos, |
| const sMatrix< T > & | mtxVP, | ||
| const ni::sRect< T > & | aRect | ||
| ) |
| void ni::ComputeTangentSpace | ( | const sVec3< T > & | PA, |
| const sVec2< T > & | TA, | ||
| const sVec3< T > & | PB, | ||
| const sVec2< T > & | TB, | ||
| const sVec3< T > & | PC, | ||
| const sVec2< T > & | TC, | ||
| sVec3< T > & | vTangent0, | ||
| sVec3< T > & | vTangent1 | ||
| ) |
Compute texture space of a triangle.
| T ni::ComputePixelScaleX | ( | const sVec3< T > & | pos, |
| const sMatrix< T > & | worldView, | ||
| const sMatrix< T > & | proj, | ||
| const ni::sRect< T > & | aRect | ||
| ) |
| T ni::ComputePixelScaleY | ( | const sVec3< T > & | pos, |
| const sMatrix< T > & | worldView, | ||
| const sMatrix< T > & | proj, | ||
| const ni::sRect< T > & | aRect | ||
| ) |
| T ni::ComputePixelWorldSizeX | ( | const T | afPixelSize, |
| const ni::sVec3< T > & | avPos, | ||
| const ni::sMatrix< T > & | mtxWorldView, | ||
| const ni::sMatrix< T > & | mtxProj, | ||
| const ni::sRect< T > & | aRect | ||
| ) |
| T ni::ComputePixelWorldSizeY | ( | const T | afPixelSize, |
| const ni::sVec3< T > & | avPos, | ||
| const ni::sMatrix< T > & | mtxWorldView, | ||
| const ni::sMatrix< T > & | mtxProj, | ||
| const ni::sRect< T > & | aRect | ||
| ) |
| sVec2<T> ni::ComputePixelWorldSizeVec2 | ( | const T | afPixelSize, |
| const ni::sVec3< T > & | avPos, | ||
| const ni::sMatrix< T > & | mtxWorldView, | ||
| const ni::sMatrix< T > & | mtxProj, | ||
| const ni::sRect< T > & | aRect | ||
| ) |
| T ni::ComputePixelWorldSize | ( | const T | afPixelSize, |
| const ni::sVec3< T > & | avPos, | ||
| const ni::sMatrix< T > & | mtxWorldView, | ||
| const ni::sMatrix< T > & | mtxProj, | ||
| const ni::sRect< T > & | aRect | ||
| ) |
| ni::sVec3<T>& ni::VecOrbitPitch | ( | ni::sVec3< T > & | aOut, |
| const ni::sVec3< T > & | aTarget, | ||
| const ni::sVec3< T > & | aPos, | ||
| T | afPitch | ||
| ) |
| ni::sVec3<T>& ni::VecOrbitYaw | ( | ni::sVec3< T > & | aOut, |
| const ni::sVec3< T > & | aTarget, | ||
| const ni::sVec3< T > & | aPos, | ||
| T | afYaw | ||
| ) |
| ni::sVec3<T>& ni::VecOrbitYawPitch | ( | ni::sVec3< T > & | aOut, |
| const ni::sVec3< T > & | aTarget, | ||
| const ni::sVec3< T > & | aPos, | ||
| T | afYaw, | ||
| T | afPitch | ||
| ) |
| sVec3<T>& ni::RandomDirection | ( | sVec3< T > & | vDirOut, |
| const sVec3< T > & | vN, | ||
| int4 * | aPRNG = ni_prng_global() |
||
| ) |
Generates a random direction in the upper hemisphere.
| sVec4<T>& ni::VecClamp | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V, | ||
| const sVec4< T > & | aMin = sVec4<T>::Zero(), |
||
| const sVec4< T > & | aMax = sVec4<T>::One() |
||
| ) |
| sVec4<T>& ni::VecAdd | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V1, | ||
| const sVec4< T > & | V2 | ||
| ) |
| sVec4<T>& ni::VecSub | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V1, | ||
| const sVec4< T > & | V2 | ||
| ) |
| sVec4<T>& ni::VecMul | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V1, | ||
| const sVec4< T > & | V2 | ||
| ) |
| sVec4<T>& ni::VecDiv | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V1, | ||
| const sVec4< T > & | V2 | ||
| ) |
| sVec4<T>& ni::VecMAD | ( | sVec4< T > & | Out, |
| const sVec4< T > & | A, | ||
| const sVec4< T > & | B, | ||
| const sVec4< T > & | C | ||
| ) |
| sVec4<T>& ni::VecMAD | ( | sVec4< T > & | Out, |
| const sVec4< T > & | A, | ||
| const T | scale, | ||
| const sVec4< T > & | B | ||
| ) |
| sVec4<T>& ni::VecBaryCentric | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V1, | ||
| const sVec4< T > & | V2, | ||
| const sVec4< T > & | V3, | ||
| T | f, | ||
| T | g | ||
| ) |
| sVec4<T>& ni::VecCatmullRom | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V1, | ||
| const sVec4< T > & | V2, | ||
| const sVec4< T > & | V3, | ||
| const sVec4< T > & | V4, | ||
| T | s | ||
| ) |
| sVec4<T>& ni::VecCross | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V1, | ||
| const sVec4< T > & | V2, | ||
| const sVec4< T > & | V3 | ||
| ) |
| sVec4<T>* ni::VecCross | ( | sVec4< T > * | Out, |
| const sVec4< T > * | V1, | ||
| const sVec4< T > * | V2, | ||
| const sVec4< T > * | V3 | ||
| ) |
| T ni::VecDot | ( | const sVec4< T > & | V1, |
| const sVec4< T > & | V2 | ||
| ) |
| T ni::VecDot | ( | const sVec4< T > * | V1, |
| const sVec4< T > * | V2 | ||
| ) |
| sVec4<T>& ni::VecHermite | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V1, | ||
| const sVec4< T > & | T1, | ||
| const sVec4< T > & | V2, | ||
| const sVec4< T > & | T2, | ||
| T | s | ||
| ) |
| T ni::VecLength | ( | const sVec4< T > & | V | ) |
| T ni::VecDistance | ( | const sVec4< T > & | A, |
| const sVec4< T > & | B | ||
| ) |
| sVec4<T>& ni::VecSetLength | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V, | ||
| T | l | ||
| ) |
| T ni::VecLengthSq | ( | const sVec4< T > & | V | ) |
| sVec4<T>& ni::VecMaximize | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V1, | ||
| const sVec4< T > & | V2 | ||
| ) |
| sVec4<T>& ni::VecMinimize | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V1, | ||
| const sVec4< T > & | V2 | ||
| ) |
| sVec4<T>& ni::VecNormalize | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V | ||
| ) |
| sVec4<T>* ni::VecNormalize | ( | sVec4< T > * | Out, |
| const sVec4< T > * | V | ||
| ) |
| sVec4<T>& ni::VecNormalize | ( | sVec4< T > & | Out | ) |
| sVec4<T>& ni::VecScale | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V, | ||
| T | s | ||
| ) |
| sVec4<T>& ni::VecTransform | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V, | ||
| const sMatrix< T > & | M | ||
| ) |
| sVec4<T>* ni::VecTransform | ( | sVec4< T > * | Out, |
| const sVec4< T > * | V, | ||
| const sMatrix< T > * | M | ||
| ) |
| sVec4<T>& ni::VecAbs | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V | ||
| ) |
| sVec4<T>& ni::VecLerp | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V1, | ||
| const sVec4< T > & | V2, | ||
| T | fac | ||
| ) |
| sVec4<T>& ni::VecLerp | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V1, | ||
| const sVec4< T > & | V2, | ||
| const sVec4< T > & | V3 | ||
| ) |
| tBool ni::VecIsNormal | ( | const sVec4< T > & | v, |
| T | epsilon = niEpsilon5 |
||
| ) |
| sVec4<T>& ni::VecInverse | ( | sVec4< T > & | Out, |
| const sVec4< T > & | V | ||
| ) |
| tBool ni::VecEqual | ( | const sVec4< T > & | A, |
| const sVec4< T > & | B, | ||
| T | epsilon = niEpsilon5 |
||
| ) |
| int ni::VecMaxAxis | ( | const sVec4< T > & | V | ) |
| sRect | ( | ) |
| sRect | ( | const sVec4< T > & | avVec | ) |
|
explicit |
|
explicit |
Set the Top Left corner and the size of the rectangle.
| void Set | ( | T | aLeft, |
| T | aTop, | ||
| T | aWidth = 0, |
||
| T | aHeight = 0 |
||
| ) |
Set the Top Left corner and the size of the rectangle.
Set the rectangle corners.
| void SetCorner | ( | eRectCorners | aCorner, |
| const sVec2< T > & | aCornerPos | ||
| ) |
Set a rectangle corner. Adapt the others accordingly.
| sVec2< T > GetCorner | ( | eRectCorners | aCorner | ) | const |
Get a rectangle corner.
| void SetLeft | ( | T | aV | ) |
Set the Left edge.
| T GetLeft | ( | ) | const |
Get the Left edge.
| void SetRight | ( | T | aV | ) |
Set the Right edge.
| T GetRight | ( | ) | const |
Get the Right edge.
| void SetTop | ( | T | aV | ) |
Set the Top edge.
| T GetTop | ( | ) | const |
Get the Top edge.
| void SetBottom | ( | T | aV | ) |
Set the Bottom edge.
| T GetBottom | ( | ) | const |
Get the Bottom edge.
| void SetWidth | ( | T | aWidth | ) |
Set the width of the rectangle.
| T GetWidth | ( | ) | const |
Get the width of the rectangle.
| void SetHeight | ( | T | aHeight | ) |
Set the height of the rectangle.
| T GetHeight | ( | ) | const |
Get the height of the rectangle.
| void SetSize | ( | T | aWidth, |
| T | aHeight | ||
| ) |
Set the width and height of the rectangle.
| sVec2< T > GetSize | ( | ) | const |
Get the size of the rectangle.
Move the rectangle of the given offsets (relative movement).
| void MoveTo | ( | const sVec2< T > & | aPos, |
| eRectCorners | aCorner = eRectCorners_TopLeft |
||
| ) |
Move the rectangle to the given position (absolute movement).
| aPos | indicates where to move to. |
| aCorner | is indicates the anchor point. |
Inflate the size of the rectangle.
| void Normalize | ( | ) |
Normalize the rectangle. Make sure that width and height are positive.
| sVec2< T > GetCenter | ( | ) | const |
Get the center point of the rectangle.
| tBool IntersectRect | ( | const sRect< T > & | aRect | ) | const |
Return eTrue if the given rectangle intersect this rectangle.
| tBool Intersect | ( | const sVec2< T > & | aPoint | ) | const |
Return eTrue if the given point intersect/is inside this rectangle.
| sRect< T > ClipRect | ( | const sRect< T > & | aRect | ) | const |
clips the rectangle passed against himself and returns the resulting rectangle
| sRect< T > ComputeFrameCenter | ( | T | Left, |
| T | Right, | ||
| T | Top, | ||
| T | Bottom | ||
| ) | const |
Get the center of the a frame with the specified borders.
| sRect< T > & operator+= | ( | const sVec2< T > & | v | ) |
+= operator, move the rectangle.
| sRect< T > operator+ | ( | const sVec2< T > & | v | ) | const |
+= operator, move the rectangle.
| sRect< T > & operator-= | ( | const sVec2< T > & | v | ) |
-= operator, move the rectangle.
| sRect< T > operator- | ( | const sVec2< T > & | v | ) | const |
-= operator, move the rectangle.
| sRect< T > & operator= | ( | const sVec2< T > & | v | ) |
= operator, move the rectangle to the specified position, Top Left is the anchor corner.
1.8.7