Shift
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Pages
Shift.Quaternion Struct Reference

An efficient mathematical representation for three dimensional rotations. More...

Inheritance diagram for Shift.Quaternion:

Public Member Functions

 Quaternion (float x, float y, float z, float w)
 Constructs a quaternion with X, Y, Z and W from four values. More...
 
 Quaternion (Vector3 value, float w)
 Constructs a quaternion with X, Y, Z from Vector3 and rotation component from a scalar. More...
 
 Quaternion (Vector4 value)
 Constructs a quaternion from Vector4. More...
 
void Conjugate ()
 Transforms this quaternion into its conjugated version. More...
 
override bool Equals (object obj)
 Compares whether current instance is equal to specified Object. More...
 
bool Equals (Quaternion other)
 Compares whether current instance is equal to specified Quaternion. More...
 
override int GetHashCode ()
 Gets the hash code of this Quaternion. More...
 
float Length ()
 Returns the magnitude of the quaternion components. More...
 
float LengthSquared ()
 Returns the squared magnitude of the quaternion components. More...
 
void Normalize ()
 Scales the quaternion magnitude to unit length. More...
 
override string ToString ()
 Returns a String representation of this Quaternion in the format: {X:[X] Y:[Y] Z:[Z] W:[W]} More...
 
Vector4 ToVector4 ()
 Gets a Vector4 representation for this object. More...
 

Static Public Member Functions

static Quaternion Add (Quaternion quaternion1, Quaternion quaternion2)
 Creates a new Quaternion that contains the sum of two quaternions. More...
 
static void Add (ref Quaternion quaternion1, ref Quaternion quaternion2, out Quaternion result)
 Creates a new Quaternion that contains the sum of two quaternions. More...
 
static Quaternion Concatenate (Quaternion value1, Quaternion value2)
 Creates a new Quaternion that contains concatenation between two quaternion. More...
 
static void Concatenate (ref Quaternion value1, ref Quaternion value2, out Quaternion result)
 Creates a new Quaternion that contains concatenation between two quaternion. More...
 
static Quaternion Conjugate (Quaternion value)
 Creates a new Quaternion that contains conjugated version of the specified quaternion. More...
 
static void Conjugate (ref Quaternion value, out Quaternion result)
 Creates a new Quaternion that contains conjugated version of the specified quaternion. More...
 
static Quaternion CreateFromAxisAngle (Vector3 axis, float angle)
 Creates a new Quaternion from the specified axis and angle. More...
 
static void CreateFromAxisAngle (ref Vector3 axis, float angle, out Quaternion result)
 Creates a new Quaternion from the specified axis and angle. More...
 
static Quaternion CreateFromRotationMatrix (Matrix matrix)
 Creates a new Quaternion from the specified Matrix. More...
 
static void CreateFromRotationMatrix (ref Matrix matrix, out Quaternion result)
 Creates a new Quaternion from the specified Matrix. More...
 
static Quaternion CreateFromYawPitchRoll (float yaw, float pitch, float roll)
 Creates a new Quaternion from the specified yaw, pitch and roll angles. More...
 
static void CreateFromYawPitchRoll (float yaw, float pitch, float roll, out Quaternion result)
 Creates a new Quaternion from the specified yaw, pitch and roll angles. More...
 
static Quaternion Divide (Quaternion quaternion1, Quaternion quaternion2)
 Divides a Quaternion by the other Quaternion. More...
 
static void Divide (ref Quaternion quaternion1, ref Quaternion quaternion2, out Quaternion result)
 Divides a Quaternion by the other Quaternion. More...
 
static float Dot (Quaternion quaternion1, Quaternion quaternion2)
 Returns a dot product of two quaternions. More...
 
static void Dot (ref Quaternion quaternion1, ref Quaternion quaternion2, out float result)
 Returns a dot product of two quaternions. More...
 
static Quaternion Inverse (Quaternion quaternion)
 Returns the inverse quaternion which represents the opposite rotation. More...
 
