Stellarium  1.2
Public Member Functions | Static Public Member Functions | Data Fields
Vector4 Class Reference

#include <VecMath.hpp>

Public Member Functions

 Vector4 (T x=0)
 The vector is not initialized! More...
 
 Vector4 (const T *)
 Explicit conversion constructor from an array. More...
 
template<class T2 >
 Vector4 (const Vector4< T2 > &)
 Explicit conversion constructor from another Vec4 of any type. More...
 
 Vector4 (const Vector3< T > &)
 Creates an Vector4 with xyz set to the given Vector3, and w set to 1.0.
 
 Vector4 (T, T, T)
 Creates an Vector4 with xyz set to the given values, and w set to 1.0.
 
 Vector4 (const Vector3< T > &, T)
 Creates an Vector4 with xyz set to the given Vector3, and given last value as w.
 
 Vector4 (T, T, T, T)
 
 Vector4 (QString s)
 Constructor from a comma-separated QString like "2,4,6,8" or "2.1,4.2,6.3,8.4".
 
 Vector4 (QStringList s)
 Constructor from a QStringList like { "2", "4", "6", "8" } or { "2.1", "4.2", "6.3", "8.4" }.
 
 Vector4 (QColor c)
 Constructor from a QColor.
 
Vector4operator= (const Vector3< T > &)
 
Vector4operator= (const T *)
 
void set (T, T, T, T)
 
bool operator== (const Vector4< T > &) const
 
bool operator!= (const Vector4< T > &) const
 
T & operator[] (int)
 
const T & operator[] (int) const
 
 operator T* ()
 
 operator const T * () const
 
void operator+= (const Vector4< T > &)
 
void operator-= (const Vector4< T > &)
 
void operator*= (T)
 
void operator/= (T)
 
Vector4 operator- (const Vector4< T > &) const
 
Vector4 operator+ (const Vector4< T > &) const
 
Vector4 operator- () const
 
Vector4 operator+ () const
 
Vector4 operator* (T) const
 
Vector4 operator/ (T) const
 
dot (const Vector4< T > &) const
 
length () const =delete
 
lengthSquared () const =delete
 
norm () const
 Norm of the vector, also known as length.
 
normSquared () const
 Square of the norm of the vector, same as dot product with itself.
 
void normalize ()
 
void transfo4d (const Mat4d &)
 
QString toString () const
 Formatted string with brackets.
 
QString toStr () const
 Compact comma-separated string without brackets and spaces. More...
 
QColor toQColor () const
 Convert to a QColor.
 
template<class T >
 Vector4 (T x)
 
template<class T >
 Vector4 (const T *x)
 
template<class T >
 Vector4 (const Vector3< T > &a)
 
template<class T >
 Vector4 (const Vector3< T > &a, const T w)
 
template<class T >
 Vector4 (T x, T y, T z)
 
template<class T >
 Vector4 (T x, T y, T z, T a)
 

Static Public Member Functions

static Vector4< T > fromBracketedString (QString s)
 converters to be registered in StelCore
 

Data Fields

v [4]
 

Detailed Description

A templatized 4d vector compatible with OpenGL. Use Vec4i for integer and Vec4d or Vec4f typedef for vectors of double and float respectively.

Constructor & Destructor Documentation

◆ Vector4() [1/3]

Vector4::Vector4 ( x = 0)
inlineexplicit

Sets all components of the vector to the same value

◆ Vector4() [2/3]

Vector4::Vector4 ( const T *  )
inlineexplicit
Warning
Does not check array size, make sure it has at least 4 elements

◆ Vector4() [3/3]

template<class T2 >
Vector4::Vector4 ( const Vector4< T2 > &  other)
inlineexplicit

Uses default primitive type conversion

Member Function Documentation

◆ toStr()

QString Vector4::toStr ( ) const

The result can be restored into a Vector4 by the Vector4(QString s) constructors.