MDSTk Libraries  1.1.0
Medical Data Segmentation Toolkit
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | Friends
mds::img::CVector3< T > Class Template Reference

Class representing a vector in 3D space. More...

#include <mdsVector3.h>

Inheritance diagram for mds::img::CVector3< T >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef CCoordinates3< T > tBase
 Base class.
typedef tBase::tComponent tComponent
 Coordinates type.
typedef CLibraryLockableClass
< CSmallObjectBase< C, M, A >
>::CLock 
tLock
 Lock type.
typedef CPoint3< T > tPoint
 Corresponding point.

Public Member Functions

void create (const tPoint &p0, const tPoint &p1)
 Creates the vector from two given points.
 CVector3 ()
 Default constructor.
 CVector3 (const tComponent &px, const tComponent &py, const tComponent &pz=tComponent())
 Constructor initializes vector coordinates.
 CVector3 (const tPoint &p0, const tPoint &p1)
 Constructor creates vector from two given points.
 CVector3 (const tBase &p)
 Copy constructor.
tComponent getLength () const
 Returns the vector length.
tComponent getMult () const
 Returns multiplication of all coordinates.
tComponent getSum () const
 Returns sum of all coordinates.
tComponentgetX ()
 Returns reference to the x-coordinate.
const tComponentgetX () const
CCoordinates3getXY (tComponent &px, tComponent &py) const
 Returns XY point coordinates.
CCoordinates3getXYZ (tComponent &px, tComponent &py, tComponent &pz) const
 Returns all point coordinates.
tComponentgetY ()
 Returns reference to the y-coordinate.
const tComponentgetY () const
tComponentgetZ ()
 Returns reference to the z-coordinate.
const tComponentgetZ () const
bool isSimilarTo (const CVector3 &r)
 Returns true if two vectors are almost the same.
CVector3makeNormal (const tPoint &p0, const tPoint &p1, const tPoint &p2)
 Computes normalized normal vector of given points.
CVector3normalize ()
 Normalizes the vector coordinates.
CCoordinates3operator*= (const CCoordinates3 &p)
CCoordinates3operator*= (const tComponent &c)
CCoordinates3operator+= (const CCoordinates3 &p)
CCoordinates3operator+= (const tComponent &c)
CCoordinates3operator-= (const CCoordinates3 &p)
CCoordinates3operator-= (const tComponent &c)
CCoordinates3operator/= (const CCoordinates3 &p)
CCoordinates3operator/= (const tComponent &c)
CVector3operator= (const tBase &p)
 Assignment operator.
CCoordinates3setX (const tComponent &px)
 Returns point coordinate.
CCoordinates3setXY (const tComponent &px, const tComponent &py)
 Sets XY point coordinates.
CCoordinates3setXYZ (const tComponent &px, const tComponent &py, const tComponent &pz)
 Sets all point coordinates.
CCoordinates3setY (const tComponent &py)
CCoordinates3setZ (const tComponent &pz)
CVector3vectorProduct (const CVector3 &u, const CVector3 &v)
 Vector product of two vectors.
tComponentx ()
 Returns reference to the x-coordinate.
const tComponentx () const
tComponenty ()
 Returns reference to the y-coordinate.
const tComponenty () const
tComponentz ()
 Returns reference to the z-coordinate.
const tComponentz () const
 ~CVector3 ()
 Destructor.

Static Public Member Functions

static tComponent dotProduct (const CVector3 &u, const CVector3 &v)
 Dot product of two vectors.
static void lock ()
 Locks the object.
static void operator delete (void *p, std::size_t Size)
 Deallocates small object.
static void operator delete (void *p, void *pPlace)
 Placement single-object delete merely calls global placement delete.
static void operator delete[] (void *p, std::size_t Size)
 Deallocates array-object.
static void operator delete[] (void *p, void *pPlace)
 Placement array-object delete merely calls global placement delete.
static void * operator new (std::size_t Size)
 Allocates a small object.
static void * operator new (std::size_t Size, void *pPlace)
 Placement single-object new merely calls global placement new.
static void * operator new[] (std::size_t Size)
 Allocates array-object.
static void * operator new[] (std::size_t Size, void *pPlace)
 Placement array-object new merely calls global placement new.
static void unlock ()
 Locks the object.

Protected Attributes

tComponent m_x
 Coordinates in the 3D space.
tComponent m_y
tComponent m_z

Friends

bool operator!= (const CCoordinates3 &l, const CCoordinates3 &r)
CCoordinates3 operator* (const CCoordinates3 &l, const CCoordinates3 &r)
CCoordinates3 operator+ (const CCoordinates3 &l, const CCoordinates3 &r)
CCoordinates3 operator- (const CCoordinates3 &l, const CCoordinates3 &r)
CCoordinates3 operator/ (const CCoordinates3 &l, const CCoordinates3 &r)
bool operator== (const CCoordinates3 &l, const CCoordinates3 &r)

Detailed Description