static void Inverse (ref Quaternion quaternion, out Quaternion result)
 Returns the inverse quaternion which represents the opposite rotation. More...
 
static Quaternion Lerp (Quaternion quaternion1, Quaternion quaternion2, float amount)
 Performs a linear blend between two quaternions. More...
 
static void Lerp (ref Quaternion quaternion1, ref Quaternion quaternion2, float amount, out Quaternion result)
 Performs a linear blend between two quaternions. More...
 
static Quaternion Slerp (Quaternion quaternion1, Quaternion quaternion2, float amount)
 Performs a spherical linear blend between two quaternions. More...
 
static void Slerp (ref Quaternion quaternion1, ref Quaternion quaternion2, float amount, out Quaternion result)
 Performs a spherical linear blend between two quaternions. More...
 
static Quaternion Subtract (Quaternion quaternion1, Quaternion quaternion2)
 Creates a new Quaternion that contains subtraction of one Quaternion from another. More...
 
static void Subtract (ref Quaternion quaternion1, ref Quaternion quaternion2, out Quaternion result)
 Creates a new Quaternion that contains subtraction of one Quaternion from another. More...
 
static Quaternion Multiply (Quaternion quaternion1, Quaternion quaternion2)
 Creates a new Quaternion that contains a multiplication of two quaternions. More...
 
static Quaternion Multiply (Quaternion quaternion1, float scaleFactor)
 Creates a new Quaternion that contains a multiplication of Quaternion and a scalar. More...
 
static void Multiply (ref Quaternion quaternion1, float scaleFactor, out Quaternion result)
 Creates a new Quaternion that contains a multiplication of Quaternion and a scalar. More...
 
static void Multiply (ref Quaternion quaternion1, ref Quaternion quaternion2, out Quaternion result)
 Creates a new Quaternion that contains a multiplication of two quaternions. More...
 
static Quaternion Negate (Quaternion quaternion)
 Flips the sign of the all the quaternion components. More...
 
static void Negate (ref Quaternion quaternion, out Quaternion result)
 Flips the sign of the all the quaternion components. More...
 
static Quaternion Normalize (Quaternion quaternion)
 Scales the quaternion magnitude to unit length. More...
 
static void Normalize (ref Quaternion quaternion, out Quaternion result)
 Scales the quaternion magnitude to unit length. More...
 
static Quaternion operator+ (Quaternion quaternion1, Quaternion quaternion2)
 Adds two quaternions. More...
 
static Quaternion operator/ (Quaternion quaternion1, Quaternion quaternion2)
 Divides a Quaternion by the other Quaternion. More...
 
static bool operator== (Quaternion quaternion1, Quaternion quaternion2)
 Compares whether two Quaternion instances are equal. More...
 
static bool operator!= (Quaternion quaternion1, Quaternion quaternion2)
 Compares whether two Quaternion instances are not equal. More...
 
static Quaternion operator* (Quaternion quaternion1, Quaternion quaternion2)
 Multiplies two quaternions. More...
 
static Quaternion operator* (Quaternion quaternion1, float scaleFactor)
 Multiplies the components of quaternion by a scalar. More...
 
static Quaternion operator- (Quaternion quaternion1, Quaternion quaternion2)
 Subtracts a Quaternion from a Quaternion. More...
 
static Quaternion operator- (Quaternion quaternion)
 Flips the sign of the all the quaternion components. More...
 

Public Attributes

float X
 The x coordinate of this Quaternion. More...
 
float Y
 The y coordinate of this Quaternion. More...
 
float Z
 The z coordinate of this Quaternion. More...
 
float W
 The rotation component of this Quaternion. More...
 

Static Public Attributes

static readonly int SizeInBytes = System.Runtime.InteropServices.Marshal.SizeOf(new Quaternion())
 Defines the size of the Quaternion struct in bytes. More...
 

Properties

static Quaternion Identity [get]
 Returns a quaternion representing no rotation. More...
 

