﻿Quaternion Structure

# Quaternion Structure

RAGE Plugin Hook Documentation

[This is preliminary documentation and is subject to change.]

Defines a four dimensional mathematical quaternion.

Namespace:  Rage
Assembly:  RagePluginHook (in RagePluginHook.dll) Version: 0.0.0.0 (0.56.1131.11510)
Syntax

```[SerializableAttribute]
public struct Quaternion : IEquatable<Quaternion>```

The Quaternion type exposes the following members.

Constructors

NameDescription
Quaternion(Vector3, Single)
Initializes a new instance of the Quaternion structure.
Quaternion(Single, Single, Single, Single)
Initializes a new instance of the Quaternion structure.
Top
Properties

NameDescription
Angle
Gets the angle of the quaternion. The quaternion must be normalized.
Axis
Gets the axis components of the quaternion. The quaternion must be normalized.
Identity
Gets the identity Quaternion (0, 0, 0, 1).
IsIdentity
Gets a value indicating whether this instance is an identity Quaternion.
Top
Methods

NameDescription
Barycentric(Quaternion, Quaternion, Quaternion, Single, Single)
Returns a Quaternion containing the 4D Cartesian coordinates of a point specified in Barycentric coordinates relative to a 2D triangle.
Barycentric(Quaternion, Quaternion, Quaternion, Single, Single, Quaternion)
Returns a Quaternion containing the 4D Cartesian coordinates of a point specified in Barycentric coordinates relative to a 2D triangle.
Conjugate
Conjugates the quaternion.
Conjugate(Quaternion)
Conjugates a quaternion.
Conjugate(Quaternion, Quaternion)
Conjugates a quaternion.
Divide(Quaternion, Quaternion)
Divides a quaternion by another.
Divide(Quaternion, Quaternion, Quaternion)
Divides a quaternion by another.
Dot
Calculates the dot product of two quaternions.
Equals(Object)
Returns a value that indicates whether the current instance is equal to a specified object.
(Overrides ValueTypeEquals(Object).)
Equals(Quaternion)
Returns a value that indicates whether the current instance is equal to the specified object.
Equals(Quaternion, Quaternion)
Determines whether the specified object instances are considered equal.
Exponential(Quaternion)
Exponentiates a quaternion.
Exponential(Quaternion, Quaternion)
Exponentiates a quaternion.
FromAxes
FromRotation
GetAxes
GetAxis
GetHashCode
Returns the hash code for this instance.
(Overrides ValueTypeGetHashCode.)
Invert
Conjugates and renormalizes the quaternion.
Invert(Quaternion)
Conjugates and renormalizes the quaternion.
Invert(Quaternion, Quaternion)
Conjugates and renormalizes the quaternion.
Length
Calculates the length of the quaternion.
LengthSquared
Calculates the squared length of the quaternion.
Lerp(Quaternion, Quaternion, Single)
Performs a linear interpolation between two quaternion.
Lerp(Quaternion, Quaternion, Single, Quaternion)
Performs a linear interpolation between two quaternions.
Logarithm(Quaternion)
Calculates the natural logarithm of the specified quaternion.
Logarithm(Quaternion, Quaternion)
Calculates the natural logarithm of the specified quaternion.
Multiply(Quaternion, Quaternion)
Modulates a quaternion by another.
Multiply(Quaternion, Single)
Scales a quaternion by the given value.
Multiply(Quaternion, Quaternion, Quaternion)
Modulates a quaternion by another.
Multiply(Quaternion, Single, Quaternion)
Scales a quaternion by the given value.
Negate(Quaternion)
Reverses the direction of a given quaternion.
Negate(Quaternion, Quaternion)
Reverses the direction of a given quaternion.
Normalize
Converts the quaternion into a unit quaternion.
Normalize(Quaternion)
Converts the quaternion into a unit quaternion.
Normalize(Quaternion, Quaternion)
Converts the quaternion into a unit quaternion.
RotationAxis(Vector3, Single)
Creates a quaternion given a rotation and an axis.
RotationAxis(Vector3, Single, Quaternion)
Creates a quaternion given a rotation and an axis.
RotationMatrix(Matrix)
Creates a quaternion given a rotation matrix.
RotationMatrix(Matrix, Quaternion)
Creates a quaternion given a rotation matrix.
RotationYawPitchRoll(Single, Single, Single)
Creates a quaternion given a yaw, pitch, and roll value.
RotationYawPitchRoll(Single, Single, Single, Quaternion)
Creates a quaternion given a yaw, pitch, and roll value.
Slerp(Quaternion, Quaternion, Single)
Interpolates between two quaternions, using spherical linear interpolation.
Slerp(Quaternion, Quaternion, Single, Quaternion)
Interpolates between two quaternions, using spherical linear interpolation.
Interpolates between quaternions, using spherical quadrangle interpolation.
Squad(Quaternion, Quaternion, Quaternion, Quaternion, Single, Quaternion)
Interpolates between quaternions, using spherical quadrangle interpolation.
Sets up control points for spherical quadrangle interpolation.
Subtract(Quaternion, Quaternion)
Subtracts two quaternions.
Subtract(Quaternion, Quaternion, Quaternion)
Subtracts two quaternions.
ToRotation
ToString
Converts the value of the object to its equivalent string representation.
(Overrides ValueTypeToString.)
ToVector
Top
Operators

NameDescription
Division
Divides a quaternion by another.
Equality
Tests for equality between two objects.
Inequality
Tests for inequality between two objects.
Multiply(Single, Quaternion)
Scales a quaternion by the given value.
Multiply(Quaternion, Quaternion)
Multiplies a quaternion by another.
Multiply(Quaternion, Single)
Scales a quaternion by the given value.
Subtraction
Subtracts two quaternions.
UnaryNegation
Reverses the direction of a given quaternion.
Top
Fields

NameDescription
W
Gets or sets the W component of the quaternion.
X
Gets or sets the X component of the quaternion.
Y
Gets or sets the Y component of the quaternion.
Z
Gets or sets the Z component of the quaternion.
Top