MathFu
An open source project by FPL.
 All Classes Namespaces Files Functions Variables Typedefs Friends Groups Pages
Constants

Vector constants for specific dimensions. More...

Detailed Description

Vector constants for specific dimensions.

It is preferable to use these constants rather than constructing them when they're required. Construction most-likely slower than loading them from memory.

For example, the following:
lookat = mat4::LookAt(target, position, mathfu::kAxisY3f);
is preferable to:
lookat = mat4::LookAt(target, position, mathfu::Vector<float, 3>(0.0f, 1.0f, 0.0f));
in terms of efficiency and in addition to resulting in more concise code.

Depending on your linker's sophistication and settings, these constants may be duplicated in every compilation unit in which they're used. However, most linkers should be able to detect and eliminate this duplication.

Functions

static const Vector< float, 2 > mathfu::kZeros2f (0.0f, 0.0f)
 2-dimensional float Vector of zeros.
 
static const Vector< float, 2 > mathfu::kOnes2f (1.0f, 1.0f)
 2-dimensional float Vector of ones.
 
static const Vector< float, 2 > mathfu::kAxisX2f (1.0f, 0.0f)
 2-dimensional float unit Vector pointing along the X axis.
 
static const Vector< float, 2 > mathfu::kAxisY2f (0.0f, 1.0f)
 2-dimensional float unit Vector pointing along the Y axis.
 
static const Vector< float, 3 > mathfu::kZeros3f (0.0f, 0.0f, 0.0f)
 3-dimensional float Vector of zeros.
 
static const Vector< float, 3 > mathfu::kOnes3f (1.0f, 1.0f, 1.0f)
 3-dimensional float Vector of ones.
 
static const Vector< float, 3 > mathfu::kAxisX3f (1.0f, 0.0f, 0.0f)
 3-dimensional float unit Vector pointing along the X axis.
 
static const Vector< float, 3 > mathfu::kAxisY3f (0.0f, 1.0f, 0.0f)
 3-dimensional float unit Vector pointing along the Y axis.
 
static const Vector< float, 3 > mathfu::kAxisZ3f (0.0f, 0.0f, 1.0f)
 3-dimensional float unit Vector pointing along the Z axis.
 
static const Vector< float, 4 > mathfu::kZeros4f (0.0f, 0.0f, 0.0f, 0.0f)
 4-dimensional float Vector of zeros.
 
static const Vector< float, 4 > mathfu::kOnes4f (1.0f, 1.0f, 1.0f, 1.0f)
 4-dimensional float Vector of ones.
 
static const Vector< float, 4 > mathfu::kAxisX4f (1.0f, 0.0f, 0.0f, 0.0f)
 4-dimensional float unit Vector pointing along the X axis.
 
static const Vector< float, 4 > mathfu::kAxisY4f (0.0f, 1.0f, 0.0f, 0.0f)
 4-dimensional float unit Vector pointing along the Y axis.
 
static const Vector< float, 4 > mathfu::kAxisZ4f (0.0f, 0.0f, 1.0f, 0.0f)
 4-dimensional float unit Vector pointing along the Z axis.
 
static const Vector< float, 4 > mathfu::kAxisW4f (0.0f, 0.0f, 0.0f, 1.0f)
 4-dimensional float unit Vector pointing along the W axis.
 
static const Vector< double, 2 > mathfu::kZeros2d (0.0, 0.0)
 2-dimensional double Vector of zeros.
 
static const Vector< double, 2 > mathfu::kOnes2d (1.0, 1.0)
 2-dimensional double Vector of ones.
 
static const Vector< double, 2 > mathfu::kAxisX2d (1.0, 0.0)
 2-dimensional double unit Vector pointing along the X axis.
 
static const Vector< double, 2 > mathfu::kAxisY2d (0.0, 1.0)
 2-dimensional double unit Vector pointing along the Y axis.
 
static const Vector< double, 3 > mathfu::kZeros3d (0.0, 0.0, 0.0)
 3-dimensional double Vector of zeros.
 
static const Vector< double, 3 > mathfu::kOnes3d (1.0, 1.0, 1.0)
 3-dimensional double Vector of ones.
 