Detailed Description

An efficient mathematical representation for three dimensional rotations.

Definition at line 12 of file Quaternion.cs.

Constructor & Destructor Documentation

Shift.Quaternion.Quaternion ( float  x,
float  y,
float  z,
float  w 
)
inline

Constructs a quaternion with X, Y, Z and W from four values.

Parameters
xThe x coordinate in 3d-space.
yThe y coordinate in 3d-space.
zThe z coordinate in 3d-space.
wThe rotation component.

Definition at line 60 of file Quaternion.cs.

Shift.Quaternion.Quaternion ( Vector3  value,
float  w 
)
inline

Constructs a quaternion with X, Y, Z from Vector3 and rotation component from a scalar.

Parameters
valueThe x, y, z coordinates in 3d-space.
wThe rotation component.

Definition at line 73 of file Quaternion.cs.

Shift.Quaternion.Quaternion ( Vector4  value)
inline

Constructs a quaternion from Vector4.

Parameters
valueThe x, y, z coordinates in 3d-space and the rotation component.

Definition at line 85 of file Quaternion.cs.

Member Function Documentation

static Quaternion Shift.Quaternion.Add ( Quaternion  quaternion1,
Quaternion  quaternion2 
)
inlinestatic

Creates a new Quaternion that contains the sum of two quaternions.

Parameters
quaternion1Source Quaternion.
quaternion2Source Quaternion.
Returns
The result of the quaternion addition.

Definition at line 117 of file Quaternion.cs.

static void Shift.Quaternion.Add ( ref Quaternion  quaternion1,
ref Quaternion  quaternion2,
out Quaternion  result 
)
inlinestatic

Creates a new Quaternion that contains the sum of two quaternions.

Parameters
quaternion1Source Quaternion.
quaternion2Source Quaternion.
resultThe result of the quaternion addition as an output parameter.

Definition at line 133 of file Quaternion.cs.

static Quaternion Shift.Quaternion.Concatenate ( Quaternion  value1,
Quaternion  value2 
)
inlinestatic

Creates a new Quaternion that contains concatenation between two quaternion.

Parameters
value1The first Quaternion to concatenate.
value2The second Quaternion to concatenate.
Returns
The result of rotation of value1 followed by value2 rotation.

Definition at line 147 of file Quaternion.cs.

static void Shift.Quaternion.Concatenate ( ref Quaternion  value1,
ref Quaternion  value2,
out Quaternion  result 
)
inlinestatic

Creates a new Quaternion that contains concatenation between two quaternion.

Parameters
value1The first Quaternion to concatenate.
value2The second Quaternion to concatenate.
resultThe result of rotation of value1 followed by value2 rotation as an output parameter.

Definition at line 175 of file Quaternion.cs.

void Shift.Quaternion.Conjugate ( )
inline

Transforms this quaternion into its conjugated version.

Definition at line 196 of file Quaternion.cs.

static Quaternion Shift.Quaternion.Conjugate ( Quaternion  value)
inlinestatic

Creates a new Quaternion that contains conjugated version of the specified quaternion.

Parameters
valueThe quaternion which values will be used to create the conjugated version.
Returns
The conjugate version of the specified quaternion.

Definition at line 208 of file Quaternion.cs.

static void Shift.Quaternion.Conjugate ( ref Quaternion  value,
out Quaternion  result 
)
inlinestatic

Creates a new Quaternion that contains conjugated version of the specified quaternion.

Parameters
valueThe quaternion which values will be used to create the conjugated version.
resultThe conjugated version of the specified quaternion as an output parameter.

Definition at line 218 of file Quaternion.cs.

static Quaternion Shift.Quaternion.CreateFromAxisAngle ( Vector3  axis,
float  angle 
)
inlinestatic

Creates a new Quaternion from the specified axis and angle.

Parameters
axisThe axis of rotation.
angleThe angle in radians.
Returns
The new quaternion builded from axis and angle.

