39template <
class DT>
class Tvec2;
40template <
class DT>
class Tvec3;
41template <
class DT>
class Tmat3;
42template <
class DT>
class Tmat4;
77 inline Tvec4(
const DT x,
const DT y,
const DT z,
const DT w)
104 inline void assign(
const DT x,
const DT y,
const DT z,
const DT c)
121 const DT div =
static_cast<DT
>(1) / lastComp;
130#define _ML_VEC4_RC(i) a[i][0]*v[0] + a[i][1]*v[1] + a[i][2]*v[2] + a[i][3]*v[3]
FloatingPointVector(DT value=DT(0))
A 4x4 matrix class consisting of four row vectors.
Tmat4< DT > transpose() const
Returns the transposed *this.
Declaration of float vector type traits.
Forward declarations to resolve header file dependencies.
Forward declarations to resolve header file dependencies.
Tvec4(const DT value=0)
Default and value constructor. Sets all entries to a user given value.
FloatingPointVector< DT, 4 > Superclass
A typedef as a shorthand for the base class.
void assign(const DT x, const DT y, const DT z, const DT c)
Sets all components to the passed values.
Tvec4(const Tvec2< DT > &v, const DT z, const DT w)
Casts Vector2 to Tvec4. Sets last two entries are given by z and w.
Tvec4< DT > divideByLastComp() const
Tvec4(const DT x, const DT y, const DT z, const DT w)
Tvec4(const Tvec3< DT > &v, const DT w)
Casts Vector3 to Tvec4. Sets last entry to the passed value w.
DT ComponentType
A typedef to 'export' the type of components.
Tvec4(const Superclass &v)
#define ML_CHECK_FLOAT_THROW(x)
#define _ML_VEC4_RC(i)
Internal helper macro for tMat4 with Tvec4 multiplications. Do not use.
Tvec4< MLdouble > Vector4
A vector with four components of type double.
T operator*(const FloatingPointVector< T, size, DataContainer > &a, const FloatingPointVector< T, size, DataContainer > &b)
Tvec4< MLldouble > Vector4ld
A vector with four components of type long double.
Tvec4< MLdouble > Vector4d
A vector with four components of type double.
Tvec4< MLfloat > Vector4f
A vector with four components of type float.