template<typename T>
class mds::img::CVector3< T >

Class representing a vector in 3D space.


Member Typedef Documentation

template<typename T>
typedef CCoordinates3<T> mds::img::CVector3< T >::tBase

Base class.

Reimplemented from mds::img::CCoordinates3< T >.

template<typename T>
typedef tBase::tComponent mds::img::CVector3< T >::tComponent

Coordinates type.

Reimplemented from mds::img::CCoordinates3< T >.

template<tSize C, tSize M, tSize A>
typedef CLibraryLockableClass<CSmallObjectBase<C,M,A> >::CLock mds::base::CSmallObjectBase< C, M, A >::tLock [inherited]

Lock type.

template<typename T>
typedef CPoint3<T> mds::img::CVector3< T >::tPoint

Corresponding point.


Constructor & Destructor Documentation

template<typename T>
mds::img::CVector3< T >::CVector3 ( )

Default constructor.

template<typename T>
mds::img::CVector3< T >::CVector3 ( const tComponent px,
const tComponent py,
const tComponent pz = tComponent() 
)

Constructor initializes vector coordinates.

template<typename T>
mds::img::CVector3< T >::CVector3 ( const tPoint p0,
const tPoint p1 
)

Constructor creates vector from two given points.

template<typename T>
mds::img::CVector3< T >::CVector3 ( const tBase p)

Copy constructor.

template<typename T>
mds::img::CVector3< T >::~CVector3 ( )

Destructor.


Member Function Documentation

template<typename T>
void mds::img::CVector3< T >::create ( const tPoint p0,
const tPoint p1 
)

Creates the vector from two given points.

template<typename T>
static tComponent mds::img::CVector3< T >::dotProduct ( const CVector3< T > &  u,
const CVector3< T > &  v 
) [static]

Dot product of two vectors.

template<typename T>
tComponent mds::img::CVector3< T >::getLength ( ) const

Returns the vector length.

template<typename T>
tComponent mds::img::CCoordinates3< T >::getMult ( ) const [inherited]

Returns multiplication of all coordinates.

template<typename T>
tComponent mds::img::CCoordinates3< T >::getSum ( ) const [inherited]

Returns sum of all coordinates.

template<typename T>
tComponent& mds::img::CCoordinates3< T >::getX ( ) [inherited]

Returns reference to the x-coordinate.

template<typename T>
const tComponent& mds::img::CCoordinates3< T >::getX ( ) const [inherited]
template<typename T>
CCoordinates3& mds::img::CCoordinates3< T >::getXY ( tComponent px,
tComponent py 
) const [inherited]

Returns XY point coordinates.

template<typename T>
CCoordinates3& mds::img::CCoordinates3< T >::getXYZ ( tComponent px,
tComponent py,
tComponent pz 
) const [inherited]

Returns all point coordinates.

template<typename T>
tComponent& mds::img::CCoordinates3< T >::getY ( ) [inherited]

Returns reference to the y-coordinate.

template<typename T>
const tComponent& mds::img::CCoordinates3< T >::getY ( ) const [inherited]
template<typename T>
tComponent& mds::img::CCoordinates3< T >::getZ ( ) [inherited]

Returns reference to the z-coordinate.

template<typename T>
const tComponent& mds::img::CCoordinates3< T >::getZ ( ) const [inherited]
template<typename T>
bool mds::img::CVector3< T >::isSimilarTo ( const CVector3< T > &  r)

Returns true if two vectors are almost the same.

static void mds::base::CLockableClass< CSmallObjectBase< C, M, A > >::lock ( ) [static, inherited]

Locks the object.

template<typename T>
CVector3& mds::img::CVector3< T >::makeNormal ( const tPoint p0,
const tPoint p1,
const tPoint p2 
)

Computes normalized normal vector of given points.

template<typename T>
CVector3& mds::img::CVector3< T >::normalize ( )

Normalizes the vector coordinates.

template<tSize C, tSize M, tSize A>
static void mds::base::CSmallObjectBase< C, M, A >::operator delete ( void *  p,
std::size_t  Size 
) [static, inherited]

Deallocates small object.

template<tSize C, tSize M, tSize A>
static void mds::base::CSmallObjectBase< C, M, A >::operator delete ( void *  p,
void *  pPlace 
) [static, inherited]

Placement single-object delete merely calls global placement delete.

template<tSize C, tSize M, tSize A>
static void mds::base::CSmallObjectBase< C, M, A >::operator delete[] ( void *  p,
std::size_t  Size 
) [static, inherited]

Deallocates array-object.

template<tSize C, tSize M, tSize A>
static void mds::base::CSmallObjectBase< C, M, A >::operator delete[] ( void *  p,
void *  pPlace 
) [static, inherited]

Placement array-object delete merely calls global placement delete.

template<tSize C, tSize M, tSize A>
static void* mds::base::CSmallObjectBase< C, M, A >::operator new ( std::size_t  Size) [static, inherited]

Allocates a small object.

