Tesla Graphics Engine Documentation (January 2012)
Vector3 Structure
TeslaTesla.MathVector3
Defines a 3 component vector.
Declaration Syntax
C#
[SerializableAttribute]
public struct Vector3 : IEquatable<Vector3>
Members
All Members Constructors Methods Properties Fields



Icon Member Description
Vector3(Single)
Creates a new instance of Vector3.

Vector3(Single, Single, Single)
Creates a new instance of Vector3.

Vector3(Vector3, Single)
Creates a new instance of Vector3.

Add(Vector3, Vector3)
Adds two vectors.

Add(Vector3%, Vector3%, Vector3%)
Adds two vectors.

Addition(Vector3, Vector3)
Adds the two vectors together.

Backward
Gets the unit Vector3 set to (0, 0, 1) designating "backward" in the right-handed coordinate system.

Barycentric(Vector3, Vector3, Vector3, Single, Single)
Returns a Vector3 containing the 3D Cartesian coordinates of a point specified in barycentric coordinates relative to a 3D triangle.

Barycentric(Vector3%, Vector3%, Vector3%, Single, Single, Vector3%)
Returns a Vector3 containing the 3D Cartesian coordinates of a point specified in barycentric coordinates relative to a 3D triangle.

CatmullRom(Vector3, Vector3, Vector3, Vector3, Single)
Compute Catmull-Rom interpolation using the the specified positions.

CatmullRom(Vector3%, Vector3%, Vector3%, Vector3%, Single, Vector3%)
Compute Catmull-Rom interpolation.

Clamp(Vector3, Vector3, Vector3)
Restricts the source vector between the range of the minimum and maximum vectors.

Clamp(Vector3%, Vector3%, Vector3%, Vector3%)
Restricts the source vector between the range of the minimum and maximum vectors.

Cross(Vector3, Vector3)
Compute the cross product between two vectors.

Cross(Vector3%, Vector3%, Vector3%)
Compute the cross product between two vectors.

Distance(Vector3, Vector3)
Compute the distance between two vectors.

Distance(Vector3%, Vector3%, Single%)
Compute the distance between two vectors.

DistanceSquared(Vector3, Vector3)
Compute the distance squared between two vectors.

DistanceSquared(Vector3%, Vector3%, Single%)
Compute the distance squared between two vectors.

Divide(Vector3, Vector3)
Divides the components of one vector by the components of the other.

Divide(Vector3%, Vector3%, Vector3%)
Divides the components of one vector by the components of the other.

Divide(Vector3, Single)
Divides the components of one vector by a scalar.

Divide(Vector3%, Single, Vector3%)
Divides the components of one vector by a scalar.

Division(Vector3, Vector3)
Divides two vectors.

Division(Vector3, Single)
Divides a vector by a scalar value.

Dot(Vector3, Vector3)
Compute the dot product between two vectors.

Dot(Vector3%, Vector3%, Single%)
Compute the dot product between two vectors.

Down
Gets the unit Vector3 set to (0, -1, 0) designating "down" in the right-handed coordinate system.

Equality(Vector3, Vector3)
Tests equality between two vectors.

Equals(Vector3)
Tests equality between this vector and another vector.

Equals(Object)
Tests equality between this vector and the supplied object.
(Overrides ValueType.Equals(Object).)
Forward
Gets the unit Vector3 set to (0, 0, -1) designating "forward" in the right-handed coordinate system.

GetHashCode()()()()
Get the object's hash code.
(Overrides ValueType.GetHashCode()()()().)
GetType()()()()
Gets the Type of the current instance.
(Inherited from Object.)
Hermite(Vector3, Vector3, Vector3, Vector3, Single)
Compute a Hermite spline interpolation.

Hermite(Vector3%, Vector3%, Vector3%, Vector3%, Single, Vector3%)
Compute a Hermite spline interpolation.

Inequality(Vector3, Vector3)
Tests inequality between two vectors.

Left
Gets the unit Vector3 set to (-1, 0, 0) designating "left" in the right-handed coordinate system.

Length()()()()
Compute the count (magnitude) of this vector.

LengthSquared()()()()
Compute count (magnitude), squared, of this vector.

Lerp(Vector3, Vector3, Single)
Linearly interpolates between two vectors.

Lerp(Vector3%, Vector3%, Single, Vector3%)
Linearly interpolates between two vectors.

Max(Vector3, Vector3)
Get the vector that contains the maximum value from each of the components of the two supplied vectors.

Max(Vector3%, Vector3%, Vector3%)
Get the vector that contains the maximum value from each of the components of the two supplied vectors.

Min(Vector3, Vector3)
Get the vector that contains the mininum value from each of the components of the two supplied vectors.

Min(Vector3%, Vector3%, Vector3%)
Get the vector that contains the mininum value from each of the components of the two supplied vectors.

Multiply(Vector3, Vector3)
Multiplies components of two vectors together.

Multiply(Vector3%, Vector3%, Vector3%)
Multiplies components of two vectors together.

Multiply(Vector3, Single)
Multiplies components of a vector by a scalar value.

Multiply(Vector3%, Single, Vector3%)
Multiplies components of a vector by a scalar value.

Multiply(Vector3, Vector3)
Multiplies two vectors together.

Multiply(Vector3, Single)
Multiplies a vector by a scaling factor.

Multiply(Single, Vector3)
Multiplies a vector by a scaling factor.

Negate()()()()
Flip the signs of the components of this vector.

Negate(Vector3)
Flip the signs of the vector's components.

Negate(Vector3%, Vector3%)
Flip the signs of the vector's components.

Normalize()()()()
Normalize this vector to a unit vector, which results in a vector with a count of 1 but perserves the direction the vector was pointing in.

Normalize(Vector3)
Normalize the surce vector to a unit vector, which results in a vector with a count of 1 but perserves the direction the vector was pointing in.

Normalize(Vector3%, Vector3%)
Normalize the surce vector to a unit vector, which results in a vector with a count of 1 but perserves the direction the vector was pointing in.

One
Gets a Vector3 set to (1, 1, 1).

Reflect(Vector3, Vector3)
Compute the reflection vector off a surface with the specified normal.

Reflect(Vector3%, Vector3%, Vector3%)
Compute the reflection vector off a surface with the specified normal.

Right
Gets the unit Vector3 set to (1, 0, 0) designating "right" in the right-handed coordinate system.

SizeInBytes
Gets the size of Vector3 structure in bytes.

SmallestAngleBetween(Vector3, Vector3)
Get the smallest angle between two vectors. Both vectors MUST be normalized.

SmallestAngleBetween(Vector3%, Vector3%, Single%)
Get the smallest angle between two vectors. Both vectors MUST be normalized.

SmoothStep(Vector3, Vector3, Single)
Compute a cubic interpolation between two vectors.

SmoothStep(Vector3%, Vector3%, Single, Vector3%)
Compute a cubic interpolation between two vectors.

Subtract(Vector3, Vector3)
Subtracts a vector from a vector.

Subtract(Vector3%, Vector3%, Vector3%)
Subtracts a vector from a vector.

Subtraction(Vector3, Vector3)
Subtracts a vector from another.

ToString()()()()
Get a string representation for the object.
(Overrides ValueType.ToString()()()().)
Transform(Vector3, Matrix)
Transforms the 3D Vector using the specified transformation matrix.

Transform(Vector3%, Matrix%, Vector3%)
Transforms the 3D Vector using the specified transformation matrix.

Transform(Vector3, Quaternion)
Transforms the 3D vector using the specified rotation quaternion.

Transform(Vector3%, Quaternion%, Vector3%)
Transforms the 3D vector using the specified rotation quaternion.

UnaryNegation(Vector3)
Flips the signs of the components of the specified vector.

UnitX
Gets a unit Vector3 set to (1, 0, 0).

UnitY
Gets a unit Vector3 set to (0, 1, 0).

UnitZ
Gets a unit Vector3 set to (0, 0, 1).

Up
Gets the unit Vector3 set to (0, 1, 0) designating "up" in the right-handed coordinate system.

X
X component of this vector.

Y
Y component of this vector.

Z
Z component of this vector.

Zero
Gets a Vector3 set to (0, 0, 0).

Assembly: Tesla (Module: Tesla) Version: 0.5.0.0 (0.5.0.0)