Main Page   Modules   Class Hierarchy   Alphabetical List   Compound List   Compound Members  

CSIBCRotationd Class Reference

Class representing a generic rotation object. More...

#include <SIBCRotationd.h>

List of all members.

Public Methods

Friends


Detailed Description

Class representing a generic rotation object.

This class is a generic method for representing rotations. It provides a method for representing a rotation without relying on it specific representation. It acts as an interface between different methods of storing rotations. For all operations on rotation objects, double-precision floating point numbers are used. Several useful functions for rotations can be found in Utility functions for angles and rotations.

There are several different specific methods used to store rotations, such as: rotation matricies as in CSIBCRotMatd, quaternions as in CSIBCQuaternion and CSIBCQuaterniond, euler angles, rotations about axis, etc.


Constructor & Destructor Documentation

CSIBCRotationd::CSIBCRotationd  
 

Default Constructor. Creates a rotation object representing the identity rotation.

See also:
CSIBCRotationd::SetIdentity

CSIBCRotationd::CSIBCRotationd const CSIBCQuaterniond   in_quat
 

Constructs a rotation object representing the rotation given by the quaternion in_quat.

Parameters:
in_quat  Quaternion representing the rotation for the new rotation object.

CSIBCRotationd::CSIBCRotationd const CSIBCRotMatd   in_matRot
 

Constructs a rotation object representing the rotation given by the rotation matrix in_matRot.

Parameters:
in_matRot  Rotation matrix representing the rotation for the new rotation object.

CSIBCRotationd::CSIBCRotationd const CSIBCVector3Dd   in_vctXYZAngles
 

Constructs a rotation object representing the rotation given by the set of euler angles (pitch-roll-yaw) in_vctXYZAngles.

Parameters:
in_vctXYZAngles  Set of euler angles representing the rotation for the new rotation object.

CSIBCRotationd::CSIBCRotationd double    in_dX,
double    in_dY,
double    in_dZ
 

Constructs a rotation object representing the rotation given by the set of euler angles (pitch-roll-yaw) in in_dX, in_dY and in_dZ.

Parameters:
in_dX  The euler angle containing the pitch angle (in radians).
in_dY  The euler angle containing the roll angle (in radians).
in_dZ  The euler angle containing the yaw angle (in radians).

CSIBCRotationd::CSIBCRotationd const E3DAxisType    in_axis,
const double    in_dAngle
 

Constructs a rotation object representing the rotation given by the rotation of in_dAngle radians about one of the major axis, determined by in_axis.

Parameters:
in_axis  Major axis of rotation.
in_dAngle  Angle of rotation about the given major axis (in radians).

CSIBCRotationd::CSIBCRotationd const CSIBCVector3Dd   in_vctAxis,
const double    in_dAngle
 

Constructs a rotation object representing the rotation given by the rotation of in_dAngle radians about an arbitrary axis, in_vctAxis.

Parameters:
in_vctAxis  Axis of rotation.
in_dAngle  Angle of rotation about the given axis (in radians).

CSIBCRotationd::CSIBCRotationd const CSIBCVector3Dd   in_vctFrom,
const CSIBCVector3Dd   in_vctTo
 

Constructs a rotation object representing the rotation required to rotated in_vctFrom to in_vctTo.

Parameters:
in_vctFrom  Starting point of rotation.
in_vctTo  Ending point of rotation.
See also:
CSIBCRotationd::Set(const CSIBCVector3Dd&, const CSIBCVector3Dd&, int&)


Member Function Documentation

bool CSIBCRotationd::AlignAxesToVct const E3DAxisType    in_eFirstAxis,
const CSIBCVector3Dd   in_vct1,
const E3DAxisType    in_eSecondAxis,
const CSIBCVector3Dd   in_vct2,
int &    out_bFlip
 

Aligns this rotation object first with the major axis given by in_eFirstAxis, with an axis vector of in_vct1, then aligns the rotation object with the major axis given by in_eSecondAxis, with an axis vector of in_vct2.

