OpenVDB  1.1.0
Public Types | Public Member Functions | Static Public Member Functions | Static Protected Member Functions | List of all members
UnitaryMap Class Reference

A specialized linear transform that performs a unitary maping i.e. rotation and or reflection. More...

#include <Maps.h>

Inherits MapBase.

Public Types

typedef boost::shared_ptr
< UnitaryMap
Ptr
typedef boost::shared_ptr
< const UnitaryMap
ConstPtr
typedef Ptr(* MapFactory )()

Public Member Functions

 UnitaryMap ()
 default constructor makes an Idenity.
 UnitaryMap (const Vec3d &axis, double radians)
 UnitaryMap (Axis axis, double radians)
 UnitaryMap (const Mat3d &m)
 UnitaryMap (const Mat4d &m)
 UnitaryMap (const UnitaryMap &other)
 UnitaryMap (const UnitaryMap &first, const UnitaryMap &second)
 ~UnitaryMap ()
MapBase::Ptr copy () const
 Returns a MapBase::Ptr to a deep copy of *this.
Name type () const
 Return UnitaryMap.
bool isLinear () const
 Return true (a UnitaryMap is always linear).
bool hasUniformScale () const
 Return false (by convention true)
virtual bool isEqual (const MapBase &other) const
 Return true if this map is equal to the given map.
bool operator== (const UnitaryMap &other) const
bool operator!= (const UnitaryMap &other) const
Vec3d applyMap (const Vec3d &in) const
 Return the image of in under the map.
Vec3d applyInverseMap (const Vec3d &in) const
 Return the pre-image of in under the map.
Vec3d applyIJT (const Vec3d &in, const Vec3d &) const
 Return the transpose of the inverse Jacobian of the map applied to in.
Vec3d applyIJT (const Vec3d &in) const
 Return the transpose of the inverse Jacobian of the map applied to in.
Mat3d applyIJC (const Mat3d &in) const
 Return the Jacobian Curvature: zero for a linear map.
Mat3d applyIJC (const Mat3d &in, const Vec3d &, const Vec3d &) const
double determinant (const Vec3d &) const
 Return the determinant of the Jacobian, ignores argument.
double determinant () const
 Return the determinant of the Jacobian.
Vec3d voxelSize () const
 Returns the lengths of the images of the segments $(0,0,0)-(1,0,0)$, $(0,0,0)-(0,1,0)$, $(0,0,0)-(0,0,1)$.
Vec3d voxelSize (const Vec3d &) const
 Method to return the local size of a voxel.
void read (std::istream &is)
 read serialization
void write (std::ostream &os) const
 write serialization
std::string str () const
 string serialization, useful for debuging
AffineMap::Ptr getAffineMap () const
 Return AffineMap::Ptr to an AffineMap equivalent to *this.
template<typename MapT >
bool isType () const
 Return true if this map is of concrete type MapT (e.g., AffineMap).
MapBase::Ptr preRotate (double radians, Axis axis) const
 Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation.
MapBase::Ptr preTranslate (const Vec3d &t) const
 Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation.
MapBase::Ptr preScale (const Vec3d &v) const
 Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation.
MapBase::Ptr preShear (double shear, Axis axis0, Axis axis1) const
 Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation.
MapBase::Ptr postRotate (double radians, Axis axis) const
 Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation.
MapBase::Ptr postTranslate (const Vec3d &t) const
 Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation.
MapBase::Ptr postScale (const Vec3d &v) const
 Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation.
MapBase::Ptr postShear (double shear, Axis axis0, Axis axis1) const
 Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation.

Static Public Member Functions

static MapBase::Ptr create ()
 Return a MapBase::Ptr to a new UnitaryMap.
static bool isRegistered ()
static void registerMap ()
static Name mapType ()
 Return UnitaryMap.

Static Protected Member Functions

template<typename MapT >
static bool isEqualBase (const MapT &self, const MapBase &other)

Detailed Description

A specialized linear transform that performs a unitary maping i.e. rotation and or reflection.

Member Typedef Documentation

typedef boost::shared_ptr<const UnitaryMap> ConstPtr
typedef Ptr(* MapFactory)()
inherited
typedef boost::shared_ptr<UnitaryMap> Ptr

Constructor & Destructor Documentation

UnitaryMap ( )
inline

default constructor makes an Idenity.

UnitaryMap ( const Vec3d axis,
double  radians 
)
inline
UnitaryMap ( Axis  axis,
double  radians 
)
inline
UnitaryMap ( const Mat3d m)
inline
UnitaryMap ( const Mat4d m)
inline
UnitaryMap ( const UnitaryMap other)
inline
UnitaryMap ( const UnitaryMap first,
const UnitaryMap second 
)
inline
~UnitaryMap ( )
inline

