Main Page | Packages | Class Hierarchy | Alphabetical List | Compound List | Namespace Members | Compound Members | Related Pages

SRM.Orientation Class Reference

The Orientation base class. More...

Inheritance diagram for SRM.Orientation:

Inheritance graph
[legend]
List of all members.

Public Member Functions

SRM_Matrix_3x3 getMatrix3x3 ()
 Gets the orientation in matrix 3x3 representation.

SRM_Axis_Angle_Params getAxisAngle () throws SrmException
 Gets the orientation in (axis, angle) representation.

SRM_Euler_Angles_ZXZ_Params getEulerAnglesZXZ ()
 Gets the orientation in Euler angles (ZXZ) representation.

SRM_Tait_Bryan_Angles_Params getTaitBryanAngles ()
 Gets the orientation in Tait-Bryan angles representation.

SRM_Quaternion_Params getQuaternion () throws SrmException
 Gets the orientation in Quaternion representation.

void setMatrix3x3 (SRM_Matrix_3x3 params) throws SrmException
 Sets the Matrix 3x3 orientation representation.

void setMatrix3x3 (double a11, double a12, double a13, double a21, double a22, double a23, double a31, double a32, double a33) throws SrmException
 Sets the orientation using elements of the matrix (mat) 3x3 parameter.

void setAxisAngle (SRM_Axis_Angle_Params params) throws SrmException
 Sets the (axis, angle) orientation representation.

void setAxisAngle (double[] axis, double angle_in_rad) throws SrmException
 Sets the orientation using (axis, angle) parameters.

void setEulerAnglesZXZ (SRM_Euler_Angles_ZXZ_Params params) throws SrmException
 Sets the Euler angles (ZXZ) orientation representation.

void setEulerAnglesZXZ (double spin, double nutation, double precession) throws SrmException
 Sets the orientation using spin, nutation, and precession parameters.

void setTaitBryanAngles (SRM_Tait_Bryan_Angles_Params params) throws SrmException
 Sets the Tait-Bryan angles orientation representation.

void setTaitBryanAngles (double roll, double pitch, double yaw) throws SrmException
 Sets the orientation using roll, pitch and yaw parameters.

void setQuaternion (SRM_Quaternion_Params params) throws SrmException
 Sets the quaternion orientation representation.

void setQuaternion (double e0, double e1, double e2, double e3) throws SrmException
 Sets the orientation using quaternion (e0, e1, e2, e3 ) parameters.

abstract String toString ()
 Returns the string for the orientation values.

abstract SRM_Ori_Rep getOriRep ()
 Returns the native orientation representation type.

double[] transformVector (double[] vec) throws SrmException
 Applies this orientation to the input vector and sets the result in the return vector.

boolean isEqual (Orientation ori) throws SrmException
 The equality operator.


Static Public Member Functions

final boolean equivalence (Orientation instance1, Orientation instance2, double tolerance) throws SrmException
final boolean equivalence (Orientation instance1, Orientation instance2)

Static Public Attributes

final double epsilon = Const.EPSILON
 Epsilon value for equivalence tests.


Protected Member Functions

SRM_Matrix_3x3 _get_matrix_base ()
 Internal matrix 3x3 representation (for now) used for calculations.

SRM_Matrix_3x3 _get_matrix_base_unch ()
void _set_matrix_base (SRM_Matrix_3x3 mat)
boolean _get_internal_data_is_current ()
 is set to true when the internal data is equivalent to the representation class data.

void _set_internal_data_is_current (boolean internal_data_is_current)
abstract void _updateIntData ()
 the virtual function to convert the data from native representation to the internal representation

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


Detailed Description

The Orientation base class.

Author:
David Shen
See also:
BaseSRF_3D


Member Function Documentation

boolean SRM.Orientation.isEqual Orientation  ori  )  throws SrmException
 

The equality operator.

Note:
This operator is deprecated. Use equivalence() method.

