Ravelin
Public Member Functions | Static Public Member Functions | Public Attributes | Protected Attributes | List of all members
SVECTOR6 Class Reference

A 6-dimensional floating-point vector for use with spatial algebra. More...

#include <SVector6.h>

Inheritance diagram for SVECTOR6:
SACCEL SFORCE SMOMENTUM SVELOCITY

Public Member Functions

 SVECTOR6 ()
 Constructs a zero vector.
 
 SVECTOR6 (boost::shared_ptr< const POSE3 > pose)
 Constructs a zero vector relative to the given pose.
 
 SVECTOR6 (boost::shared_ptr< POSE3 > pose)
 
 SVECTOR6 (REAL x, REAL y, REAL z, REAL a, REAL b, REAL c)
 Constructs this vector with the given values.
 
 SVECTOR6 (REAL x, REAL y, REAL z, REAL a, REAL b, REAL c, boost::shared_ptr< const POSE3 > pose)
 Constructs this vector with the given values.
 
 SVECTOR6 (REAL x, REAL y, REAL z, REAL a, REAL b, REAL c, boost::shared_ptr< POSE3 > pose)
 
 SVECTOR6 (const REAL *array)
 Constructs this vector from the given array. More...
 
 SVECTOR6 (const REAL *array, boost::shared_ptr< const POSE3 > pose)
 Constructs this vector from the given array. More...
 
 SVECTOR6 (const REAL *array, boost::shared_ptr< POSE3 > pose)
 
 SVECTOR6 (const VECTOR3 &upper, const VECTOR3 &lower)
 Constructs the given spatial vector with given upper and lower components.
 
 SVECTOR6 (const VECTOR3 &upper, const VECTOR3 &lower, boost::shared_ptr< const POSE3 > pose)
 Constructs the given spatial vector with given upper and lower components.
 
 SVECTOR6 (const VECTOR3 &upper, const VECTOR3 &lower, boost::shared_ptr< POSE3 > pose)
 
unsigned size () const
 
SVECTOR6set_zero ()
 
SVECTOR6set_zero (boost::shared_ptr< const POSE3 > pose)
 
void set_lower (const VECTOR3 &lower)
 Sets the lower 3-dimensional vector.
 
void set_upper (const VECTOR3 &upper)
 Sets the upper 3-dimensional vector.
 
VECTOR3 get_lower () const
 Gets the lower 3-dimensional vector.
 
VECTOR3 get_upper () const
 Gets the upper 3-dimensional vector.
 
SVECTOR6operator= (const SVECTOR6 &source)
 Copies this vector from another SVECTOR6.
 
REAL & operator[] (const unsigned i)
 
const REAL & operator[] (const unsigned i) const
 
REAL * data ()
 
const REAL * data () const
 
SVECTOR6 operator- () const
 
SVECTOR6operator/= (REAL scalar)
 
SVECTOR6operator*= (REAL scalar)
 Multiplies this vector by a scalar in place.
 
unsigned rows () const
 
unsigned columns () const
 
SVECTOR6resize (unsigned rows, unsigned columns)
 
SVECTOR6resize (unsigned rows)
 
COLUMN_ITERATOR begin ()
 
CONST_COLUMN_ITERATOR begin () const
 
COLUMN_ITERATOR end ()
 
CONST_COLUMN_ITERATOR end () const
 
COLUMN_ITERATOR column_iterator_begin ()
 Gets an iterator to the beginning of the data.
 
CONST_COLUMN_ITERATOR column_iterator_begin () const
 Gets an iterator to the beginning of the data.
 
COLUMN_ITERATOR column_iterator_end ()
 Gets an iterator to the end of the data.
 
CONST_COLUMN_ITERATOR column_iterator_end () const
 Gets an iterator to the end of the data.
 
ROW_ITERATOR row_iterator_begin ()
 Gets an iterator to the beginning of the data.
 
CONST_ROW_ITERATOR row_iterator_begin () const
 Gets an iterator to the beginning of the data.
 
ROW_ITERATOR row_iterator_end ()
 Gets an iterator to the end of the data.
 
CONST_ROW_ITERATOR row_iterator_end () const
 Gets an iterator to the end of the data.
 
SVECTOR6negate ()
 
unsigned inc () const
 
unsigned leading_dim () const
 
template<class V >
V & to_vector (V &v) const
 
template<class V >
 SVECTOR6 (const V &v)
 

Static Public Member Functions

static SVECTOR6 zero (boost::shared_ptr< const POSE3 > pose=boost::shared_ptr< const POSE3 >())
 
static SVECTOR6 zero (boost::shared_ptr< POSE3 > pose=boost::shared_ptr< POSE3 >())
 
template<class V >
static SVECTOR6 from_vector (const V &v, boost::shared_ptr< const POSE3 > pose=boost::shared_ptr< const POSE3 >())
 

Public Attributes

boost::shared_ptr< const POSE3pose
 The frame that this vector is defined in.
 

Protected Attributes

REAL _data [6]
 

Detailed Description

A 6-dimensional floating-point vector for use with spatial algebra.

Note that spatial algebra defines the dot product in an unusual manner: if vector x = [a; b] and vector y = [c; d] then x'y = [b'; a'][c d] = dot(b,c) + dot(a,d).

Constructor & Destructor Documentation

SVECTOR6::SVECTOR6 ( const REAL *  array)

Constructs this vector from the given array.

Parameters
arraya 6-dimensional (or larger) array
SVECTOR6::SVECTOR6 ( const REAL *  array,
boost::shared_ptr< const POSE3 pose 
)

Constructs this vector from the given array.

Parameters
arraya 6-dimensional (or larger) array

References pose.


The documentation for this class was generated from the following files: