Otter  0.9.8.91
2d Game Development Framework based on SFML.Net
 All Classes Namespaces Functions Variables Enumerations Properties
Otter.Vector3 Struct Reference

Struct for representing a Vector3. More...

Inherits IEquatable< Vector3 >.

Public Member Functions

 Vector3 (float x, float y, float z)
 
 Vector3 (float value)
 
 Vector3 (Vector2 value, float z)
 
override bool Equals (object obj)
 
bool Equals (Vector3 other)
 
override int GetHashCode ()
 
float Length ()
 
float LengthSquared ()
 
void Normalize ()
 
override string ToString ()
 

Static Public Member Functions

static Vector3 Add (Vector3 value1, Vector3 value2)
 
static void Add (ref Vector3 value1, ref Vector3 value2, out Vector3 result)
 
static Vector3 Barycentric (Vector3 value1, Vector3 value2, Vector3 value3, float amount1, float amount2)
 
static void Barycentric (ref Vector3 value1, ref Vector3 value2, ref Vector3 value3, float amount1, float amount2, out Vector3 result)
 
static Vector3 CatmullRom (Vector3 value1, Vector3 value2, Vector3 value3, Vector3 value4, float amount)
 
static void CatmullRom (ref Vector3 value1, ref Vector3 value2, ref Vector3 value3, ref Vector3 value4, float amount, out Vector3 result)
 
static Vector3 Clamp (Vector3 value1, Vector3 min, Vector3 max)
 
static void Clamp (ref Vector3 value1, ref Vector3 min, ref Vector3 max, out Vector3 result)
 
static Vector3 Cross (Vector3 vector1, Vector3 vector2)
 
static void Cross (ref Vector3 vector1, ref Vector3 vector2, out Vector3 result)
 
static float Distance (Vector3 vector1, Vector3 vector2)
 
static void Distance (ref Vector3 value1, ref Vector3 value2, out float result)
 
static float DistanceSquared (Vector3 value1, Vector3 value2)
 
static void DistanceSquared (ref Vector3 value1, ref Vector3 value2, out float result)
 
static Vector3 Divide (Vector3 value1, Vector3 value2)
 
static Vector3 Divide (Vector3 value1, float value2)
 
static void Divide (ref Vector3 value1, float divisor, out Vector3 result)
 
static void Divide (ref Vector3 value1, ref Vector3 value2, out Vector3 result)
 
static float Dot (Vector3 vector1, Vector3 vector2)
 
static void Dot (ref Vector3 vector1, ref Vector3 vector2, out float result)
 
static Vector3 Hermite (Vector3 value1, Vector3 tangent1, Vector3 value2, Vector3 tangent2, float amount)
 
static void Hermite (ref Vector3 value1, ref Vector3 tangent1, ref Vector3 value2, ref Vector3 tangent2, float amount, out Vector3 result)
 
static Vector3 Lerp (Vector3 value1, Vector3 value2, float amount)
 
static void Lerp (ref Vector3 value1, ref Vector3 value2, float amount, out Vector3 result)
 
static Vector3 Max (Vector3 value1, Vector3 value2)
 
static void Max (ref Vector3 value1, ref Vector3 value2, out Vector3 result)
 
static Vector3 Min (Vector3 value1, Vector3 value2)
 
static void Min (ref Vector3 value1, ref Vector3 value2, out Vector3 result)
 
static Vector3 Multiply (Vector3 value1, Vector3 value2)
 
static Vector3 Multiply (Vector3 value1, float scaleFactor)
 
static void Multiply (ref Vector3 value1, float scaleFactor, out Vector3 result)
 
static void Multiply (ref Vector3 value1, ref Vector3 value2, out Vector3 result)
 
static Vector3 Negate (Vector3 value)
 
static void Negate (ref Vector3 value, out Vector3 result)
 
static Vector3 Normalize (Vector3 vector)
 
static void Normalize (ref Vector3 value, out Vector3 result)
 
static Vector3 Reflect (Vector3 vector, Vector3 normal)
 
static void Reflect (ref Vector3 vector, ref Vector3 normal, out Vector3 result)
 
static Vector3 SmoothStep (Vector3 value1, Vector3 value2, float amount)
 
static void SmoothStep (ref Vector3 value1, ref Vector3 value2, float amount, out Vector3 result)
 
static Vector3 Subtract (Vector3 value1, Vector3 value2)
 
static void Subtract (ref Vector3 value1, ref Vector3 value2, out Vector3 result)
 
static Vector3 Transform (Vector3 position, Matrix matrix)
 
static void Transform (ref Vector3 position, ref Matrix matrix, out Vector3 result)
 
static void Transform (Vector3[] sourceArray, ref Matrix matrix, Vector3[] destinationArray)
 
static void Transform (Vector3[] sourceArray, int sourceIndex, ref Matrix matrix, Vector3[] destinationArray, int destinationIndex, int length)
 
static Vector3 Transform (Vector3 vec, Quaternion quat)
 Transforms a vector by a quaternion rotation. More...
 
static void Transform (ref Vector3 value, ref Quaternion rotation, out Vector3 result)
 Transforms a vector by a quaternion rotation. More...
 
static void Transform (Vector3[] sourceArray, ref Quaternion rotation, Vector3[] destinationArray)
 Transforms an array of vectors by a quaternion rotation. More...
 
static void Transform (Vector3[] sourceArray, int sourceIndex, ref Quaternion rotation, Vector3[] destinationArray, int destinationIndex, int length)
 Transforms an array of vectors within a given range by a quaternion rotation. More...
 
static Vector3 TransformNormal (Vector3 normal, Matrix matrix)
 
static void TransformNormal (ref Vector3 normal, ref Matrix matrix, out Vector3 result)
 
static bool operator== (Vector3 value1, Vector3 value2)
 
static bool operator!= (Vector3 value1, Vector3 value2)
 
static Vector3 operator+ (Vector3 value1, Vector3 value2)
 
static Vector3 operator- (Vector3 value)
 
static Vector3 operator- (Vector3 value1, Vector3 value2)
 
static Vector3 operator* (Vector3 value1, Vector3 value2)
 
static Vector3 operator* (Vector3 value, float scaleFactor)
 
static Vector3 operator* (float scaleFactor, Vector3 value)
 
static Vector3 operator/ (Vector3 value1, Vector3 value2)
 
static Vector3 operator/ (Vector3 value, float divider)
 
static operator SFML.System.Vector3f (Vector3 vector)
 
static operator Vector3 (SFML.System.Vector3f vector)
 

Public Attributes

float X
 
float Y
 
float Z
 

Properties

static Vector3 Zero [get]
 
static Vector3 One [get]
 
static Vector3 UnitX [get]
 
static Vector3 UnitY [get]
 
static Vector3 UnitZ [get]
 
static Vector3 Up [get]
 
static Vector3 Down [get]
 
static Vector3 Right [get]
 
static Vector3 Left [get]
 
static Vector3 Forward [get]
 
static Vector3 Backward [get]
 

Detailed Description

Struct for representing a Vector3.

Member Function Documentation

static Vector3 Otter.Vector3.Transform ( Vector3  vec,
Quaternion  quat 
)
static

Transforms a vector by a quaternion rotation.

Parameters
vecThe vector to transform.
quatThe quaternion to rotate the vector by.
Returns
The result of the operation.
static void Otter.Vector3.Transform ( ref Vector3  value,
ref Quaternion  rotation,
out Vector3  result 
)
static

Transforms a vector by a quaternion rotation.

Parameters
valueThe vector to transform.
rotationThe quaternion to rotate the vector by.
resultThe result of the operation.
static void Otter.Vector3.Transform ( Vector3[]  sourceArray,
ref Quaternion  rotation,
Vector3[]  destinationArray 
)
static

Transforms an array of vectors by a quaternion rotation.

Parameters
sourceArrayThe vectors to transform
rotationThe quaternion to rotate the vector by.
destinationArrayThe result of the operation.
static void Otter.Vector3.Transform ( Vector3[]  sourceArray,
int  sourceIndex,
ref Quaternion  rotation,
Vector3[]  destinationArray,
int  destinationIndex,
int  length 
)
static

Transforms an array of vectors within a given range by a quaternion rotation.

Parameters
sourceArrayThe vectors to transform.
sourceIndexThe starting index in the source array.
rotationThe quaternion to rotate the vector by.
destinationArrayThe array to store the result of the operation.
destinationIndexThe starting index in the destination array.
lengthThe number of vectors to transform.

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