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

This class is subject to change. Programs using this class may require changes with a new version of VirtualLab.
Class for describing a sequence of rotations about coordinate axes More...

Inheritance diagram for AxisRotationSequence:
OrientationDefinitionBase

Public Member Functions

int Add (SimpleRotation rotationToAdd)
 Adds a new rotation to the sequence More...
 
 AxisRotationSequence ()
 Default constructor. Creates an empty list that represents no rotations at all.
 
 AxisRotationSequence (AxisRotationSequence rotationSequence)
 Copy constructor More...
 
 AxisRotationSequence (List< SimpleRotation > rotationList, bool fixedAxes)
 Constructor that gets a list of simple rotations (SimpleRotation) and the flag indicating whether the rotation axes are fix. More...
 
 AxisRotationSequence (SimpleRotation[] rotationArray, bool fixedAxes)
 Constructor that gets an array of simple rotations (SimpleRotation) and the flag indicating whether the rotation axes are fix. More...
 
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...
 
string[] GetNamesOfAxes ()
 Gets the names of the axes about which it is rotated in each step. More...
 
override bool IsEquivalent (OrientationDefinitionBase orientation)
 Determines whether another orientation definition is equivalent. 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

int Count [get]
 Gets the number of rotations
 
override OrientationDefinitionType DefinitionType [get]
 Gets the OrientationDefinitionType associated with the current implementation of IOrientationDefinition
 
bool FixedAxes [get, set]
 Gets or sets a flag, indicating whether or not the axes are fix during rotation (if this is not defined by the definition type). If true, the rotations are done about the fix axes of the reference coordinate system. If false, each rotation is done about a non-fix axis of the current coordinate system (yet rotated by previous rotation list members).
 
override List< SimpleRotationListOfRotations [get]
 Get the complete list of simple rotations. Set has to be done via RotationSequenceList.
 
List< SimpleRotationRotationSequenceList [get, set]
 Get or set the complete list of simple rotations
 
SimpleRotation this[int index] [get, set]
 Indexer to get or set the rotation for a certain index More...
 
- 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.
Class for describing a sequence of rotations about coordinate axes

Constructor & Destructor Documentation

◆ AxisRotationSequence() [1/3]

AxisRotationSequence ( List< SimpleRotation rotationList,
bool  fixedAxes 
)

Constructor that gets a list of simple rotations (SimpleRotation) and the flag indicating whether the rotation axes are fix.

Parameters
rotationListList of simple rotations determining the rotation sequence
fixedAxesThat flag indicates whether or not the axes are fix during rotation. If true, the rotations are done about the fix axes of the reference coordinate system. If false, each rotation is done about a non-fix axis of the current coordinate system (yet rotated by previous rotation list members).

◆ AxisRotationSequence() [2/3]

AxisRotationSequence ( SimpleRotation[]  rotationArray,
bool  fixedAxes 
)

Constructor that gets an array of simple rotations (SimpleRotation) and the flag indicating whether the rotation axes are fix.

Parameters
rotationArrayArray of simple rotations determining the rotation sequence
fixedAxesThat flag indicates whether or not the axes are fix during rotation. If true, the rotations are done about the fix axes of the reference coordinate system. If false, each rotation is done about a non-fix axis of the current coordinate system (yet rotated by previous rotation list members).

◆ AxisRotationSequence() [3/3]

Copy constructor

Parameters
rotationSequenceRotation sequence to copy

Member Function Documentation

◆ Add()

int Add ( SimpleRotation  rotationToAdd)

Adds a new rotation to the sequence

Parameters
rotationToAddRotation to be added.
Returns
Index of the newly added rotation

◆ 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.

◆ GetNamesOfAxes()

string[] GetNamesOfAxes ( )

Gets the names of the axes about which it is rotated in each step.

Returns
"X", "Y", or "Z" for each step; appended with the correct number of apostrophes if not in fixes axes mode.

◆ IsEquivalent()

override bool IsEquivalent ( OrientationDefinitionBase  orientation)
virtual

Determines whether another orientation definition is equivalent.

Parameters
orientationIOrientationDefinition which has to be compared.
Returns
True, if the two objects are equivalent, false otherwise.

Reimplemented from OrientationDefinitionBase.

◆ ToString()

override string ToString ( )

Overridden ToString method.

Returns
A System.String that represents this instance.

Property Documentation

◆ this[int index]

SimpleRotation this[int index]
getset

Indexer to get or set the rotation for a certain index

Parameters
indexThe index of the rotation.
Returns
The rotation with the given index.