GSLAM  3.0.0
Public Types | Public Member Functions | List of all members
Vector2< Scalar > Class Template Reference
Inheritance diagram for Vector2< Scalar >:
Vector< Scalar, 2 > Matrix< Scalar, Rows, 1 >

Public Types

typedef Matrix< Scalar, 2, 1 > Matrix21
 
typedef Vector< Scalar, 3 > Vector3
 
- Public Types inherited from Vector< Scalar, 2 >
typedef Matrix< Scalar, Rows, 1 > MatrixM1
 

Public Member Functions

 Vector2 (const Matrix21 &other)
 
 Vector2 (const Scalar data_[2])
 
 Vector2 (Scalar x, Scalar y)
 
 Vector2 (const Vector3 &other)
 
Scalar cross (const Matrix21 &b) const
 
Scalar operator^ (const Matrix21 &b) const
 
- Public Member Functions inherited from Vector< Scalar, 2 >
 Vector (const MatrixM1 &other)
 
 Vector (const Scalar data_[Rows])
 
Scalar operator() (size_t i) const
 
Scalar & operator() (size_t i)
 
Scalar operator[] (size_t i) const
 
Scalar & operator[] (size_t i)
 
Scalar dot (const MatrixM1 &b) const
 
Scalar operator* (const MatrixM1 &b) const
 
Vector operator* (Scalar b) const
 
Scalar norm () const
 
Scalar norm_squared () const
 
Scalar length () const
 
void normalize ()
 
Vector unit () const
 
Vector unit_or_zero (const Scalar eps=Scalar(1e-5))
 
Vector normalized () const
 
Vector pow (Scalar v) const
 
- Public Member Functions inherited from Matrix< Scalar, Rows, 1 >
 Matrix (const std::array< Scalar, Rows *Cols > &c)
 
 Matrix (const Scalar data_[Rows *Cols])
 
 Matrix (const Scalar data_[Rows][Cols])
 
 Matrix (const Matrix &other)
 
Scalar * data ()
 
const Scalar * data () const
 
Scalar operator() (size_t i, size_t j) const
 
Scalar & operator() (size_t i, size_t j)
 
Matrix< Scalar, Rows, Cols > & operator= (const Matrix< Scalar, Rows, Cols > &other)
 
void copyTo (Scalar(&dst)[Rows *Cols]) const
 
void copyToRaw (Scalar *dst) const
 
void copyToColumnMajor (Scalar(&dst)[Rows *Cols]) const
 
Matrix< Scalar, Rows, P > operator* (const Matrix< Scalar, Cols, P > &other) const
 
Matrix< Scalar, Rows, Cols > operator* (Scalar scalar) const
 
Matrix< Scalar, Rows, Cols > emult (const Matrix< Scalar, Rows, Cols > &other) const
 
Matrix< Scalar, Rows, Cols > edivide (const Matrix< Scalar, Rows, Cols > &other) const
 
Matrix< Scalar, Rows, Cols > operator+ (const Matrix< Scalar, Rows, Cols > &other) const
 
Matrix< Scalar, Rows, Cols > operator+ (Scalar scalar) const
 
Matrix< Scalar, Rows, Cols > operator- (const Matrix< Scalar, Rows, Cols > &other) const
 
Matrix< Scalar, Rows, Cols > operator- () const
 
Matrix< Scalar, Rows, Cols > operator- (Scalar scalar) const
 
void operator+= (const Matrix< Scalar, Rows, Cols > &other)
 
void operator+= (Scalar scalar)
 
void operator-= (const Matrix< Scalar, Rows, Cols > &other)
 
void operator-= (Scalar scalar)
 
void operator*= (const Matrix< Scalar, Cols, P > &other)
 
void operator*= (Scalar scalar)
 
Matrix< Scalar, Rows, Cols > operator/ (Scalar scalar) const
 
void operator/= (Scalar scalar)
 
bool operator== (const Matrix< Scalar, Rows, Cols > &other) const
 
bool operator!= (const Matrix< Scalar, Rows, Cols > &other) const
 
bool equal (const Matrix< Scalar, Rows, Cols > &y, const Scalar eps=1e-4f)
 
Matrix< Scalar, Cols, Rows > transpose () const
 
Matrix< Scalar, Cols, Rows > T () const
 
Matrix< Scalar, P, Q > slice (size_t x0, size_t y0) const
 
void set (const Matrix< Scalar, P, Q > &m, size_t x0, size_t y0)
 
void setRow (size_t i, const Matrix< Scalar, Cols, 1 > &row)
 
void setCol (size_t j, const Matrix< Scalar, Rows, 1 > &col)
 
void setZero ()
 
void zero ()
 
void setAll (Scalar val)
 
void setOne ()
 
void setIdentity ()
 
void identity ()
 
void swapRows (size_t a, size_t b)
 
void swapCols (size_t a, size_t b)
 
Matrix< Scalar, Rows, Cols > abs () const
 
Scalar max () const
 
Scalar min () const
 
int rows () const
 
int cols () const
 

Additional Inherited Members

- Static Public Member Functions inherited from Matrix< Scalar, Rows, 1 >
static Matrix< Scalar, Rows, Cols > zeros ()
 
static Matrix< Scalar, Rows, Cols > ones ()
 
- Public Attributes inherited from Matrix< Scalar, Rows, 1 >
Scalar _data [Rows][Cols]