openrave.org

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Public Attributes | Friends | List of all members
OpenRAVE::geometry::RaveVector< T > Class Template Reference

Vector class containing 4 dimensions. More...

#include <geometry.h>

Collaboration diagram for OpenRAVE::geometry::RaveVector< T >:
Collaboration graph
[legend]

Public Member Functions

 RaveVector ()
 
 RaveVector (T x, T y, T z)
 
 RaveVector (T x, T y, T z, T w)
 
template<typename U >
 RaveVector (const RaveVector< U > &vec)
 
template<typename U >
 RaveVector (const U *pf)
 note, it only copes 3 values!
 
operator[] (int i) const
 
T & operator[] (int i)
 
template<typename U >
RaveVector< T > & operator= (const RaveVector< U > &r)
 
template<typename U >
dot (const RaveVector< U > &v) const
 
template<typename U >
dot3 (const RaveVector< U > &v) const
 
RaveVector< T > & normalize ()
 
RaveVector< T > & normalize4 ()
 
RaveVector< T > & normalize3 ()
 
lengthsqr2 () const
 
lengthsqr3 () const
 
lengthsqr4 () const
 
void Set3 (const T *pvals)
 
void Set3 (T val1, T val2, T val3)
 
void Set4 (const T *pvals)
 
void Set4 (T val1, T val2, T val3, T val4)
 
RaveVector< T > cross (const RaveVector< T > &v) const
 3 dim cross product, w is not touched
 
RaveVector< T > & Cross (const RaveVector< T > &v) RAVE_DEPRECATED
 
RaveVector< T > & Cross (const RaveVector< T > &u, const RaveVector< T > &v) RAVE_DEPRECATED
 
RaveVector< T > operator- () const
 
template<typename U >
RaveVector< T > operator+ (const RaveVector< U > &r) const
 
template<typename U >
RaveVector< T > operator- (const RaveVector< U > &r) const
 
template<typename U >
RaveVector< T > operator* (const RaveVector< U > &r) const
 
RaveVector< T > operator* (T k) const
 
template<typename U >
RaveVector< T > & operator+= (const RaveVector< U > &r)
 
template<typename U >
RaveVector< T > & operator-= (const RaveVector< U > &r)
 
template<typename U >
RaveVector< T > & operator*= (const RaveVector< U > &r)
 
RaveVector< T > & operator*= (const T k)
 
RaveVector< T > & operator/= (const T _k)
 
template<typename U >
RaveVector< T > operator^ (const RaveVector< U > &v) const
 cross product operator
 

Public Attributes

x
 
y
 
z
 
w
 

Friends

template<typename U >
RaveVector< U > operator* (float f, const RaveVector< U > &v)
 
template<typename U >
RaveVector< U > operator* (double f, const RaveVector< U > &v)
 
template<typename U >
std::ostream & operator<< (std::ostream &O, const RaveVector< U > &v)
 
template<typename U >
std::istream & operator>> (std::istream &I, RaveVector< U > &v)
 

Detailed Description

template<typename T>
class OpenRAVE::geometry::RaveVector< T >

Vector class containing 4 dimensions.

It is better to use this for a 3 dim vector because it is 16byte aligned and SIMD instructions can be used

Definition at line 195 of file geometry.h.

Constructor & Destructor Documentation

template<typename T>
OpenRAVE::geometry::RaveVector< T >::RaveVector ( )
inline

Definition at line 200 of file geometry.h.

template<typename T>
OpenRAVE::geometry::RaveVector< T >::RaveVector ( x,
y,
z 
)
inline

Definition at line 203 of file geometry.h.

template<typename T>
OpenRAVE::geometry::RaveVector< T >::RaveVector ( x,
y,
z,
w 
)
inline

Definition at line 205 of file geometry.h.

template<typename T>
template<typename U >
OpenRAVE::geometry::RaveVector< T >::RaveVector ( const RaveVector< U > &  vec)
inline

Definition at line 207 of file geometry.h.

template<typename T>
template<typename U >
OpenRAVE::geometry::RaveVector< T >::RaveVector ( const U *  pf)
inline

note, it only copes 3 values!

Definition at line 211 of file geometry.h.

Member Function Documentation

template<typename T>
RaveVector<T> OpenRAVE::geometry::RaveVector< T >::cross ( const RaveVector< T > &  v) const
inline

3 dim cross product, w is not touched

Definition at line 280 of file geometry.h.

template<typename T>
RaveVector<T>& OpenRAVE::geometry::RaveVector< T >::Cross ( const RaveVector< T > &  v)
inline

Definition at line 288 of file geometry.h.

template<typename T>
RaveVector<T>& OpenRAVE::geometry::RaveVector< T >::Cross ( const RaveVector< T > &  u,
const RaveVector< T > &  v 
)
inline

Definition at line 291 of file geometry.h.

template<typename T>
template<typename U >
T OpenRAVE::geometry::RaveVector< T >::dot ( const RaveVector< U > &  v) const
inline

Definition at line 228 of file geometry.h.

template<typename T>
template<typename U >
T OpenRAVE::geometry::RaveVector< T >::dot3 ( const RaveVector< U > &  v) const
inline

Definition at line 231 of file geometry.h.

template<typename T>
T OpenRAVE::geometry::RaveVector< T >::lengthsqr2 ( ) const
inline