Member Function Documentation

Mat3d applyIJC ( const Mat3d in) const
inlinevirtual

Return the Jacobian Curvature: zero for a linear map.

Implements MapBase.

Mat3d applyIJC ( const Mat3d in,
const Vec3d ,
const Vec3d  
) const
inlinevirtual

Implements MapBase.

Vec3d applyIJT ( const Vec3d in,
const Vec3d  
) const
inlinevirtual

Return the transpose of the inverse Jacobian of the map applied to in.

Ignores second argument

Implements MapBase.

Vec3d applyIJT ( const Vec3d in) const
inlinevirtual

Return the transpose of the inverse Jacobian of the map applied to in.

Implements MapBase.

Vec3d applyInverseMap ( const Vec3d in) const
inlinevirtual

Return the pre-image of in under the map.

Implements MapBase.

Vec3d applyMap ( const Vec3d in) const
inlinevirtual

Return the image of in under the map.

Implements MapBase.

MapBase::Ptr copy ( ) const
inlinevirtual

Returns a MapBase::Ptr to a deep copy of *this.

Implements MapBase.

static MapBase::Ptr create ( )
inlinestatic

Return a MapBase::Ptr to a new UnitaryMap.

double determinant ( const Vec3d ) const
inlinevirtual

Return the determinant of the Jacobian, ignores argument.

Implements MapBase.

double determinant ( ) const
inlinevirtual

Return the determinant of the Jacobian.

Implements MapBase.

AffineMap::Ptr getAffineMap ( ) const
inlinevirtual

Return AffineMap::Ptr to an AffineMap equivalent to *this.

Implements MapBase.

bool hasUniformScale ( ) const
inlinevirtual

Return false (by convention true)

Implements MapBase.

virtual bool isEqual ( const MapBase other) const
inlinevirtual

Return true if this map is equal to the given map.

Implements MapBase.

static bool isEqualBase ( const MapT &  self,
const MapBase other 
)
inlinestaticprotectedinherited
bool isLinear ( ) const
inlinevirtual

Return true (a UnitaryMap is always linear).

Implements MapBase.

static bool isRegistered ( )
inlinestatic
bool isType ( ) const
inlineinherited

Return true if this map is of concrete type MapT (e.g., AffineMap).

static Name mapType ( )
inlinestatic

Return UnitaryMap.

bool operator!= ( const UnitaryMap other) const
inline
bool operator== ( const UnitaryMap other) const
inline
MapBase::Ptr postRotate ( double  radians,
Axis  axis 
) const
inlinevirtual

Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation.

Implements MapBase.

MapBase::Ptr postScale ( const Vec3d v) const
inlinevirtual

Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation.

Implements MapBase.

MapBase::Ptr postShear ( double  shear,
Axis  axis0,
Axis  axis1 
) const
inlinevirtual

Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation.

Implements MapBase.

MapBase::Ptr postTranslate ( const Vec3d t) const
inlinevirtual

Return a MapBase::Ptr to a new map that is the result of postfixing the appropraite operation.

Implements MapBase.

MapBase::Ptr preRotate ( double  radians,
Axis  axis 
) const
inlinevirtual

Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation.

Implements MapBase.

MapBase::Ptr preScale ( const Vec3d v) const
inlinevirtual

Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation.

Implements MapBase.

MapBase::Ptr preShear ( double  shear,
Axis  axis0,
Axis  axis1 
) const
inlinevirtual

Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation.

Implements MapBase.

MapBase::Ptr preTranslate ( const Vec3d t) const
inlinevirtual

Return a MapBase::Ptr to a new map that is the result of prepending the appropraite operation.

Implements MapBase.

void read ( std::istream &  is)
inlinevirtual

read serialization

Implements MapBase.

static void registerMap ( )
inlinestatic
std::string str ( ) const
inlinevirtual

string serialization, useful for debuging

Implements MapBase.

Name type ( ) const
inlinevirtual

Return UnitaryMap.

Implements MapBase.

Vec3d voxelSize ( ) const
inlinevirtual

Returns the lengths of the images of the segments $(0,0,0)-(1,0,0)$, $(0,0,0)-(0,1,0)$, $(0,0,0)-(0,0,1)$.

Implements MapBase.

Vec3d voxelSize ( const Vec3d ) const
inlinevirtual

Method to return the local size of a voxel.

Implements MapBase.

void write ( std::ostream &  os) const
inlinevirtual

write serialization

Implements MapBase.


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