template<tSize C, tSize M, tSize A>
static void* mds::base::CSmallObjectBase< C, M, A >::operator new ( std::size_t  Size,
void *  pPlace 
) [static, inherited]

Placement single-object new merely calls global placement new.

template<tSize C, tSize M, tSize A>
static void* mds::base::CSmallObjectBase< C, M, A >::operator new[] ( std::size_t  Size) [static, inherited]

Allocates array-object.

template<tSize C, tSize M, tSize A>
static void* mds::base::CSmallObjectBase< C, M, A >::operator new[] ( std::size_t  Size,
void *  pPlace 
) [static, inherited]

Placement array-object new merely calls global placement new.

template<typename T>
CCoordinates3& mds::img::CCoordinates3< T >::operator*= ( const CCoordinates3< T > &  p) [inherited]
template<typename T>
CCoordinates3& mds::img::CCoordinates3< T >::operator*= ( const tComponent c) [inherited]
template<typename T>
CCoordinates3& mds::img::CCoordinates3< T >::operator+= ( const CCoordinates3< T > &  p) [inherited]
template<typename T>
CCoordinates3& mds::img::CCoordinates3< T >::operator+= ( const tComponent c) [inherited]
template<typename T>
CCoordinates3& mds::img::CCoordinates3< T >::operator-= ( const CCoordinates3< T > &  p) [inherited]
template<typename T>
CCoordinates3& mds::img::CCoordinates3< T >::operator-= ( const tComponent c) [inherited]
template<typename T>
CCoordinates3& mds::img::CCoordinates3< T >::operator/= ( const CCoordinates3< T > &  p) [inherited]
template<typename T>
CCoordinates3& mds::img::CCoordinates3< T >::operator/= ( const tComponent c) [inherited]
template<typename T>
CVector3& mds::img::CVector3< T >::operator= ( const tBase p)

Assignment operator.

template<typename T>
CCoordinates3& mds::img::CCoordinates3< T >::setX ( const tComponent px) [inherited]

Returns point coordinate.

template<typename T>
CCoordinates3& mds::img::CCoordinates3< T >::setXY ( const tComponent px,
const tComponent py 
) [inherited]

Sets XY point coordinates.

template<typename T>
CCoordinates3& mds::img::CCoordinates3< T >::setXYZ ( const tComponent px,
const tComponent py,
const tComponent pz 
) [inherited]

Sets all point coordinates.

template<typename T>
CCoordinates3& mds::img::CCoordinates3< T >::setY ( const tComponent py) [inherited]
template<typename T>
CCoordinates3& mds::img::CCoordinates3< T >::setZ ( const tComponent pz) [inherited]
static void mds::base::CLockableClass< CSmallObjectBase< C, M, A > >::unlock ( ) [static, inherited]

Locks the object.

template<typename T>
CVector3& mds::img::CVector3< T >::vectorProduct ( const CVector3< T > &  u,
const CVector3< T > &  v 
)

Vector product of two vectors.

template<typename T>
tComponent& mds::img::CCoordinates3< T >::x ( ) [inherited]

Returns reference to the x-coordinate.

template<typename T>
const tComponent& mds::img::CCoordinates3< T >::x ( ) const [inherited]
template<typename T>
tComponent& mds::img::CCoordinates3< T >::y ( ) [inherited]

Returns reference to the y-coordinate.

template<typename T>
const tComponent& mds::img::CCoordinates3< T >::y ( ) const [inherited]
template<typename T>
tComponent& mds::img::CCoordinates3< T >::z ( ) [inherited]

Returns reference to the z-coordinate.

template<typename T>
const tComponent& mds::img::CCoordinates3< T >::z ( ) const [inherited]

Friends And Related Function Documentation

template<typename T>
bool operator!= ( const CCoordinates3< T > &  l,
const CCoordinates3< T > &  r 
) [friend, inherited]
template<typename T>
CCoordinates3 operator* ( const CCoordinates3< T > &  l,
const CCoordinates3< T > &  r 
) [friend, inherited]
template<typename T>
CCoordinates3 operator+ ( const CCoordinates3< T > &  l,
const CCoordinates3< T > &  r 
) [friend, inherited]
template<typename T>
CCoordinates3 operator- ( const CCoordinates3< T > &  l,
const CCoordinates3< T > &  r 
) [friend, inherited]
template<typename T>
CCoordinates3 operator/ ( const CCoordinates3< T > &  l,
const CCoordinates3< T > &  r 
) [friend, inherited]
template<typename T>
bool operator== ( const CCoordinates3< T > &  l,
const CCoordinates3< T > &  r 
) [friend, inherited]

Member Data Documentation

template<typename T>
tComponent mds::img::CCoordinates3< T >::m_x [protected, inherited]

Coordinates in the 3D space.

template<typename T>
tComponent mds::img::CCoordinates3< T >::m_y [protected, inherited]
template<typename T>
tComponent mds::img::CCoordinates3< T >::m_z [protected, inherited]

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