Parameters:
in_eFirstAxis  The major axis of the first alignment.
in_vct1  The world vector for the major axis defined by in_eFirstAxis.
in_eSecondAxis  The major axis of the secodn alignment.
in_vct2  The world vector for the major axis defined by in_eSecondAxis.
out_bFlip  Set to true if the current rotation object is diametrically opposed to in_vct1, during the first alignment, or in_vct2, during the second alignment. If true, indicates that a sudden flip in the rotation object has occurred, false otherwise.
Returns:
bool true if the alignment was successful, false if the alignment axes in in_eFirstAxis and in_eSecondAxis are the same.
See also:
CSIBCRotationd::AlignToX , CSIBCRotationd::AlignToY , CSIBCRotationd::AlignToZ

bool CSIBCRotationd::AlignToX const CSIBCVector3Dd   in_vct,
int &    out_bFlip
 

Aligns this rotation object to align with a given X world axis.

Parameters:
in_vct  X-axis for the world vector to align with.
out_bFlip  Set to true if the current rotation object is diametrically opposed to in_vct, and indicates that a sudden flip in the rotation object has occurred, false otherwise.
Returns:
bool true if the alignment was successful, false if the input vector in_vct is the null vector.
See also:
CSIBCRotationd::AlignToY , CSIBCRotationd::AlignToZ , CSIBCRotationd::MinAlignToX , CSIBCRotationd::AlignAxesToVct

bool CSIBCRotationd::AlignToY const CSIBCVector3Dd   in_vct,
int &    out_bFlip
 

Aligns this rotation object to align with a given Y world axis.

Parameters:
in_vct  Y-axis for the world vector to align with.
out_bFlip  Set to true if the current rotation object is diametrically opposed to in_vct, and indicates that a sudden flip in the rotation object has occurred, false otherwise.
Returns:
bool true if the alignment was successful, false if the input vector in_vct is the null vector.
See also:
CSIBCRotationd::AlignToX , CSIBCRotationd::AlignToZ , CSIBCRotationd::MinAlignToY , CSIBCRotationd::AlignAxesToVct

bool CSIBCRotationd::AlignToZ const CSIBCVector3Dd   in_vct,
int &    out_bFlip
 

Aligns this rotation object to align with a given Z world axis.

Parameters:
in_vct  Z-axis for the world vector to align with.
out_bFlip  Set to true if the current rotation object is diametrically opposed to in_vct, and indicates that a sudden flip in the rotation object has occurred, false otherwise.
Returns:
bool true if the alignment was successful, false if the input vector in_vct is the null vector.
See also:
CSIBCRotationd::AlignToX , CSIBCRotationd::AlignToY , CSIBCRotationd::MinAlignToZ , CSIBCRotationd::AlignAxesToVct

void CSIBCRotationd::GetAxisAngle CSIBCVector3Dd   out_vctAxis,
double &    out_dAngle
 

Gets the axis rotation representation of this rotation object.

Parameters:
out_vctAxis  Receives the arbitrary axis of rotation of this rotation object.
out_dAngle  Receives the angle of rotation (in radians) about the axis of rotation for this rotation object.
See also:
CSIBCRotationd::GetXYZAngles , CSIBCRotationd::GetQuat , CSIBCRotationd::GetMatrix

CSIBCRotMatd & CSIBCRotationd::GetMatrix CSIBCRotMatd   out_matRot
 

Gets the rotation matrix representation of this rotation object.

Parameters:
out_matRot  Receives the rotation matrix representation of this rotation object.
Returns:
CSIBCRotMatd& Reference to out_matRot.
See also:
CSIBCRotationd::GetQuat , CSIBCRotationd::GetMatrix , CSIBCRotationd::GetXYZAngles , CSIBCRotationd::GetAxisAngles

const CSIBCRotMatd * CSIBCRotationd::GetMatrix  
 

