Main Page | Class Hierarchy | Alphabetical List | Compound List | File List | Compound Members | File Members

srm::OrientationQuaternion Class Reference

The OrientationQuaternion class. The Orientation subclass in quaternion representation. More...

#include <Orientation.h>

Inheritance diagram for srm::OrientationQuaternion:

Inheritance graph
[legend]
Collaboration diagram for srm::OrientationQuaternion:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 OrientationQuaternion ()
 Default constructor.

 OrientationQuaternion (const SRM_Quaternion_Params &params)
 Constructor using quaternion parameter.

 OrientationQuaternion (SRM_Long_Float e0, SRM_Long_Float e1, SRM_Long_Float e2, SRM_Long_Float e3)
 Constructor using quaternion (e0, e1, e2, e3 ) parameters.

 OrientationQuaternion (const Orientation &other)
 Copy constructor.

virtual Orientationoperator= (const Orientation &other)
 Assignment operator.

virtual SRM_Quaternion_Params getQuaternion () const
 Gets the orientation in Quaternion representation.

virtual void setQuaternion (const SRM_Quaternion_Params &params)
 Sets the quaternion orientation representation.

virtual void setQuaternion (SRM_Long_Float e0, SRM_Long_Float e1, SRM_Long_Float e2, SRM_Long_Float e3)
 Sets the orientation using quaternion (e0, e1, e2, e3 ) parameters.

virtual std::string toString () const
 Returns the string for the quaternion orientation representation.

virtual SRM_Ori_Rep_Type getOriRep () const
 Returns the native orientation representation type.


Static Public Member Functions

bool isValidParams (const SRM_Quaternion_Params &params)
 Returns true if the quaternion parameters represent a valid orientation.

OrientationQuaternion compose (const Orientation &left, const Orientation &right)
 Composes the right orientation with the left orientation and returns the result in the output orientation, i.e., composed_ori = left*right.

bool equivParams (const SRM_Quaternion_Params &params1, const SRM_Quaternion_Params &params2, SRM_Long_Float tolerance=0.0)
 ref: Table 7


Protected Member Functions

virtual void _updateIntData () const
 the virtual function to convert the data from native representation to the internal representation

virtual void _updateRepData ()
 the virtual function to convert the data from internal representation to the native representation


Protected Attributes

SRM_Quaternion_Params _quaternion

Detailed Description

The OrientationQuaternion class. The Orientation subclass in quaternion representation.

Author:
David Shen

Definition at line 734 of file Orientation.h.


Constructor & Destructor Documentation

srm::OrientationQuaternion::OrientationQuaternion  ) 
 

Default constructor.

The default value is (0, 1, 0, 0).

srm::OrientationQuaternion::OrientationQuaternion const SRM_Quaternion_Params params  ) 
 

Constructor using quaternion parameter.

Note:
q = e0 + e1*i + e2*j + e3*k

e0^2 + e1^2 + e2^2 + e3^2 = 1

Exceptions:
This method throws srm::Exception

srm::OrientationQuaternion::OrientationQuaternion SRM_Long_Float  e0,
SRM_Long_Float  e1,
SRM_Long_Float  e2,
SRM_Long_Float  e3
 

Constructor using quaternion (e0, e1, e2, e3 ) parameters.

Note:
q = e0 + e1*i + e2*j + e3*k

e0^2 + e1^2 + e2^2 + e3^2 = 1

Parameters:
e0 in: the scale (real) parameter
e1 in: the vector multiplier in (i) direction
e2 in: the vector multiplier in (j) direction
e3 in: the vector multiplier in (k) direction
Exceptions:
This method throws srm::Exception


Member Function Documentation

OrientationQuaternion srm::OrientationQuaternion::compose const Orientation left,
const Orientation right
[static]
 

Composes the right orientation with the left orientation and returns the result in the output orientation, i.e., composed_ori = left*right.

Exceptions:
This method throws srm::Exception

virtual void srm::OrientationQuaternion::setQuaternion SRM_Long_Float  e0,
SRM_Long_Float  e1,
SRM_Long_Float  e2,
SRM_Long_Float  e3
[inline, virtual]
 

Sets the orientation using quaternion (e0, e1, e2, e3 ) parameters.

Note:
q = e0 + e1*i + e2*j + e3*k

e0^2 + e1^2 + e2^2 + e3^2 = 1

Parameters:
e0 in: the scale (real) parameter
e1 in: the vector multiplier in (i) direction
e2 in: the vector multiplier in (j) direction
e3 in: the vector multiplier in (k) direction
Exceptions:
This method throws srm::Exception

Reimplemented from srm::Orientation.

Definition at line 797 of file Orientation.h.

virtual void srm::OrientationQuaternion::setQuaternion const SRM_Quaternion_Params params  )  [virtual]
 

Sets the quaternion orientation representation.

Note:
q = e0 + e1*i + e2*j + e3*k

e0^2 + e1^2 + e2^2 + e3^2 = 1

Exceptions:
This method throws srm::Exception

Reimplemented from srm::Orientation.


The documentation for this class was generated from the following file:
Spatial Reference Model C++ API Version 4.4 - December 7, 2009
Copyright © 2009 SEDRIS Docs by Doxygen 1.3.2