static const Vector< double, 3 > mathfu::kAxisX3d (1.0, 0.0, 0.0)
 3-dimensional double unit Vector pointing along the X axis.
 
static const Vector< double, 3 > mathfu::kAxisY3d (0.0, 1.0, 0.0)
 3-dimensional double unit Vector pointing along the Y axis.
 
static const Vector< double, 3 > mathfu::kAxisZ3d (0.0, 0.0, 1.0)
 3-dimensional double unit Vector pointing along the Z axis.
 
static const Vector< double, 4 > mathfu::kZeros4d (0.0, 0.0, 0.0, 0.0)
 4-dimensional double Vector of zeros.
 
static const Vector< double, 4 > mathfu::kOnes4d (1.0, 1.0, 1.0, 1.0)
 4-dimensional double Vector of ones.
 
static const Vector< double, 4 > mathfu::kAxisX4d (1.0, 0.0, 0.0, 0.0)
 4-dimensional double unit Vector pointing along the X axis.
 
static const Vector< double, 4 > mathfu::kAxisY4d (0.0, 1.0, 0.0, 0.0)
 4-dimensional double unit Vector pointing along the Y axis.
 
static const Vector< double, 4 > mathfu::kAxisZ4d (0.0, 0.0, 1.0, 0.0)
 4-dimensional double unit Vector pointing along the Z axis.
 
static const Vector< double, 4 > mathfu::kAxisW4d (0.0, 0.0, 0.0, 1.0)
 4-dimensional double unit Vector pointing along the W axis.
 
static const Vector< int, 2 > mathfu::kOnes2i (1, 1)
 2-dimensional int Vector of zeros.
 
static const Vector< int, 2 > mathfu::kZeros2i (0, 0)
 2-dimensional int Vector of ones.
 
static const Vector< int, 2 > mathfu::kAxisX2i (1, 0)
 2-dimensional int unit Vector pointing along the X axis.
 
static const Vector< int, 2 > mathfu::kAxisY2i (0, 1)
 2-dimensional int unit Vector pointing along the Y axis.
 
static const Vector< int, 3 > mathfu::kZeros3i (0, 0, 0)
 3-dimensional int Vector of zeros.
 
static const Vector< int, 3 > mathfu::kOnes3i (1, 1, 1)
 3-dimensional int Vector of ones.
 
static const Vector< int, 3 > mathfu::kAxisX3i (1, 0, 0)
 3-dimensional int unit Vector pointing along the X axis.
 
static const Vector< int, 3 > mathfu::kAxisY3i (0, 1, 0)
 3-dimensional int unit Vector pointing along the Y axis.
 
static const Vector< int, 3 > mathfu::kAxisZ3i (0, 0, 1)
 3-dimensional int unit Vector pointing along the Z axis.
 
static const Vector< int, 4 > mathfu::kZeros4i (0, 0, 0, 0)
 4-dimensional int Vector of zeros.
 
static const Vector< int, 4 > mathfu::kOnes4i (1, 1, 1, 1)
 4-dimensional int Vector of ones.
 
static const Vector< int, 4 > mathfu::kAxisX4i (1, 0, 0, 0)
 4-dimensional int unit Vector pointing along the X axis.
 
static const Vector< int, 4 > mathfu::kAxisY4i (0, 1, 0, 0)
 4-dimensional int unit Vector pointing along the Z axis.
 
static const Vector< int, 4 > mathfu::kAxisZ4i (0, 0, 1, 0)
 4-dimensional int unit Vector pointing along the Y axis.
 
static const Vector< int, 4 > mathfu::kAxisW4i (0, 0, 0, 1)
 4-dimensional int unit Vector pointing along the W axis.
 
static const Quaternion< float > mathfu::kQuatIdentityf (1.0f, 0.0f, 0.0f, 0.0f)
 Quaternion Identity.
 
static const Quaternion< double > mathfu::kQuatIdentityd (1.0, 0.0, 0.0, 0.0)
 Quaternion Identity.
 
static const AffineTransform mathfu::kAffineIdentity (1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f, 0.0f, 0.0f, 0.0f, 1.0f, 0.0f)