Gets the rotation matrix representation of this rotation object. Note that the return value of this function should not be freed.

Returns:
CSIBCRotMatd* Pointer to the rotation matrix representation of this rotation object.
See also:
CSIBCRotationd::GetQuat , CSIBCRotationd::GetMatrix , CSIBCRotationd::GetXYZAngles , CSIBCRotationd::GetAxisAngles

CSIBCQuaterniond & CSIBCRotationd::GetQuat CSIBCQuaterniond   out_quat
 

Gets the quaternion representation of this rotation object.

Parameters:
out_quat  Receives the quaternion representation of this object.
Returns:
CISBCQuaterniond& Reference to out_quat.
See also:
CSIBCRotationd::GetMatrix , CSIBCRotationd::GetXYZAngles , CSIBCRotationd::GetAxisAngles

void CSIBCRotationd::GetXYZAngles double &    out_dX,
double &    out_dY,
double &    out_dZ
 

Gets the euler angles representation of this rotation object (pitch-roll-yaw in radians).

Parameters:
out_dX  Receives the pitch euler angle representation of this rotation object.
out_dY  Receives the roll euler angle representation of this rotation object.
out_dZ  Receives the yaw euler angle representation of this rotation object.
See also:
CSIBCRotationd::GetXYZAngles , CSIBCRotationd::GetQuat , CSIBCRotationd::GetMatrix , CSIBCRotationd::GetAxisAngles

CSIBCVector3Dd & CSIBCRotationd::GetXYZAngles CSIBCVector3Dd   out_vctXYZAngles
 

Gets the euler angles representation of this rotation object (pitch-roll-yaw, in radians).

Parameters:
out_vctXYZAngles  Receives the euler angles representation of this rotation object.
Returns:
CSIBCVector3Dd& Reference to out_vctXYZAngles.
See also:
CSIBCRotationd::GetXYZAngles , CSIBCRotationd::GetQuat , CSIBCRotationd::GetMatrix , CSIBCRotationd::GetAxisAngles

CSIBCRotationd & CSIBCRotationd::Interpolate CSIBCRotationd &    in_rot1,
CSIBCRotationd &    in_rot2,
const double    in_dU
 

Sets this rotation object to the interpolation between the rotation objects in_rot1, and in_rot2 at a point of in_dU between them.

Parameters:
in_rot1  Starting point for rotation interpolation.
in_rot2  Ending point for rotation interpolation.
in_dU  Interpolation between in_rot1 and in_rot2, in the range [0.0f, 1.0f].
Returns:
CSIBCRotationd& Reference to this rotation object.

CSIBCRotationd & CSIBCRotationd::Invert void   
 

Sets this rotation object to its inverse.

Returns:
CSIBCRotationd& Reference to this rotation object.
See also:
CSIBCRotationd::Invert

CSIBCRotationd & CSIBCRotationd::Invert CSIBCRotationd &    in_rot
 

Sets this rotation object to the inverse of in_rot.

Parameters:
in_rot  Rotation object containing the inverse to set as this rotation object.
Returns:
CSIBCRotationd& Reference to this rotation object.
See also:
CSIBCRotationd::Invert

void CSIBCRotationd::InvRotateVct const CSIBCVector3Dd   in_vcts,
const long    in_lNbVcts,
CSIBCVector3Dd   out_vcts
 

Applies the inverse of this rotation object to multiple vectors.

Parameters:
in_vcts  Array of vectors.
in_lNbVcts  Number of vectors in in_vcts (and out_vcts).
out_vcts  Array of vectors receiving the array rotated vectors.
See also:
CSIBCRotationd::InvRotateVct , CSIBCRotationd::RotateVct

CSIBCVector3Dd & CSIBCRotationd::InvRotateVct const CSIBCVector3Dd   in_vct,
CSIBCVector3Dd   out_vct
 

Applies the inverse of this rotation object to a single vector.

