Programming Reference for VirtualLab Fusion  2022.1
Public Member Functions | Properties | List of all members
OrientationByCartesianAngles Class Reference

This class is subject to change. Programs using this class may require changes with a new version of VirtualLab.
A class for defining orientations by Cartesian angles, i.e. the angles between the projection of the direction to be defined onto the x-z-plane and the z-axis (alpha), and between the projection of the direction to be defined onto the y-z-plane and the z-axis (beta). More...

Inheritance diagram for OrientationByCartesianAngles:
OrientationDefinitionBase

Public Member Functions

override OrientationDefinitionBase Clone ()
 Creates a new object that is a copy of the current instance. More...
 
override Quaternion CorrespondingQuaternion ()
 Gets the quaternion corresponding to this orientation definition. More...
 
override bool Equals (object otherObject, EqualityIntent equalityIntent)
 Determines whether the specified Object is equal to this instance. Please note: If just the resulting orientation of this and the otherObject shall be compared, the method IsEquivalent of the base class should be used. More...
 
 OrientationByCartesianAngles ()
 Default constructor, setting alpha, beta and zeta to zero.
 
 OrientationByCartesianAngles (double alpha, double beta)
 Constructor with the Cartesian angles only. More...
 
 OrientationByCartesianAngles (double alpha, double beta, double zeta)
 Constructor with all angles More...
 
 OrientationByCartesianAngles (double alpha, double beta, double zeta, bool cartesianAnglesApplicationBeforeZetaRotation)
 Constructor with all parameters More...
 
 OrientationByCartesianAngles (OrientationByCartesianAngles orientationToCopy)
 Copy constructor More...
 
void SetCartesianAngles (double alpha, double beta)
 Sets the direction angles alpha, beta and gamma. The squared cosines of alpha, beta and gamma have to sum to 1. More...
 
override string ToString ()
 Overridden ToString method. More...
 
- Public Member Functions inherited from OrientationDefinitionBase
abstract OrientationDefinitionBase Clone ()
 Deep copy of this. More...
 
abstract Quaternion CorrespondingQuaternion ()
 Gets the quaternion corresponding to this orientation definition. More...
 
virtual bool IsEquivalent (OrientationDefinitionBase orientationDefinitionToCompare)
 // Gets the rotation matrix corresponding to this orientation definition. // More...
 
 OrientationDefinitionBase ()
 Default constructor
 

Properties

double AngleAlpha [get]
 Gets and sets the Cartesian angle alpha, which is the angle between the z-axis and the projection of the direction to be defined onto the x-z-plane.
 
double AngleBeta [get]
 Gets and sets the Cartesian angle beta, which is the angle between the projection of the direction to be defined onto the y-z-plane and the z-axis.
 
double AngleZeta [get, set]
 Gets and sets the angle zeta which is a rotation about the z-axis. This rotation can be performed either before or after applying the direction angles, which is defined by CartesianAnglesApplicationBeforeZetaRotation. If this rotation is performed first, the flag AnglesReferToCSRotatedByZeta indicates, if the direction angles refer to the not rotated CS anyway.
 
bool CartesianAnglesApplicationBeforeZetaRotation [get, set]
 Gets or sets if the inclination of the z-axis by applying the direction angles shall be done before the rotation about the z-axis (by AngleZeta).
 
override OrientationDefinitionType DefinitionType [get]
 Gets the OrientationDefinitionType associated with the current implementation of IOrientationDefinition
 
override List< SimpleRotationListOfRotations [get]
 Gets a list of simple rotations, describing the complete rotation as a sequence
 
- Properties inherited from OrientationDefinitionBase
abstract OrientationDefinitionType DefinitionType [get]
 Gets the OrientationDefinitionType associated with the current implementation of IOrientationDefinition
 
abstract List< SimpleRotationListOfRotations [get]
 Gets a list of simple rotations, describing the complete rotation as a sequence
 

Additional Inherited Members

- Static Public Member Functions inherited from OrientationDefinitionBase
static OrientationDefinitionBase ConvertOrientationDefinition (OrientationDefinitionBase sourceOrientation, OrientationDefinitionType targetType)
 Help method which converts any orientation definition object into an equivalent definition object of another type. More...
 

Detailed Description

This class is subject to change. Programs using this class may require changes with a new version of VirtualLab.
A class for defining orientations by Cartesian angles, i.e. the angles between the projection of the direction to be defined onto the x-z-plane and the z-axis (alpha), and between the projection of the direction to be defined onto the y-z-plane and the z-axis (beta).

Constructor & Destructor Documentation

◆ OrientationByCartesianAngles() [1/4]

OrientationByCartesianAngles ( double  alpha,
double  beta 
)

Constructor with the Cartesian angles only.

Parameters
alphaAngle between the projection of the direction to be defined onto the x-z-plane and the z-axis.
betaAngle between the projection of the direction to be defined onto the y-z-plane and the z-axis.

◆ OrientationByCartesianAngles() [2/4]

OrientationByCartesianAngles ( double  alpha,
double  beta,
double  zeta 
)

Constructor with all angles

Parameters
alphaAngle between the projection of the direction to be defined onto the x-z-plane and the z-axis.
betaAngle between the projection of the direction to be defined onto the y-z-plane and the z-axis.
zetaangle zeta which is a rotation about the z-axis.

◆ OrientationByCartesianAngles() [3/4]

OrientationByCartesianAngles ( double  alpha,
double  beta,
double  zeta,
bool  cartesianAnglesApplicationBeforeZetaRotation 
)

Constructor with all parameters

Parameters
alphaAngle between the projection of the direction to be defined onto the x-z-plane and the z-axis.
betaAngle between the projection of the direction to be defined onto the y-z-plane and the z-axis.
zetaangle zeta which is a rotation about the z-axis.
cartesianAnglesApplicationBeforeZetaRotationflag, if the inclination of the z-axis by applying the direction angles shall be done before the rotation about the z-axis (by AngleZeta).

◆ OrientationByCartesianAngles() [4/4]

Copy constructor

Parameters
orientationToCopyorientation object to copy

Member Function Documentation

◆ Clone()

override OrientationDefinitionBase Clone ( )
virtual

Creates a new object that is a copy of the current instance.

Returns
A new object that is a copy of this instance.

Implements OrientationDefinitionBase.

◆ CorrespondingQuaternion()

override Quaternion CorrespondingQuaternion ( )
virtual

Gets the quaternion corresponding to this orientation definition.

Returns
The quaternion corresponding to this orientation definition.

Implements OrientationDefinitionBase.

◆ Equals()

override bool Equals ( object  otherObject,
EqualityIntent  equalityIntent 
)

Determines whether the specified Object is equal to this instance. Please note: If just the resulting orientation of this and the otherObject shall be compared, the method IsEquivalent of the base class should be used.

Parameters
otherObjectThe Object to compare with this instance.
equalityIntentDefines what kind of equality you want to check when comparing two objects, for example all values or physical equality.
Returns
true if the specified Object is equal to this instance; otherwise, false.

◆ SetCartesianAngles()

void SetCartesianAngles ( double  alpha,
double  beta 
)

Sets the direction angles alpha, beta and gamma. The squared cosines of alpha, beta and gamma have to sum to 1.

Parameters
alphaAngle between x-axis and the direction to define.
betaAngle between y-axis and the direction to define.

◆ ToString()

override string ToString ( )

Overridden ToString method.

Returns
A System.String that represents this instance.