Definition at line 232 of file Quaternion.cs.

static void Shift.Quaternion.CreateFromAxisAngle ( ref Vector3  axis,
float  angle,
out Quaternion  result 
)
inlinestatic

Creates a new Quaternion from the specified axis and angle.

Parameters
axisThe axis of rotation.
angleThe angle in radians.
resultThe new quaternion builded from axis and angle as an output parameter.

Definition at line 246 of file Quaternion.cs.

static Quaternion Shift.Quaternion.CreateFromRotationMatrix ( Matrix  matrix)
inlinestatic

Creates a new Quaternion from the specified Matrix.

Parameters
matrixThe rotation matrix.
Returns
A quaternion composed from the rotation part of the matrix.

Definition at line 262 of file Quaternion.cs.

static void Shift.Quaternion.CreateFromRotationMatrix ( ref Matrix  matrix,
out Quaternion  result 
)
inlinestatic

Creates a new Quaternion from the specified Matrix.

Parameters
matrixThe rotation matrix.
resultA quaternion composed from the rotation part of the matrix as an output parameter.

Definition at line 321 of file Quaternion.cs.

static Quaternion Shift.Quaternion.CreateFromYawPitchRoll ( float  yaw,
float  pitch,
float  roll 
)
inlinestatic

Creates a new Quaternion from the specified yaw, pitch and roll angles.

Parameters
yawYaw around the y axis in radians.
pitchPitch around the x axis in radians.
rollRoll around the z axis in radians.
Returns
A new quaternion from the concatenated yaw, pitch, and roll angles.

Definition at line 377 of file Quaternion.cs.

static void Shift.Quaternion.CreateFromYawPitchRoll ( float  yaw,
float  pitch,
float  roll,
out Quaternion  result 
)
inlinestatic

Creates a new Quaternion from the specified yaw, pitch and roll angles.

Parameters
yawYaw around the y axis in radians.
pitchPitch around the x axis in radians.
rollRoll around the z axis in radians.
resultA new quaternion from the concatenated yaw, pitch, and roll angles as an output parameter.

Definition at line 403 of file Quaternion.cs.

static Quaternion Shift.Quaternion.Divide ( Quaternion  quaternion1,
Quaternion  quaternion2 
)
inlinestatic

Divides a Quaternion by the other Quaternion.

Parameters
quaternion1Source Quaternion.
quaternion2Divisor Quaternion.
Returns
The result of dividing the quaternions.

Definition at line 428 of file Quaternion.cs.

static void Shift.Quaternion.Divide ( ref Quaternion  quaternion1,
ref Quaternion  quaternion2,
out Quaternion  result 
)
inlinestatic

Divides a Quaternion by the other Quaternion.

Parameters
quaternion1Source Quaternion.
quaternion2Divisor Quaternion.
resultThe result of dividing the quaternions as an output parameter.

Definition at line 458 of file Quaternion.cs.

static float Shift.Quaternion.Dot ( Quaternion  quaternion1,
Quaternion  quaternion2 
)
inlinestatic

Returns a dot product of two quaternions.

Parameters
quaternion1The first quaternion.
quaternion2The second quaternion.
Returns
The dot product of two quaternions.

Definition at line 486 of file Quaternion.cs.

static void Shift.Quaternion.Dot ( ref Quaternion  quaternion1,
ref Quaternion  quaternion2,
out float  result 
)
inlinestatic

Returns a dot product of two quaternions.

Parameters
quaternion1The first quaternion.
quaternion2The second quaternion.
resultThe dot product of two quaternions as an output parameter.

Definition at line 497 of file Quaternion.cs.

override bool Shift.Quaternion.Equals ( object  obj)
inline

Compares whether current instance is equal to specified Object.

Parameters
objThe Object to compare.
Returns
true if the instances are equal; false otherwise.

Definition at line 507 of file Quaternion.cs.

bool Shift.Quaternion.Equals ( Quaternion  other)
inline

