#include <artec/sdk/base/Point.h>

Public Types

typedef T value_type
 

Public Member Functions

 Point4 ()
 Constructor. Empty for fast points array allocation. More...
 
 Point4 (T tx, T ty, T tz, T tw)
 
 Point4 (const Point4 &ot)
 Copying constructor. More...
 
Point4operator= (const Point4 &ot)
 Assignment operator. More...
 
 Point4 (const Point2< T > &ot)
 Point2 conversion. More...
 
Point4operator= (const Point2< T > &ot)
 
 Point4 (const Point3< T > &ot)
 Point3 conversion. More...
 
Point4operator= (const Point3< T > &ot)
 
template<typename T2 >
 Point4 (const Point4< T2 > &ot)
 Type conversion. More...
 
Point4 operator- () const
 Unary minus. More...
 
 operator T * ()
 Conversion to plain form operator. More...
 
 operator const T * () const
 
double length () const
 Length of point. More...
 
double lengthSquared () const
 Square of length of point. More...
 
void normalize ()
 normalizing to unit vector in euclidean norm More...
 
Point4 normalized () const
 
bool isZero () const
 Zero checking. More...
 
void reset ()
 Reset values to default. More...
 
template<typename T2 >
Point4< T > & operator+= (const T2 &val)
 
template<typename T2 >
Point4< T > & operator-= (const T2 &val)
 
template<typename T2 >
Point4< T > & operator*= (const T2 &val)
 
template<typename T2 >
Point4< T > & operator/= (const T2 &val)
 
template<typename T2 >
Point4< T > operator+ (const T2 &val) const
 
template<typename T2 >
Point4< T > operator- (const T2 &val) const
 
template<typename T2 >
Point4< T > operator* (const T2 &val) const
 
template<typename T2 >
Point4< T > operator/ (const T2 &val) const
 
Point4operator+= (const Point4 &ot)
 
Point4operator-= (const Point4 &ot)
 
Point4operator*= (const Point4 &ot)
 
Point4operator/= (const Point4 &ot)
 
Point4 operator+ (const Point4 &p2) const
 
Point4 operator- (const Point4 &p2) const
 
Point4 operator* (const Point4 &p2) const
 
Point4 operator/ (const Point4 &p2) const
 
bool operator== (const Point4 &p2) const
 
bool operator!= (const Point4 &p2) const
 
bool operator> (const Point4 &p2) const
 
bool operator>= (const Point4 &p2) const
 
bool operator< (const Point4 &p2) const
 
bool operator<= (const Point4 &p2) const
 

Static Public Member Functions

static T dot (const Point4< T > &p1, const Point4< T > &p2)
 Inner product operator. More...
 

Public Attributes

union {
   struct {
      T   x
 
      T   y
 
      T   z
 
      T   w
 
   } 
 
   T   data [4]
 
}; 
 point data More...
 

Static Public Attributes

static const int size_ = 4
 

Detailed Description

template<typename T>
class artec::sdk::base::Point4< T >

4-dimensional point class. Coordinates are of type T.

Definition at line 22 of file Point.h.

Member Typedef Documentation

template<typename T>
typedef T artec::sdk::base::Point4< T >::value_type

Definition at line 359 of file Point.h.

Constructor & Destructor Documentation

template<typename T>
artec::sdk::base::Point4< T >::Point4 ( )
inlineexplicit

Constructor. Empty for fast points array allocation.

Definition at line 362 of file Point.h.

template<typename T>
artec::sdk::base::Point4< T >::Point4 ( tx,
ty,
tz,
tw 
)
inlineexplicit

Definition at line 364 of file Point.h.

template<typename T>
artec::sdk::base::Point4< T >::Point4 ( const Point4< T > &  ot)
inline

Copying constructor.

Definition at line 367 of file Point.h.

template<typename T>
artec::sdk::base::Point4< T >::Point4 ( const Point2< T > &  ot)
inline

Point2 conversion.

Definition at line 373 of file Point.h.

template<typename T>
artec::sdk::base::Point4< T >::Point4 ( const Point3< T > &  ot)
inline

Point3 conversion.

Definition at line 377 of file Point.h.

template<typename T>
template<typename T2 >
artec::sdk::base::Point4< T >::Point4 ( const Point4< T2 > &  ot)
inlineexplicit

Type conversion.

Definition at line 381 of file Point.h.

Member Function Documentation

template<typename T>
static T artec::sdk::base::Point4< T >::dot ( const Point4< T > &  p1,
const Point4< T > &  p2 
)
inlinestatic

Inner product operator.

Definition at line 427 of file Point.h.

template<typename T>
bool artec::sdk::base::Point4< T >::isZero ( ) const
inline

Zero checking.

Definition at line 465 of file Point.h.

template<typename T>
double artec::sdk::base::Point4< T >::length ( ) const
inline

Length of point.

Definition at line 437 of file Point.h.

template<typename T>
double artec::sdk::base::Point4< T >::lengthSquared ( ) const
inline

Square of length of point.

Definition at line 440 of file Point.h.

template<typename T>
void artec::sdk::base::Point4< T >::normalize ( )
inline

normalizing to unit vector in euclidean norm

Definition at line 443 of file Point.h.

template<typename T>
Point4 artec::sdk::base::Point4< T >::normalized ( ) const
inline

Definition at line 455 of file Point.h.

template<typename T>
artec::sdk::base::Point4< T >::operator const T * ( ) const
inline

Definition at line 434 of file Point.h.

template<typename T>
artec::sdk::base::Point4< T >::operator T * ( )
inline

Conversion to plain form operator.

Definition at line 433 of file Point.h.

template<typename T>
bool artec::sdk::base::Point4< T >::operator!= ( const Point4< T > &  p2) const
inline

Logical operations

Definition at line 419 of file Point.h.

template<typename T>
template<typename T2 >
Point4<T> artec::sdk::base::Point4< T >::operator* ( const T2 &  val) const
inline

Arithmetical operations with scalar type

Definition at line 394 of file Point.h.

template<typename T>
Point4 artec::sdk::base::Point4< T >::operator* ( const Point4< T > &  p2) const
inline

Arithmetical operations with point

Definition at line 409 of file Point.h.

template<typename T>
template<typename T2 >
Point4<T>& artec::sdk::base::Point4< T >::operator*= ( const T2 &  val)
inline

Arithmetical operations with scalar type

Definition at line 387 of file Point.h.

template<typename T>
Point4& artec::sdk::base::Point4< T >::operator*= ( const Point4< T > &  ot)
inline

Arithmetical operations with point

Definition at line 404 of file Point.h.

template<typename T>
template<typename T2 >
Point4<T> artec::sdk::base::Point4< T >::operator+ ( const T2 &  val) const
inline

Arithmetical operations with scalar type

Definition at line 390 of file Point.h.

template<typename T>
Point4 artec::sdk::base::Point4< T >::operator+ ( const Point4< T > &  p2) const
inline

Arithmetical operations with point

Definition at line 407 of file Point.h.

template<typename T>
template<typename T2 >
Point4<T>& artec::sdk::base::Point4< T >::operator+= ( const T2 &  val)
inline

Arithmetical operations with scalar type

Definition at line 385 of file Point.h.

template<typename T>
Point4& artec::sdk::base::Point4< T >::operator+= ( const Point4< T > &  ot)
inline

Arithmetical operations with point

Definition at line 402 of file Point.h.

template<typename T>
template<typename T2 >
Point4<T> artec::sdk::base::Point4< T >::operator- ( const T2 &  val) const
inline

Arithmetical operations with scalar type

Definition at line 392 of file Point.h.

template<typename T>
Point4 artec::sdk::base::Point4< T >::operator- ( const Point4< T > &  p2) const
inline

Arithmetical operations with point

Definition at line 408 of file Point.h.

template<typename T>
Point4 artec::sdk::base::Point4< T >::operator- ( ) const
inline

Unary minus.

Definition at line 414 of file Point.h.

template<typename T>
template<typename T2 >
Point4<T>& artec::sdk::base::Point4< T >::operator-= ( const T2 &  val)
inline

Arithmetical operations with scalar type

Definition at line 386 of file Point.h.

template<typename T>
Point4& artec::sdk::base::Point4< T >::operator-= ( const Point4< T > &  ot)
inline

Arithmetical operations with point

Definition at line 403 of file Point.h.

template<typename T>
template<typename T2 >
Point4<T> artec::sdk::base::Point4< T >::operator/ ( const T2 &  val) const
inline

Arithmetical operations with scalar type

Definition at line 396 of file Point.h.

template<typename T>
Point4 artec::sdk::base::Point4< T >::operator/ ( const Point4< T > &  p2) const
inline

Arithmetical operations with point

Definition at line 410 of file Point.h.

template<typename T>
template<typename T2 >
Point4<T>& artec::sdk::base::Point4< T >::operator/= ( const T2 &  val)
inline

Arithmetical operations with scalar type

Definition at line 388 of file Point.h.

template<typename T>
Point4& artec::sdk::base::Point4< T >::operator/= ( const Point4< T > &  ot)
inline

Arithmetical operations with point

Definition at line 405 of file Point.h.

template<typename T>
bool artec::sdk::base::Point4< T >::operator< ( const Point4< T > &  p2) const
inline

Logical operations

Definition at line 422 of file Point.h.

template<typename T>
bool artec::sdk::base::Point4< T >::operator<= ( const Point4< T > &  p2) const
inline

Logical operations

Definition at line 423 of file Point.h.

template<typename T>
Point4& artec::sdk::base::Point4< T >::operator= ( const Point4< T > &  ot)
inline

Assignment operator.

Definition at line 370 of file Point.h.

template<typename T>
Point4& artec::sdk::base::Point4< T >::operator= ( const Point2< T > &  ot)
inline

Definition at line 374 of file Point.h.

template<typename T>
Point4& artec::sdk::base::Point4< T >::operator= ( const Point3< T > &  ot)
inline

Definition at line 378 of file Point.h.

template<typename T>
bool artec::sdk::base::Point4< T >::operator== ( const Point4< T > &  p2) const
inline

Logical operations

Definition at line 418 of file Point.h.

template<typename T>
bool artec::sdk::base::Point4< T >::operator> ( const Point4< T > &  p2) const
inline

Logical operations

Definition at line 420 of file Point.h.

template<typename T>
bool artec::sdk::base::Point4< T >::operator>= ( const Point4< T > &  p2) const
inline

Logical operations

Definition at line 421 of file Point.h.

template<typename T>
void artec::sdk::base::Point4< T >::reset ( )
inline

Reset values to default.

Definition at line 468 of file Point.h.

Member Data Documentation

union { ... }

point data

template<typename T>
T artec::sdk::base::Point4< T >::data[4]

Definition at line 480 of file Point.h.

template<typename T>
const int artec::sdk::base::Point4< T >::size_ = 4
static

Definition at line 483 of file Point.h.

template<typename T>
T artec::sdk::base::Point4< T >::w

Definition at line 477 of file Point.h.

template<typename T>
T artec::sdk::base::Point4< T >::x

Definition at line 477 of file Point.h.

template<typename T>
T artec::sdk::base::Point4< T >::y

Definition at line 477 of file Point.h.

template<typename T>
T artec::sdk::base::Point4< T >::z

Definition at line 477 of file Point.h.


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