Definition at line 257 of file geometry.h.

template<typename T>
T OpenRAVE::geometry::RaveVector< T >::lengthsqr3 ( ) const
inline

Definition at line 260 of file geometry.h.

template<typename T>
T OpenRAVE::geometry::RaveVector< T >::lengthsqr4 ( ) const
inline

Definition at line 263 of file geometry.h.

template<typename T>
RaveVector<T>& OpenRAVE::geometry::RaveVector< T >::normalize ( )
inline

Definition at line 234 of file geometry.h.

template<typename T>
RaveVector<T>& OpenRAVE::geometry::RaveVector< T >::normalize3 ( )
inline

Definition at line 247 of file geometry.h.

template<typename T>
RaveVector<T>& OpenRAVE::geometry::RaveVector< T >::normalize4 ( )
inline

Definition at line 237 of file geometry.h.

template<typename T>
template<typename U >
RaveVector<T> OpenRAVE::geometry::RaveVector< T >::operator* ( const RaveVector< U > &  r) const
inline

Definition at line 310 of file geometry.h.

template<typename T>
RaveVector<T> OpenRAVE::geometry::RaveVector< T >::operator* ( k) const
inline

Definition at line 313 of file geometry.h.

template<typename T>
template<typename U >
RaveVector<T>& OpenRAVE::geometry::RaveVector< T >::operator*= ( const RaveVector< U > &  r)
inline

Definition at line 323 of file geometry.h.

template<typename T>
RaveVector<T>& OpenRAVE::geometry::RaveVector< T >::operator*= ( const T  k)
inline

Definition at line 327 of file geometry.h.

template<typename T>
template<typename U >
RaveVector<T> OpenRAVE::geometry::RaveVector< T >::operator+ ( const RaveVector< U > &  r) const
inline

Definition at line 304 of file geometry.h.

template<typename T>
template<typename U >
RaveVector<T>& OpenRAVE::geometry::RaveVector< T >::operator+= ( const RaveVector< U > &  r)
inline

Definition at line 317 of file geometry.h.

template<typename T>
RaveVector<T> OpenRAVE::geometry::RaveVector< T >::operator- ( ) const
inline

Definition at line 301 of file geometry.h.

template<typename T>
template<typename U >
RaveVector<T> OpenRAVE::geometry::RaveVector< T >::operator- ( const RaveVector< U > &  r) const
inline

Definition at line 307 of file geometry.h.

template<typename T>
template<typename U >
RaveVector<T>& OpenRAVE::geometry::RaveVector< T >::operator-= ( const RaveVector< U > &  r)
inline

Definition at line 320 of file geometry.h.

template<typename T>
RaveVector<T>& OpenRAVE::geometry::RaveVector< T >::operator/= ( const T  _k)
inline

Definition at line 330 of file geometry.h.

template<typename T>
template<typename U >
RaveVector<T>& OpenRAVE::geometry::RaveVector< T >::operator= ( const RaveVector< U > &  r)
inline

Definition at line 223 of file geometry.h.

template<typename T>
T OpenRAVE::geometry::RaveVector< T >::operator[] ( int  i) const
inline

Definition at line 215 of file geometry.h.

template<typename T>
T& OpenRAVE::geometry::RaveVector< T >::operator[] ( int  i)
inline

Definition at line 218 of file geometry.h.

template<typename T>
template<typename U >
RaveVector<T> OpenRAVE::geometry::RaveVector< T >::operator^ ( const RaveVector< U > &  v) const
inline

cross product operator

Definition at line 341 of file geometry.h.

template<typename T>
void OpenRAVE::geometry::RaveVector< T >::Set3 ( const T *  pvals)
inline

Definition at line 267 of file geometry.h.

template<typename T>
void OpenRAVE::geometry::RaveVector< T >::Set3 ( val1,
val2,
val3 
)
inline

Definition at line 270 of file geometry.h.

template<typename T>
void OpenRAVE::geometry::RaveVector< T >::Set4 ( const T *  pvals)
inline

Definition at line 273 of file geometry.h.

template<typename T>
void OpenRAVE::geometry::RaveVector< T >::Set4 ( val1,
val2,
val3,
val4 
)
inline

Definition at line 276 of file geometry.h.

Friends And Related Function Documentation

template<typename T>
template<typename U >
RaveVector<U> operator* ( float  f,
const RaveVector< U > &  v 
)
friend
template<typename T>
template<typename U >
RaveVector<U> operator* ( double  f,
const RaveVector< U > &  v 
)
friend
template<typename T>
template<typename U >
std::ostream& operator<< ( std::ostream &  O,
const RaveVector< U > &  v 
)
friend

Definition at line 750 of file geometry.h.

template<typename T>
template<typename U >
std::istream& operator>> ( std::istream &  I,
RaveVector< U > &  v 
)
friend

Definition at line 756 of file geometry.h.

Member Data Documentation

template<typename T>
T OpenRAVE::geometry::RaveVector< T >::w

Definition at line 198 of file geometry.h.

template<typename T>
T OpenRAVE::geometry::RaveVector< T >::x

Definition at line 198 of file geometry.h.

template<typename T>
T OpenRAVE::geometry::RaveVector< T >::y

Definition at line 198 of file geometry.h.

template<typename T>
T OpenRAVE::geometry::RaveVector< T >::z

Definition at line 198 of file geometry.h.


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