Compares whether current instance is equal to specified Quaternion.

Parameters
otherThe Quaternion to compare.
Returns
true if the instances are equal; false otherwise.

Definition at line 519 of file Quaternion.cs.

override int Shift.Quaternion.GetHashCode ( )
inline

Gets the hash code of this Quaternion.

Returns
Hash code of this Quaternion.

Definition at line 531 of file Quaternion.cs.

static Quaternion Shift.Quaternion.Inverse ( Quaternion  quaternion)
inlinestatic

Returns the inverse quaternion which represents the opposite rotation.

Parameters
quaternionSource Quaternion.
Returns
The inverse quaternion.

Definition at line 541 of file Quaternion.cs.

static void Shift.Quaternion.Inverse ( ref Quaternion  quaternion,
out Quaternion  result 
)
inlinestatic

Returns the inverse quaternion which represents the opposite rotation.

Parameters
quaternionSource Quaternion.
resultThe inverse quaternion as an output parameter.

Definition at line 558 of file Quaternion.cs.

float Shift.Quaternion.Length ( )
inline

Returns the magnitude of the quaternion components.

Returns
The magnitude of the quaternion components.

Definition at line 572 of file Quaternion.cs.

float Shift.Quaternion.LengthSquared ( )
inline

Returns the squared magnitude of the quaternion components.

Returns
The squared magnitude of the quaternion components.

Definition at line 581 of file Quaternion.cs.

static Quaternion Shift.Quaternion.Lerp ( Quaternion  quaternion1,
Quaternion  quaternion2,
float  amount 
)
inlinestatic

Performs a linear blend between two quaternions.

Parameters
quaternion1Source Quaternion.
quaternion2Source Quaternion.
amountThe blend amount where 0 returns quaternion1 and 1 quaternion2 .
Returns
The result of linear blending between two quaternions.

Definition at line 593 of file Quaternion.cs.

static void Shift.Quaternion.Lerp ( ref Quaternion  quaternion1,
ref Quaternion  quaternion2,
float  amount,
out Quaternion  result 
)
inlinestatic

Performs a linear blend between two quaternions.

Parameters
quaternion1Source Quaternion.
quaternion2Source Quaternion.
amountThe blend amount where 0 returns quaternion1 and 1 quaternion2 .
resultThe result of linear blending between two quaternions as an output parameter.

Definition at line 629 of file Quaternion.cs.

static Quaternion Shift.Quaternion.Multiply ( Quaternion  quaternion1,
Quaternion  quaternion2 
)
inlinestatic

Creates a new Quaternion that contains a multiplication of two quaternions.

Parameters
quaternion1Source Quaternion.
quaternion2Source Quaternion.
Returns
The result of the quaternion multiplication.

Definition at line 769 of file Quaternion.cs.

static Quaternion Shift.Quaternion.Multiply ( Quaternion  quaternion1,
float  scaleFactor 
)
inlinestatic

Creates a new Quaternion that contains a multiplication of Quaternion and a scalar.

Parameters
quaternion1Source Quaternion.
scaleFactorScalar value.
Returns
The result of the quaternion multiplication with a scalar.

Definition at line 797 of file Quaternion.cs.

static void Shift.Quaternion.Multiply ( ref Quaternion  quaternion1,
float  scaleFactor,
out Quaternion  result 
)
inlinestatic

Creates a new Quaternion that contains a multiplication of Quaternion and a scalar.

Parameters
quaternion1Source Quaternion.
scaleFactorScalar value.
resultThe result of the quaternion multiplication with a scalar as an output parameter.

Definition at line 813 of file Quaternion.cs.

static void Shift.Quaternion.Multiply ( ref Quaternion  quaternion1,
ref Quaternion  quaternion2,
out Quaternion  result 
)
inlinestatic

Creates a new Quaternion that contains a multiplication of two quaternions.

Parameters
quaternion1Source Quaternion.
quaternion2Source Quaternion.
resultThe result of the quaternion multiplication as an output parameter.

