double3 Structure 
Namespace: Fusee.Math.Core
public struct double3 : IEquatable<double3>
The double3 type exposes the following members.
Name  Description  

double3(double2) 
Constructs a new double3 from the given double2.
 
double3(double3) 
Constructs a new double3 from the given double3.
 
double3(double4) 
Constructs a new double3 from the given double4.
 
double3(Double, Double, Double) 
Constructs a new double3.

Name  Description  

b 
The blue component (same as z)
 
g 
The green component (same as y)
 
Length 
Gets the length (magnitude) of the vector.
 
LengthFast 
Gets an approximation of the vector length (magnitude).
 
LengthSquared 
Gets the square of the vector length (magnitude).
 
Parse 
Gets or sets the Converter object. Has the ability to convert a string to a double3.
 
r 
The red component (same as x)
 
xy 
Gets or sets an OpenTK.double2 with the x and y components of this instance.

Name  Description  

Add(double3)  Obsolete.
Add the Vector passed as parameter to this instance.
 
Add(double3)  Obsolete.
Add the Vector passed as parameter to this instance.
 
Add(double3, double3) 
Adds two vectors.
 
Add(double3, double3, double3) 
Adds two vectors.
 
Barycentric 
Interpolate 3 Vectors using Barycentric coordinates
 
CalculateAngle(double3, double3) 
Calculates the angle (in radians) between two vectors.
 
CalculateAngle(double3, double3, Double) 
Calculates the angle (in radians) between two vectors.
 
Clamp(double3, double3, double3) 
Clamp a vector to the given minimum and maximum vectors
 
Clamp(double3, double3, double3, double3) 
Clamp a vector to the given minimum and maximum vectors
 
ComponentMax(double3, double3) 
Calculate the componentwise maximum of two vectors
 
ComponentMax(double3, double3, double3) 
Calculate the componentwise maximum of two vectors
 
ComponentMin(double3, double3) 
Calculate the componentwise minimum of two vectors
 
ComponentMin(double3, double3, double3) 
Calculate the componentwise minimum of two vectors
 
Cross(double3, double3) 
Caclulate the cross (vector) product of two vectors
 
Cross(double3, double3, double3) 
Caclulate the cross (vector) product of two vectors
 
Div(Double)  Obsolete.
Divide this instance by a scalar.
 
Div(double3, Double)  Obsolete.
Divide a vector by a scalar
 
Div(double3, Double, double3)  Obsolete.
Divide a vector by a scalar
 
Divide(double3, double3) 
Divides a vector by the components of a vector (scale).
 
Divide(double3, Double) 
Divides a vector by a scalar.
 
Divide(double3, double3, double3) 
Divide a vector by the components of a vector (scale).
 
Divide(double3, Double, double3) 
Divides a vector by a scalar.
 
Dot(double3, double3) 
Calculate the dot (scalar) product of two vectors
 
Dot(double3, double3, Double) 
Calculate the dot (scalar) product of two vectors
 
Equals(Object) 
Indicates whether this instance and a specified object are equal.
(Overrides ValueTypeEquals(Object).)  
Equals(double3) 
Indicates whether the current vector is equal to another vector.
 
GetBarycentric 
Calculates the barycentric coordinates for the given point in the given triangle, such that u*a + v*b + (1uv)*c = point.
 
GetHashCode 
Returns the hashcode for this instance.
(Overrides ValueTypeGetHashCode.)  
GetType  Gets the Type of the current instance. (Inherited from Object.)  
Lerp(double3, double3, Double) 
Returns a new Vector that is the linear blend of the 2 given Vectors
 
Lerp(double3, double3, Double, double3) 
Returns a new Vector that is the linear blend of the 2 given Vectors
 
Max 
Returns the double3 with the minimum magnitude
 
Min 
Returns the double3 with the minimum magnitude
 
Mult(Double)  Obsolete.
Multiply this instance by a scalar.
 
Mult(double3, Double)  Obsolete.
Multiply a vector and a scalar
 
Mult(double3, Double, double3)  Obsolete.
Multiply a vector and a scalar
 