Parameters:
in_vct  The vector to be rotated.
out_vct  Receives the rotated vector.
Returns:
CSIBCVector3Dd& Reference to out_vct.
See also:
CSIBCRotationd::InvRotateVct , CSIBCRotationd::RotateVct

bool CSIBCRotationd::IsAlmostIdentity const double &    in_rdTolerance = PICO_EPS const
 

Determines whether this rotation is the identity rotation (no rotation). Since this function uses floating-point comparison, a threshhold value of in_dEpsilon is used for equality comparison.

Parameters:
in_dEpsilon  Floating-point comparison error range. Defaults to PICO_EPS.
Returns:
bool true if the rotation object is the identity rotation, false otherwise.
See also:
CSIBCRotationd::IsIdentity , CSIBCRotationd::SetIdentity

bool CSIBCRotationd::IsIdentity  
 

Determines whether this rotation is the identity rotation (no rotation). Note that this function uses no floating-point error range, meaning that the rotation object must be exactly the identity rotation.

Returns:
bool true if the rotation object is the identity rotation, false otherwise.
See also:
CSIBCRotationd::IsAlmostIdentity , CSIBCRotationd::SetIdentity

CSIBCRotationd & CSIBCRotationd::LeftMul CSIBCRotationd &    in_rot
 

Computes the multiplication of in_rot and this rotation object (in_rot * this), and stores the result in this rotation object.

Parameters:
in_rot  Rotation object in the multiplication (on the left).
Returns:
CSIBCRotationd& Reference to this rotation object.
See also:
CSIBCRotationd::Mul , CSIBCRotationd::LeftMul , CSIBCRotationd::MulUsingEulerAnglesTarget , CSIBCRotationd::MulAndUpdateEulerAngles

bool CSIBCRotationd::MinAlignToX const CSIBCVector3Dd   in_vct,
int &    out_bFlip
 

Sets this rotation object to align with a given X world axis, using the minimal angular displacement.

Parameters:
in_vct  X-axis for the world vector to align with.
out_bFlip  Set to true if the current rotation object is diametrically opposed to in_vct, and indicates that a sudden flip in the rotation object has occurred, false otherwise.
Returns:
bool true if the alignment was successful, false if the input vector in_vct is the null vector.
See also:
CSIBCRotationd::MinAlignToY , CSIBCRotationd::MinAlignToZ , CSIBCRotationd::AlignToX , CSIBCRotationd::AlignAxesToVct

bool CSIBCRotationd::MinAlignToY const CSIBCVector3Dd   in_vct,
int &    out_bFlip
 

Sets this rotation object to align with a given Y world axis, using the minimal angular displacement.

Parameters:
in_vct  Y-axis for the world vector to align with.
out_bFlip  Set to true if the current rotation object is diametrically opposed to in_vct, and indicates that a sudden flip in the rotation object has occurred, false otherwise.
Returns:
bool true if the alignment was successful, false if the input vector in_vct is the null vector.
See also:
CSIBCRotationd::MinAlignToX , CSIBCRotationd::MinAlignToZ , CSIBCRotationd::AlignToY , CSIBCRotationd::AlignAxesToVct

bool CSIBCRotationd::MinAlignToZ const CSIBCVector3Dd   in_vct,
int &    out_bFlip
 

Sets this rotation object to align with a given Z world axis, using the minimal angular displacement.

Parameters:
in_vct  Z-axis for the world vector to align with.
out_bFlip  Set to true if the current rotation object is diametrically opposed to in_vct, and indicates that a sudden flip in the rotation object has occurred, false otherwise.
Returns:
bool true if the alignment was successful, false if the input vector in_vct is the null vector.
See also:
CSIBCRotationd::MinAlignToX , CSIBCRotationd::MinAlignToY , CSIBCRotationd::AlignToZ , CSIBCRotationd::AlignAxesToVct

CSIBCRotationd & CSIBCRotationd::Mul CSIBCRotationd &    in_rot
 