Definition at line 827 of file Quaternion.cs.

static Quaternion Shift.Quaternion.Negate ( Quaternion  quaternion)
inlinestatic

Flips the sign of the all the quaternion components.

Parameters
quaternionSource Quaternion.
Returns
The result of the quaternion negation.

Definition at line 852 of file Quaternion.cs.

static void Shift.Quaternion.Negate ( ref Quaternion  quaternion,
out Quaternion  result 
)
inlinestatic

Flips the sign of the all the quaternion components.

Parameters
quaternionSource Quaternion.
resultThe result of the quaternion negation as an output parameter.

Definition at line 862 of file Quaternion.cs.

void Shift.Quaternion.Normalize ( )
inline

Scales the quaternion magnitude to unit length.

Definition at line 873 of file Quaternion.cs.

static Quaternion Shift.Quaternion.Normalize ( Quaternion  quaternion)
inlinestatic

Scales the quaternion magnitude to unit length.

Parameters
quaternionSource Quaternion.
Returns
The unit length quaternion.

Definition at line 887 of file Quaternion.cs.

static void Shift.Quaternion.Normalize ( ref Quaternion  quaternion,
out Quaternion  result 
)
inlinestatic

Scales the quaternion magnitude to unit length.

Parameters
quaternionSource Quaternion.
resultThe unit length quaternion an output parameter.

Definition at line 903 of file Quaternion.cs.

static bool Shift.Quaternion.operator!= ( Quaternion  quaternion1,
Quaternion  quaternion2 
)
inlinestatic

Compares whether two Quaternion instances are not equal.

Parameters
quaternion1Quaternion instance on the left of the not equal sign.
quaternion2Quaternion instance on the right of the not equal sign.
Returns
true if the instances are not equal; false otherwise.

Definition at line 994 of file Quaternion.cs.

static Quaternion Shift.Quaternion.operator* ( Quaternion  quaternion1,
Quaternion  quaternion2 
)
inlinestatic

Multiplies two quaternions.

Parameters
quaternion1Source Quaternion on the left of the mul sign.
quaternion2Source Quaternion on the right of the mul sign.
Returns
Result of the quaternions multiplication.

Definition at line 1009 of file Quaternion.cs.

static Quaternion Shift.Quaternion.operator* ( Quaternion  quaternion1,
float  scaleFactor 
)
inlinestatic

Multiplies the components of quaternion by a scalar.

Parameters
quaternion1Source Vector3 on the left of the mul sign.
scaleFactorScalar value on the right of the mul sign.
Returns
Result of the quaternion multiplication with a scalar.

Definition at line 1037 of file Quaternion.cs.

static Quaternion Shift.Quaternion.operator+ ( Quaternion  quaternion1,
Quaternion  quaternion2 
)
inlinestatic

Adds two quaternions.

Parameters
quaternion1Source Quaternion on the left of the add sign.
quaternion2Source Quaternion on the right of the add sign.
Returns
Sum of the vectors.

Definition at line 937 of file Quaternion.cs.

static Quaternion Shift.Quaternion.operator- ( Quaternion  quaternion1,
Quaternion  quaternion2 
)
inlinestatic

Subtracts a Quaternion from a Quaternion.

Parameters
quaternion1Source Vector3 on the left of the sub sign.
quaternion2Source Vector3 on the right of the sub sign.
Returns
Result of the quaternion subtraction.

Definition at line 1053 of file Quaternion.cs.

static Quaternion Shift.Quaternion.operator- ( Quaternion  quaternion)
inlinestatic

Flips the sign of the all the quaternion components.

Parameters
quaternionSource Quaternion on the right of the sub sign.
Returns
The result of the quaternion negation.

Definition at line 1069 of file Quaternion.cs.

static Quaternion Shift.Quaternion.operator/ ( Quaternion  quaternion1,
Quaternion  quaternion2 
)
inlinestatic