Multiply(double3, double3) 
Multiplies a vector by the components a vector (scale).
 
Multiply(double3, Double) 
Multiplies a vector by a scalar.
 
Multiply(double3, double3, double3) 
Multiplies a vector by the components of a vector (scale).
 
Multiply(double3, Double, double3) 
Multiplies a vector by a scalar.
 
Normalize 
Scales the double3 to unit length.
 
Normalize(double3) 
Scale a vector to unit length
 
Normalize(double3, double3) 
Scale a vector to unit length
 
NormalizeFast 
Scales the double3 to approximately unit length.
 
NormalizeFast(double3) 
Scale a vector to approximately unit length
 
NormalizeFast(double3, double3) 
Scale a vector to approximately unit length
 
Scale(double3)  Obsolete.
Scales this instance by the given parameter.
 
Scale(double3)  Obsolete.
Scales this instance by the given parameter.
 
Scale(Double, Double, Double)  Obsolete.
Scales the current double3 by the given amounts.
 
Sub(double3)  Obsolete.
Subtract the Vector passed as parameter from this instance.
 
Sub(double3)  Obsolete.
Subtract the Vector passed as parameter from this instance.
 
Sub(double3, double3)  Obsolete.
Subtract one Vector from another
 
Sub(double3, double3, double3)  Obsolete.
Subtract one Vector from another
 
Subtract(double3, double3) 
Subtract one Vector from another
 
Subtract(double3, double3, double3) 
Subtract one Vector from another
 
ToArray 
Returns an array of doubles with the three components of the vector.
 
ToString 
Returns a System.String that represents the current double3.
(Overrides ValueTypeToString.)  
Transform(double3, double4x4) 
Transform a Vector by the given Matrix
 
Transform(double3, QuaternionD) 
Transforms a vector by a QuaternionD rotation.
 
Transform(double3, double4x4, double3) 
Transform a Vector by the given Matrix
 
Transform(double3, QuaternionD, double3) 
Transforms a vector by a QuaternionD rotation.
 
TransformNormal(double3, double4x4) 
Transform a Normal by the given Matrix
 
TransformNormal(double3, double4x4, double3) 
Transform a Normal by the given Matrix
 
TransformNormalInverse(double3, double4x4) 
Transform a Normal by the (transpose of the) given Matrix
 
TransformNormalInverse(double3, double4x4, double3) 
Transform a Normal by the (transpose of the) given Matrix
 
TransformPerspective(double3, double4x4) 
Transform a double3 by the given Matrix, and project the resulting double4 back to a double3
 
TransformPerspective(double3, double4x4, double3) 
Transform a double3 by the given Matrix, and project the resulting double4 back to a double3
 
TransformPosition(double3, double4x4) 
Transform a Position by the given Matrix
 
TransformPosition(double3, double4x4, double3) 
Transform a Position by the given Matrix
 
TransformVector(double3, double4x4) 
Transform a direction vector by the given Matrix
Assumes the matrix has a bottom row of (0,0,0,1), that is the translation part is ignored.
 
TransformVector(double3, double4x4, double3) 
Transform a direction vector by the given Matrix
Assumes the matrix has a bottom row of (0,0,0,1), that is the translation part is ignored.

Name  Description  

Addition 
Adds two instances.
 
Division 
Divides an instance by a scalar.
 
Equality 
Compares two instances for equality.
 
Inequality 
Compares two instances for inequality.
 
Multiply(Double, double3) 
Multiplies an instance by a scalar.
 
Multiply(double3, Double) 
Multiplies an instance by a scalar.
 
Subtraction 
Subtracts two instances.
 
UnaryNegation 
Negates an instance.

Name  Description  

One 
Defines an instance with all components set to 1.
 
UnitX 
Defines a unitlength double3 that points towards the xaxis.
 
UnitY 
Defines a unitlength double3 that points towards the yaxis.
 
UnitZ 
Defines a unitlength double3 that points towards the zaxis.
 
x 
The x component of the double3.
 
y 
The y component of the double3.
 
z 
The z component of the double3.
 
Zero 
Defines a zerolength double3.
