Classes |
| struct | b2Mat22 |
| | A 2-by-2 matrix. Stored in column-major order. More...
|
| struct | b2Mat33 |
| | A 3-by-3 matrix. Stored in column-major order. More...
|
| struct | b2Rot |
| | Rotation. More...
|
| struct | b2Sweep |
| struct | b2Transform |
| struct | b2Vec2 |
| | A 2D column vector. More...
|
| struct | b2Vec3 |
| | A 2D column vector with 3 elements. More...
|
Defines |
| #define | b2Atan2(y, x) atan2f(y, x) |
| #define | b2Sqrt(x) sqrtf(x) |
Functions |
| template<typename T > |
| T | b2Abs (T a) |
| b2Vec2 | b2Abs (const b2Vec2 &a) |
| b2Mat22 | b2Abs (const b2Mat22 &A) |
| template<typename T > |
| T | b2Clamp (T a, T low, T high) |
| b2Vec2 | b2Clamp (const b2Vec2 &a, const b2Vec2 &low, const b2Vec2 &high) |
| float32 | b2Cross (const b2Vec2 &a, const b2Vec2 &b) |
| | Perform the cross product on two vectors. In 2D this produces a scalar.
|
| b2Vec2 | b2Cross (const b2Vec2 &a, float32 s) |
| b2Vec2 | b2Cross (float32 s, const b2Vec2 &a) |
| b2Vec3 | b2Cross (const b2Vec3 &a, const b2Vec3 &b) |
| | Perform the cross product on two vectors.
|
| float32 | b2Distance (const b2Vec2 &a, const b2Vec2 &b) |
| float32 | b2DistanceSquared (const b2Vec2 &a, const b2Vec2 &b) |
| float32 | b2Dot (const b2Vec2 &a, const b2Vec2 &b) |
| | Perform the dot product on two vectors.
|
| float32 | b2Dot (const b2Vec3 &a, const b2Vec3 &b) |
| | Perform the dot product on two vectors.
|
| float32 | b2InvSqrt (float32 x) |
| | This is a approximate yet fast inverse square-root.
|
| bool | b2IsPowerOfTwo (uint32 x) |
| bool | b2IsValid (float32 x) |
| | This function is used to ensure that a floating point number is not a NaN or infinity.
|
| template<typename T > |
| T | b2Max (T a, T b) |
| b2Vec2 | b2Max (const b2Vec2 &a, const b2Vec2 &b) |
| template<typename T > |
| T | b2Min (T a, T b) |
| b2Vec2 | b2Min (const b2Vec2 &a, const b2Vec2 &b) |
| b2Vec2 | b2Mul (const b2Mat22 &A, const b2Vec2 &v) |
| b2Mat22 | b2Mul (const b2Mat22 &A, const b2Mat22 &B) |
| b2Vec3 | b2Mul (const b2Mat33 &A, const b2Vec3 &v) |
| | Multiply a matrix times a vector.
|
| b2Rot | b2Mul (const b2Rot &q, const b2Rot &r) |
| | Multiply two rotations: q * r.
|
| b2Vec2 | b2Mul (const b2Rot &q, const b2Vec2 &v) |
| | Rotate a vector.
|
| b2Vec2 | b2Mul (const b2Transform &T, const b2Vec2 &v) |
| b2Transform | b2Mul (const b2Transform &A, const b2Transform &B) |
| b2Vec2 | b2Mul22 (const b2Mat33 &A, const b2Vec2 &v) |
| | Multiply a matrix times a vector.
|
| b2Vec2 | b2MulT (const b2Mat22 &A, const b2Vec2 &v) |
| b2Mat22 | b2MulT (const b2Mat22 &A, const b2Mat22 &B) |
| b2Rot | b2MulT (const b2Rot &q, const b2Rot &r) |
| | Transpose multiply two rotations: qT * r.
|
| b2Vec2 | b2MulT (const b2Rot &q, const b2Vec2 &v) |
| | Inverse rotate a vector.
|
| b2Vec2 | b2MulT (const b2Transform &T, const b2Vec2 &v) |
| b2Transform | b2MulT (const b2Transform &A, const b2Transform &B) |
| uint32 | b2NextPowerOfTwo (uint32 x) |
| template<typename T > |
| void | b2Swap (T &a, T &b) |
| b2Vec2 | operator* (float32 s, const b2Vec2 &a) |
| b2Vec3 | operator* (float32 s, const b2Vec3 &a) |
| b2Vec2 | operator+ (const b2Vec2 &a, const b2Vec2 &b) |
| | Add two vectors component-wise.
|
| b2Vec3 | operator+ (const b2Vec3 &a, const b2Vec3 &b) |
| | Add two vectors component-wise.
|
| b2Mat22 | operator+ (const b2Mat22 &A, const b2Mat22 &B) |
| b2Vec2 | operator- (const b2Vec2 &a, const b2Vec2 &b) |
| | Subtract two vectors component-wise.
|
| b2Vec3 | operator- (const b2Vec3 &a, const b2Vec3 &b) |
| | Subtract two vectors component-wise.
|
| bool | operator== (const b2Vec2 &a, const b2Vec2 &b) |
Variables |
| const b2Vec2 | b2Vec2_zero |
| | Useful constant.
|