Divides a Quaternion by the other Quaternion.

Parameters
quaternion1Source Quaternion on the left of the div sign.
quaternion2Divisor Quaternion on the right of the div sign.
Returns
The result of dividing the quaternions.

Definition at line 953 of file Quaternion.cs.

static bool Shift.Quaternion.operator== ( Quaternion  quaternion1,
Quaternion  quaternion2 
)
inlinestatic

Compares whether two Quaternion instances are equal.

Parameters
quaternion1Quaternion instance on the left of the equal sign.
quaternion2Quaternion instance on the right of the equal sign.
Returns
true if the instances are equal; false otherwise.

Definition at line 983 of file Quaternion.cs.

static Quaternion Shift.Quaternion.Slerp ( Quaternion  quaternion1,
Quaternion  quaternion2,
float  amount 
)
inlinestatic

Performs a spherical linear blend between two quaternions.

Parameters
quaternion1Source Quaternion.
quaternion2Source Quaternion.
amountThe blend amount where 0 returns quaternion1 and 1 quaternion2 .
Returns
The result of spherical linear blending between two quaternions.

Definition at line 664 of file Quaternion.cs.

static void Shift.Quaternion.Slerp ( ref Quaternion  quaternion1,
ref Quaternion  quaternion2,
float  amount,
out Quaternion  result 
)
inlinestatic

Performs a spherical linear blend between two quaternions.

Parameters
quaternion1Source Quaternion.
quaternion2Source Quaternion.
amountThe blend amount where 0 returns quaternion1 and 1 quaternion2 .
resultThe result of spherical linear blending between two quaternions as an output parameter.

Definition at line 703 of file Quaternion.cs.

static Quaternion Shift.Quaternion.Subtract ( Quaternion  quaternion1,
Quaternion  quaternion2 
)
inlinestatic

Creates a new Quaternion that contains subtraction of one Quaternion from another.

Parameters
quaternion1Source Quaternion.
quaternion2Source Quaternion.
Returns
The result of the quaternion subtraction.

Definition at line 739 of file Quaternion.cs.

static void Shift.Quaternion.Subtract ( ref Quaternion  quaternion1,
ref Quaternion  quaternion2,
out Quaternion  result 
)
inlinestatic

Creates a new Quaternion that contains subtraction of one Quaternion from another.

Parameters
quaternion1Source Quaternion.
quaternion2Source Quaternion.
resultThe result of the quaternion subtraction as an output parameter.

Definition at line 755 of file Quaternion.cs.

override string Shift.Quaternion.ToString ( )
inline

Returns a String representation of this Quaternion in the format: {X:[X] Y:[Y] Z:[Z] W:[W]}

Returns
A String representation of this Quaternion.

Definition at line 917 of file Quaternion.cs.

Vector4 Shift.Quaternion.ToVector4 ( )
inline

Gets a Vector4 representation for this object.

Returns
A Vector4 representation for this object.

Definition at line 926 of file Quaternion.cs.

Member Data Documentation

readonly int Shift.Quaternion.SizeInBytes = System.Runtime.InteropServices.Marshal.SizeOf(new Quaternion())
static

Defines the size of the Quaternion struct in bytes.

Definition at line 17 of file Quaternion.cs.

float Shift.Quaternion.W

The rotation component of this Quaternion.

Definition at line 51 of file Quaternion.cs.

float Shift.Quaternion.X

The x coordinate of this Quaternion.

Definition at line 33 of file Quaternion.cs.

float Shift.Quaternion.Y

The y coordinate of this Quaternion.

Definition at line 39 of file Quaternion.cs.

float Shift.Quaternion.Z

The z coordinate of this Quaternion.

Definition at line 45 of file Quaternion.cs.

Property Documentation

Quaternion Shift.Quaternion.Identity
staticget

Returns a quaternion representing no rotation.

Definition at line 25 of file Quaternion.cs.


The documentation for this struct was generated from the following file: