orx 1.16
Portable Game Engine
|
Data Structures | |
struct | orxVECTOR |
Macros | |
#define | orxCOLOR_DECLARE(NAME, R, G, B) |
Functions | |
static orxINLINE orxFLOAT | orxVector_2DDot (const orxVECTOR *_pvOp1, const orxVECTOR *_pvOp2) |
static orxINLINE orxVECTOR * | orxVector_2DRotate (orxVECTOR *_pvRes, const orxVECTOR *_pvOp, orxFLOAT _fAngle) |
static orxINLINE orxVECTOR * | orxVector_Abs (orxVECTOR *_pvRes, const orxVECTOR *_pvOp) |
static orxINLINE orxVECTOR * | orxVector_Add (orxVECTOR *_pvRes, const orxVECTOR *_pvOp1, const orxVECTOR *_pvOp2) |
static orxINLINE orxBOOL | orxVector_AreEqual (const orxVECTOR *_pvOp1, const orxVECTOR *_pvOp2) |
orxDLLAPI orxVECTOR *orxFASTCALL | orxVector_Bezier (orxVECTOR *_pvRes, const orxVECTOR *_pvPoint1, const orxVECTOR *_pvPoint2, const orxVECTOR *_pvPoint3, const orxVECTOR *_pvPoint4, orxFLOAT _fT) |
orxDLLAPI orxVECTOR *orxFASTCALL | orxVector_CatmullRom (orxVECTOR *_pvRes, const orxVECTOR *_pvPoint1, const orxVECTOR *_pvPoint2, const orxVECTOR *_pvPoint3, const orxVECTOR *_pvPoint4, orxFLOAT _fT) |
static orxINLINE orxVECTOR * | orxVector_Clamp (orxVECTOR *_pvRes, const orxVECTOR *_pvOp, const orxVECTOR *_pvMin, const orxVECTOR *_pvMax) |
static orxINLINE orxVECTOR * | orxVector_Copy (orxVECTOR *_pvDst, const orxVECTOR *_pvSrc) |
static orxINLINE orxVECTOR * | orxVector_Cross (orxVECTOR *_pvRes, const orxVECTOR *_pvOp1, const orxVECTOR *_pvOp2) |
static orxINLINE orxVECTOR * | orxVector_Div (orxVECTOR *_pvRes, const orxVECTOR *_pvOp1, const orxVECTOR *_pvOp2) |
static orxINLINE orxVECTOR * | orxVector_Divf (orxVECTOR *_pvRes, const orxVECTOR *_pvOp1, orxFLOAT _fOp2) |
static orxINLINE orxFLOAT | orxVector_Dot (const orxVECTOR *_pvOp1, const orxVECTOR *_pvOp2) |
static orxINLINE orxVECTOR * | orxVector_Floor (orxVECTOR *_pvRes, const orxVECTOR *_pvOp) |
static orxINLINE orxVECTOR * | orxVector_FromCartesianToSpherical (orxVECTOR *_pvRes, const orxVECTOR *_pvOp) |
static orxINLINE orxVECTOR * | orxVector_FromSphericalToCartesian (orxVECTOR *_pvRes, const orxVECTOR *_pvOp) |
static orxINLINE orxFLOAT | orxVector_GetDistance (const orxVECTOR *_pvOp1, const orxVECTOR *_pvOp2) |
static orxINLINE orxFLOAT | orxVector_GetSize (const orxVECTOR *_pvOp) |
static orxINLINE orxFLOAT | orxVector_GetSquareDistance (const orxVECTOR *_pvOp1, const orxVECTOR *_pvOp2) |
static orxINLINE orxFLOAT | orxVector_GetSquareSize (const orxVECTOR *_pvOp) |
static orxINLINE orxBOOL | orxVector_IsNull (const orxVECTOR *_pvOp) |
static orxINLINE orxVECTOR * | orxVector_Lerp (orxVECTOR *_pvRes, const orxVECTOR *_pvOp1, const orxVECTOR *_pvOp2, orxFLOAT _fOp) |
static orxINLINE orxVECTOR * | orxVector_Max (orxVECTOR *_pvRes, const orxVECTOR *_pvOp1, const orxVECTOR *_pvOp2) |
static orxINLINE orxVECTOR * | orxVector_Min (orxVECTOR *_pvRes, const orxVECTOR *_pvOp1, const orxVECTOR *_pvOp2) |
static orxINLINE orxVECTOR * | orxVector_Mod (orxVECTOR *_pvRes, const orxVECTOR *_pvOp1, const orxVECTOR *_pvOp2) |
static orxINLINE orxVECTOR * | orxVector_Mul (orxVECTOR *_pvRes, const orxVECTOR *_pvOp1, const orxVECTOR *_pvOp2) |
static orxINLINE orxVECTOR * | orxVector_Mulf (orxVECTOR *_pvRes, const orxVECTOR *_pvOp1, orxFLOAT _fOp2) |
static orxINLINE orxVECTOR * | orxVector_Neg (orxVECTOR *_pvRes, const orxVECTOR *_pvOp) |
static orxINLINE orxVECTOR * | orxVector_Normalize (orxVECTOR *_pvRes, const orxVECTOR *_pvOp) |
static orxINLINE orxVECTOR * | orxVector_Pow (orxVECTOR *_pvRes, const orxVECTOR *_pvOp1, const orxVECTOR *_pvOp2) |
static orxINLINE orxVECTOR * | orxVector_Rec (orxVECTOR *_pvRes, const orxVECTOR *_pvOp) |
static orxINLINE orxVECTOR * | orxVector_Remap (orxVECTOR *_pvRes, const orxVECTOR *_pvA1, const orxVECTOR *_pvB1, const orxVECTOR *_pvA2, const orxVECTOR *_pvB2, const orxVECTOR *_pvV) |
static orxINLINE orxVECTOR * | orxVector_Round (orxVECTOR *_pvRes, const orxVECTOR *_pvOp) |
static orxINLINE orxVECTOR * | orxVector_Set (orxVECTOR *_pvVec, orxFLOAT _fX, orxFLOAT _fY, orxFLOAT _fZ) |
static orxINLINE orxVECTOR * | orxVector_SetAll (orxVECTOR *_pvVec, orxFLOAT _fValue) |
static orxINLINE orxVECTOR * | orxVector_Sub (orxVECTOR *_pvRes, const orxVECTOR *_pvOp1, const orxVECTOR *_pvOp2) |
Variables | |
orxDLLAPI const orxVECTOR | orxVECTOR_0 |
orxDLLAPI const orxVECTOR | orxVECTOR_1 |
orxDLLAPI const orxVECTOR | orxVECTOR_X |
orxDLLAPI const orxVECTOR | orxVECTOR_Y |
orxDLLAPI const orxVECTOR | orxVECTOR_Z |
Vector module Module that handles vectors and basic structures based on them
#define orxCOLOR_DECLARE | ( | NAME, | |
R, | |||
G, | |||
B ) |
Definition at line 991 of file orxVector.h.
Gets 2D dot product of two vectors
[in] | _pvOp1 | First operand |
[in] | _pvOp2 | Second operand |
Definition at line 915 of file orxVector.h.
|
static |
Rotates a 2D vector (along Z-axis)
[out] | _pvRes | Vector where to store the result (can be the operand) |
[in] | _pvOp | Vector to rotate |
[in] | _fAngle | Angle of rotation (radians) |
Definition at line 665 of file orxVector.h.
Gets the absolute value of a vector and stores it in another one
[out] | _pvRes | Vector where to store the result (can be the operand) |
[in] | _pvOp | Input value |
Definition at line 452 of file orxVector.h.
|
static |
Adds vectors and stores result in a third one
[out] | _pvRes | Vector where to store the result (can be one of the two operands) |
[in] | _pvOp1 | First operand |
[in] | _pvOp2 | Second operand |
Definition at line 154 of file orxVector.h.
Are vectors equal?
[in] | _pvOp1 | First vector to compare |
[in] | _pvOp2 | Second vector to compare |
Definition at line 734 of file orxVector.h.
|
extern |
Computes an interpolated point on a cubic Bezier curve segment for a given parameter
[out] | _pvRes | Vector where to store the result |
[in] | _pvPoint1 | First point for this curve segment |
[in] | _pvPoint2 | First control point for this curve segment |
[in] | _pvPoint3 | Second control point for this curve segment |
[in] | _pvPoint4 | Last point for this curve segment |
[in] | _fT | Interpolation parameter in [0.0, 1.0] |
|
extern |
Computes an interpolated point on a Catmull-Rom curve segment for a given parameter
[out] | _pvRes | Vector where to store the result |
[in] | _pvPoint1 | First control point for this curve segment |
[in] | _pvPoint2 | Second control point for this curve segment |
[in] | _pvPoint3 | Third control point for this curve segment |
[in] | _pvPoint4 | Fourth control point for this curve segment |
[in] | _fT | Interpolation parameter in [0.0, 1.0] |
|
static |
Clamps a vector between two others
[out] | _pvRes | Vector where to store the result (can be the operand) |
[in] | _pvOp | Vector to clamp |
[in] | _pvMin | Minimum boundary |
[in] | _pvMax | Maximum boundary |
Definition at line 430 of file orxVector.h.
Copies a vector onto another one
[in] | _pvDst | Vector to copy to (destination) |
[in] | _pvSrc | Vector to copy from (source) |
Definition at line 135 of file orxVector.h.
|
static |
Gets cross product of two vectors
[out] | _pvRes | Vector where to store the result |
[in] | _pvOp1 | First operand |
[in] | _pvOp2 | Second operand |
Definition at line 936 of file orxVector.h.
|
static |
Divides a vector by another vector and stores result in a third one
[out] | _pvRes | Vector where to store the result (can be one of the two operands) |
[in] | _pvOp1 | First operand |
[in] | _pvOp2 | Second operand |
Definition at line 268 of file orxVector.h.
|
static |
Divides a vector by an orxFLOAT and stores result in another one
[out] | _pvRes | Vector where to store the result (can be the operand) |
[in] | _pvOp1 | First operand |
[in] | _fOp2 | Second operand |
Definition at line 241 of file orxVector.h.
Gets dot product of two vectors
[in] | _pvOp1 | First operand |
[in] | _pvOp2 | Second operand |
Definition at line 895 of file orxVector.h.
Gets floored vector and stores the result in another one
[out] | _pvRes | Vector where to store the result (can be the operand) |
[in] | _pvOp | Input value |
Definition at line 512 of file orxVector.h.
|
static |
Transforms a cartesian vector into a spherical one
[out] | _pvRes | Vector where to store the result (can be the operand) |
[in] | _pvOp | Vector to transform |
Definition at line 754 of file orxVector.h.
|
static |
Transforms a spherical vector into a cartesian one
[out] | _pvRes | Vector where to store the result (can be the operand) |
[in] | _pvOp | Vector to transform |
Definition at line 848 of file orxVector.h.
|
static |
Gets distance between 2 positions
[in] | _pvOp1 | First position |
[in] | _pvOp2 | Second position |
Definition at line 612 of file orxVector.h.
|
static |
Gets vector size
[in] | _pvOp | Input vector |
Definition at line 569 of file orxVector.h.
|
static |
Gets squared distance between 2 positions
[in] | _pvOp1 | First position |
[in] | _pvOp2 | Second position |
Definition at line 588 of file orxVector.h.
|
static |
Gets vector squared size
[in] | _pvOp | Input vector |
Definition at line 551 of file orxVector.h.
|
static |
Is vector null?
[in] | _pvOp | Vector to test |
Definition at line 715 of file orxVector.h.
|
static |
Lerps from one vector to another one using a coefficient
[out] | _pvRes | Vector where to store the result (can be one of the two operands) |
[in] | _pvOp1 | First operand |
[in] | _pvOp2 | Second operand |
[in] | _fOp | Lerp coefficient parameter |
Definition at line 335 of file orxVector.h.
|
static |
Gets maximum between two vectors
[out] | _pvRes | Vector where to store the result (can be one of the two operands) |
[in] | _pvOp1 | First operand |
[in] | _pvOp2 | Second operand |
Definition at line 407 of file orxVector.h.
|
static |
Gets minimum between two vectors
[out] | _pvRes | Vector where to store the result (can be one of the two operands) |
[in] | _pvOp1 | First operand |
[in] | _pvOp2 | Second operand |
Definition at line 385 of file orxVector.h.
|
static |
Gets the modulo of a vector by another vector and stores result in a third one
[out] | _pvRes | Vector where to store the result (can be one of the two operands) |
[in] | _pvOp1 | First operand |
[in] | _pvOp2 | Second operand |
Definition at line 290 of file orxVector.h.
|
static |
Multiplies a vector by another vector and stores result in a third one
[out] | _pvRes | Vector where to store the result (can be one of the two operands) |
[in] | _pvOp1 | First operand |
[in] | _pvOp2 | Second operand |
Definition at line 219 of file orxVector.h.
|
static |
Multiplies a vector by an orxFLOAT and stores result in another one
[out] | _pvRes | Vector where to store the result (can be the operand) |
[in] | _pvOp1 | First operand |
[in] | _fOp2 | Second operand |
Definition at line 198 of file orxVector.h.
Negates a vector and stores result in another one
[out] | _pvRes | Vector where to store the result (can be the operand) |
[in] | _pvOp | Vector to negates |
Definition at line 472 of file orxVector.h.
Normalizes a vector
[out] | _pvRes | Vector where to store the result (can be the operand) |
[in] | _pvOp | Vector to normalize |
Definition at line 636 of file orxVector.h.
|
static |
Gets the power of a vector by another vector and stores result in a third one
[out] | _pvRes | Vector where to store the result (can be one of the two operands) |
[in] | _pvOp1 | First operand |
[in] | _pvOp2 | Second operand |
Definition at line 312 of file orxVector.h.
Gets reciprocal (1.0 /) vector and stores the result in another one
[out] | _pvRes | Vector where to store the result (can be the operand) |
[in] | _pvOp | Input value |
Definition at line 492 of file orxVector.h.
|
static |
Remaps a vector value from one interval to another one
[out] | _pvRes | Vector where to store the result (can be any of the other operands) |
[in] | _pvA1 | First interval's low boundary |
[in] | _pvB1 | First interval's high boundary |
[in] | _pvA2 | Second interval's low boundary |
[in] | _pvB2 | Second interval's high boundary |
[in] | _pvV | Value to remap from the first interval to the second one |
Definition at line 360 of file orxVector.h.
Gets rounded vector and stores the result in another one
[out] | _pvRes | Vector where to store the result (can be the operand) |
[in] | _pvOp | Input value |
Definition at line 532 of file orxVector.h.
|
static |
Sets vector XYZ values (also work for other coordinate system)
[in] | _pvVec | Concerned vector |
[in] | _fX | First coordinate value |
[in] | _fY | Second coordinate value |
[in] | _fZ | Third coordinate value |
Definition at line 105 of file orxVector.h.
Sets all the vector coordinates with the given value
[in] | _pvVec | Concerned vector |
[in] | _fValue | Value to set |
Definition at line 124 of file orxVector.h.
|
static |
Substracts vectors and stores result in a third one
[out] | _pvRes | Vector where to store the result (can be one of the two operands) |
[in] | _pvOp1 | First operand |
[in] | _pvOp2 | Second operand |
Definition at line 176 of file orxVector.h.