Computes the multiplication of this rotation object and in_rot (this * in_rot), and stores the result in this rotation object.

Parameters:
in_rot  Rotation object in the multiplication (on the right).
Returns:
CSIBCRotationd& Reference to this rotation object.
See also:
CSIBCRotationd::Mul , CSIBCRotationd::LeftMul , CSIBCRotationd::MulUsingEulerAnglesTarget , CSIBCRotationd::MulAndUpdateEulerAngles

CSIBCRotationd & CSIBCRotationd::Mul CSIBCRotationd &    in_rot1,
CSIBCRotationd &    in_rot2
 

Computes the multiplication of in_rot1 and in_rot2 (in_rot1 * in_rot2), and stores the result in this rotation object.

Parameters:
in_rot1  First rotation object in the multiplication (on the left).
in_rot2  Second rotation object in the multiplication (on the right).
Returns:
CSIBCRotationd& Reference to this rotation object.
See also:
CSIBCRotationd::Mul , CSIBCRotationd::LeftMul , CSIBCRotationd::MulUsingEulerAnglesTarget , CSIBCRotationd::MulAndUpdateEulerAngles

CSIBCRotationd & CSIBCRotationd::MulAndUpdateEulerAngles CSIBCRotationd &    in_rot1,
CSIBCRotationd &    in_rot2,
unsigned long    in_ulUseRot1OrUseRot2AsTarget
 

Computes the multiplication of in_rot1 and in_rot2 (in_rot1 * in_rot2), and stores the result in this rotation object. The result sets the euler angles associated with the resultant rotation object closest to the set of euler angles given by in_rot1 or in_rot2 depending on the value of in_ulUseRot1OrUseRot2AsTarget.

Parameters:
in_rot1  First rotation object in the multiplication (on the left).
in_rot2  Second rotation object in the multiplication (on the right).
in_ulUseRot1OrUseRot2AsTarget  If 1, uses in_rot1 as the euler angle target, if 2, uses in_rot2 as the euler angle target.
Returns:
CSIBCRotationd& Reference to this rotation object.
See also:
CSIBCRotationd::Mul , CSIBCRotationd::LeftMul , CSIBCRotationd::MulUsingEulerAnglesTarget

CSIBCRotationd & CSIBCRotationd::MulUsingEulerAnglesTarget CSIBCRotationd &    in_rot1,
CSIBCRotationd &    in_rot2,
CSIBCVector3Dd   in_oEulerAngles
 

Computes the multiplication of in_rot1 and in_rot2 (in_rot1 * in_rot2), and stores the result in this rotation object. The result sets the euler angles associated with the resultant rotation object closest to the set of euler angles given by in_oEulerAngles.

Parameters:
in_rot1  First rotation object in the multiplication (on the left).
in_rot2  Second rotation object in the multiplication (on the right).
in_oEulerAngles  Euler angles most closely representing the desired euler angles (used only with euler angle extraction of this object).
Returns:
CSIBCRotationd& Reference to this rotation object.
See also:
CSIBCRotationd::Mul , CSIBCRotationd::LeftMul , CSIBCRotationd::MulAndUpdateEulerAngles

bool CSIBCRotationd::operator!= const CSIBCRotationd &    in_rot const
 

Not implemented yet

bool CSIBCRotationd::operator== const CSIBCRotationd &    in_rot const
 

Not implemented yet

void CSIBCRotationd::RotateVct const CSIBCVector3Dd   in_vcts,
const long    in_lNbVcts,
CSIBCVector3Dd   out_vcts
 

Applies this rotation object to multiple vectors.

Parameters:
in_vcts  Array of vectors.
in_lNbVcts  Number of vectors in in_vcts (and out_vcts).
out_vcts  Array of vectors receiving the array rotated vectors.
See also:
CSIBCRotationd::RotateVct , CSIBCRotationd::InvRotateVct

CSIBCVector3Dd & CSIBCRotationd::RotateVct const CSIBCVector3Dd   in_vct,
CSIBCVector3Dd   out_vct
 

Applies this rotation object to a single vector.

Parameters:
in_vct  The vector to be rotated.
out_vct  Receives the rotated vector.
Returns:
CSIBCVector3Dd& Reference to out_vct.
See also:
CSIBCRotationd::RotateVct , CSIBCRotationd::InvRotateVct

CSIBCRotationd & CSIBCRotationd::Set const CSIBCVector3Dd   in_vctX,
const CSIBCVector3Dd   in_vctY,
const CSIBCVector3Dd   in_vctZ
 

Sets this rotation object to the rotation defined by the X, Y and Z axis of a rotation given by in_vctX, in_vctY and in_vctZ respectively. It is up to the user to ensure that the axis are unity vectors orthogonal to each other.

Parameters:
in_vctX  X-axis for the rotation to set this rotation object equal to.
in_vctY  Y-axis for the rotation to set this rotation object equal to.
in_vctZ  Z-axis for the rotation to set this rotation object equal to.

bool CSIBCRotationd::Set const CSIBCVector3Dd   in_vctFrom,
const CSIBCVector3Dd   in_vctTo,
int &    out_bFlip
 

Sets this object to a rotation that will rotate around the normal of the plane defined by the two given vectors in_vctFrom and in_vctTo (right-hand rule), with an angle defined by the angle between those two vectors.

Parameters:
in_vctFrom  Starting point of rotation.
in_vctTo  Ending point of rotation.
out_bFlip  Set to true if in_vctFrom and in_vctTo are diametrically opposed, in this case, an arbitrary rotation is chosen between in_vctFrom and in_vctTo, false otherwise.
Returns:
bool true if the operation was successful and the rotation object was set, false if one or both of the input vectors is the null vector.
See also:
CSIBCRotationd::Set

CSIBCRotationd & CSIBCRotationd::Set const CSIBCVector3Dd   in_vctAxis,
const double    in_dAngle
 

Sets this rotation object from a rotation angle in_dAngle about an arbitrary axis given by in_vctAxis.

Parameters:
in_vctAxis  Axis of rotation.
in_dAngle  Angle of rotation about in_vctAxis to set this rotation objecd equal to.
Returns:
CSIBCRotationd& Reference to this rotation object.
See also:
CSIBCRotationd::Set

CSIBCRotationd & CSIBCRotationd::Set const E3DAxisType    in_axis,
const double    in_dAngle
 

Sets this rotation object from a rotation angle in_dAngle about a major axis given by in_axis.

Parameters:
in_axis  Axis of rotation.
in_dAngle  Angle of rotation about in_axis to set this rotation object equal to.
Returns:
CSIBCRotationd& Reference to this rotation object.
See also:
CSIBCRotationd::Set

CSIBCRotationd & CSIBCRotationd::Set double    in_dX,
double    in_dY,
double    in_dZ
 

Sets this rotation object from a set of euler angles (pitch-roll-yaw, in radians), in_dX, in_dY and in_dZ.

Parameters:
in_dX  Pitch euler angle representing the rotation to set this object equal to.
in_dY  Roll euler angle representing the rotation to set this object equal to.
in_dZ  Yaw euler angle representing the rotation to set this object equal to.
Returns:
CSIBCRotationd& Reference to this rotation object.
See also:
CSIBCRotationd::Set

CSIBCRotationd & CSIBCRotationd::Set const CSIBCVector3Dd   in_vct
 

Sets this rotation object from a set of euler angles (pitch-roll-yaw, in radians), in_vctXYZAngles.

Parameters:
in_vctXYZAngles  Sets of euler angles representing the rotation to set this object equal to.
Returns:
CSIBCRotationd& Reference to this rotation object.
See also:
CSIBCRotationd::Set

CSIBCRotationd & CSIBCRotationd::Set const CSIBCRotMatd   in_matRot
 

Sets this rotation object from a rotation matrix, in_matRot.