void SRM.Orientation.setAxisAngle double  axis[],
double  angle_in_rad
throws SrmException
 

Sets the orientation using (axis, angle) parameters.

Parameters:
axis in: the axis of rotation, which is a unit vector
angle in: the angle of rotation, which is in radians in the range of [-2PI, 2PI]

void SRM.Orientation.setAxisAngle SRM_Axis_Angle_Params  params  )  throws SrmException
 

Sets the (axis, angle) orientation representation.

Note:
the input axis is a unit vector

the input angle is in radians in the range of [-2PI, 2PI]

Reimplemented in SRM.OrientationAxisAngle.

void SRM.Orientation.setEulerAnglesZXZ double  spin,
double  nutation,
double  precession
throws SrmException
 

Sets the orientation using spin, nutation, and precession parameters.

Parameters:
spin in: the spin angle, which is in radians in the range of [-2PI, 2PI]
nutation in: the nutation angle is in radians in the range of [-2PI, 2PI]
precession in: the precession angle, which is in radians in the range of [-2PI, 2PI]

void SRM.Orientation.setEulerAnglesZXZ SRM_Euler_Angles_ZXZ_Params  params  )  throws SrmException
 

Sets the Euler angles (ZXZ) orientation representation.

Note:
the spin angle is in radians in the range of [-2PI, 2PI]

the nutation angle is in radians in the range of [-2PI, 2PI]

the precession angle is in radians in the range of [-2PI, 2PI]

Reimplemented in SRM.OrientationEulerAnglesZXZ.

void SRM.Orientation.setMatrix3x3 double  a11,
double  a12,
double  a13,
double  a21,
double  a22,
double  a23,
double  a31,
double  a32,
double  a33
throws SrmException
 

Sets the orientation using elements of the matrix (mat) 3x3 parameter.

Note:
the INV(mat)=TRANSPOSE(mat), consequently, mat*TRANSPOSE(mat)=I

void SRM.Orientation.setMatrix3x3 SRM_Matrix_3x3  params  )  throws SrmException
 

Sets the Matrix 3x3 orientation representation.

Note:
the INV(mat)=TRANSPOSE(mat), consequently, mat*TRANSPOSE(mat)=I

Reimplemented in SRM.OrientationMatrix.

void SRM.Orientation.setQuaternion double  e0,
double  e1,
double  e2,
double  e3
throws SrmException
 

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

void SRM.Orientation.setQuaternion SRM_Quaternion_Params  params  )  throws SrmException
 

Sets the quaternion orientation representation.

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

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

Reimplemented in SRM.OrientationQuaternion.

void SRM.Orientation.setTaitBryanAngles double  roll,
double  pitch,
double  yaw
throws SrmException
 

Sets the orientation using roll, pitch and yaw parameters.

Parameters:
roll in: the roll angle, which is in radians in the range of [-2PI, 2PI]
pitch in: the pitch angle, which is in radians in the range of [-2PI, 2PI]
yaw in: the yaw angle, which is in radians in the range of [-2PI, 2PI]

void SRM.Orientation.setTaitBryanAngles SRM_Tait_Bryan_Angles_Params  params  )  throws SrmException
 

Sets the Tait-Bryan angles orientation representation.

Note:
the roll angle is in radians in the range of [-2PI, 2PI]

the pitch angle is in radians in the range of [-2PI, 2PI]

the yaw angle is in radians in the range of [-2PI, 2PI]

Exceptions:
This method throws srm::Exception

Reimplemented in SRM.OrientationTaitBryanAngles.

double [] SRM.Orientation.transformVector double  vec[]  )  throws SrmException
 

Applies this orientation to the input vector and sets the result in the return vector.

Note:
The input/output arrays are of size 3.
Exceptions:
This method throws srm::Exception


The documentation for this class was generated from the following file:
Spatial Reference Model Java API Version 4.4.0 - January 21, 2010
Copyright © 2010 SEDRIS Docs by Doxygen 1.3.2