Parameters:
in_rot  Rotation matrix representing the rotation to set this object equal to.
Returns:
CSIBCRotationd& Reference to this rotation object.
See also:
CSIBCRotationd::Set

CSIBCRotationd & CSIBCRotationd::Set const CSIBCQuaterniond   in_quat
 

Sets this rotation object from a quaternionion, in_quat.

Parameters:
in_rot  Quaternion representing the rotation to set this object equal to.
Returns:
CSIBCRotationd& Reference to this rotation object.
See also:
CSIBCRotationd::Set

CSIBCRotationd & CSIBCRotationd::Set const CSIBCRotationd &    in_rot
 

Sets this rotation object from another rotation object in_rot.

Parameters:
in_rot  Rotation object to set this object equal to.
Returns:
CSIBCRotationd& Reference to this rotation object.
See also:
CSIBCRotationd::Set

CSIBCRotationd & CSIBCRotationd::SetIdentity  
 

Set this rotation to the identity rotation (no rotation).

Returns:
CSIBCRotationd& Reference to this rotation object.
See also:
CSIBCRotationd::IsIdentity , CSIBCRotationd::IsAlmostIdentity


Friends And Related Function Documentation

bool AreAlmostEqual const CSIBCRotationd &    in_rot1,
const CSIBCRotationd &    in_rot2,
const double    in_dEpsilon = PICO_EPS
[friend]
 

Not implemented yet

CSIBCVector3Dd& MapDirSpaceToSpace CSIBCRotationd &    in_rotFrom,
CSIBCRotationd &    in_rotTo,
const CSIBCVector3Dd   in_vctDir,
CSIBCVector3Dd   out_vctDir
[friend]
 

Maps a direction vector in_vctDir from one orientation space in_rotFrom, to an another orientation space in_rotTo.

Parameters:
in_rotFrom  Rotation object representing the orientation space which in_vctDir is defined in.
in_vctTo  The orientation space to map in_vctDir to.
in_vctDir  The direction vector, defined in world orientation space.
out_vctDir  Receives in_vctDir mapped from world orientation space to in_rotFrom. return CSIBCVector3Dd& Reference to out_vctDir
See also:
CSIBCRotationd::MapDirSpaceToWorld , CSIBCRotationd::MapDirWorldToSpace

CSIBCVector3Dd& MapDirSpaceToWorld CSIBCRotationd &    in_rotFrom,
const CSIBCVector3Dd   in_vctDir,
CSIBCVector3Dd   out_vctDir
[friend]
 

Maps a direction vector in_vctDir from an orientation space, given by in_rotFrom, to world orientation space.

Parameters:
in_rotFrom  Rotation object representing the orientation space which in_vctDir is defined in.
in_vctDir  The direction vector, defined in in_rotFrom.
out_vctDir  Receives in_vctDir mapped from in_rotFrom to world orientation space. return CSIBCVector3Dd& Reference to out_vctDir
See also:
CSIBCRotationd::MapDirWorldToSpace , CSIBCRotationd::MapDirSpaceToSpace

CSIBCVector3Dd& MapDirWorldToSpace CSIBCRotationd &    in_rotTo,
const CSIBCVector3Dd   in_vctDir,
CSIBCVector3Dd   out_vctDir
[friend]
 

Maps a direction vector in_vctDir from world orientation space, to an orientation space given by in_rotTo.

Parameters:
in_vctTo  The orientation space to map in_vctDir to.
in_vctDir  The direction vector, defined in world orientation space.
out_vctDir  Receives in_vctDir mapped from world orientation space to in_rotFrom. return CSIBCVector3Dd& Reference to out_vctDir
See also:
CSIBCRotationd::MapDirSpaceToWorld , CSIBCRotationd::MapDirSpaceToSpace


The documentation for this class was generated from the following files: © Copyright 2001-2003 Avid Technology, Inc. All rights reserved.

© Copyright 2001-2003 Avid Technology, Inc. All rights reserved.