Click or drag to resize

double3 Structure

Represents a 3D vector using three double-precision floating-point numbers.

Namespace:  Fusee.Math.Core
Assembly:  Fusee.Math.Core (in Fusee.Math.Core.dll) Version: 0.7.0.0 (0.1.0.0)
Syntax
C#
public struct double3 : IEquatable<double3>

The double3 type exposes the following members.

Constructors
  NameDescription
Public methoddouble3(double2)
Constructs a new double3 from the given double2.
Public methoddouble3(double3)
Constructs a new double3 from the given double3.
Public methoddouble3(double4)
Constructs a new double3 from the given double4.
Public methoddouble3(Double, Double, Double)
Constructs a new double3.
Top
Properties
  NameDescription
Public propertyb
The blue component (same as z)
Public propertyg
The green component (same as y)
Public propertyLength
Gets the length (magnitude) of the vector.
Public propertyLengthFast
Gets an approximation of the vector length (magnitude).
Public propertyLengthSquared
Gets the square of the vector length (magnitude).
Public propertyStatic memberParse
Gets or sets the Converter object. Has the ability to convert a string to a double3.
Public propertyr
The red component (same as x)
Public propertyxy
Gets or sets an OpenTK.double2 with the x and y components of this instance.
Top
Methods
  NameDescription
Public methodAdd(double3) Obsolete.
Add the Vector passed as parameter to this instance.
Public methodAdd(double3) Obsolete.
Add the Vector passed as parameter to this instance.
Public methodStatic memberAdd(double3, double3)
Adds two vectors.
Public methodStatic memberAdd(double3, double3, double3)
Adds two vectors.
Public methodStatic memberBarycentric
Interpolate 3 Vectors using Barycentric coordinates
Public methodStatic memberCalculateAngle(double3, double3)
Calculates the angle (in radians) between two vectors.
Public methodStatic memberCalculateAngle(double3, double3, Double)
Calculates the angle (in radians) between two vectors.
Public methodStatic memberClamp(double3, double3, double3)
Clamp a vector to the given minimum and maximum vectors
Public methodStatic memberClamp(double3, double3, double3, double3)
Clamp a vector to the given minimum and maximum vectors
Public methodStatic memberComponentMax(double3, double3)
Calculate the component-wise maximum of two vectors
Public methodStatic memberComponentMax(double3, double3, double3)
Calculate the component-wise maximum of two vectors
Public methodStatic memberComponentMin(double3, double3)
Calculate the component-wise minimum of two vectors
Public methodStatic memberComponentMin(double3, double3, double3)
Calculate the component-wise minimum of two vectors
Public methodStatic memberCross(double3, double3)
Caclulate the cross (vector) product of two vectors
Public methodStatic memberCross(double3, double3, double3)
Caclulate the cross (vector) product of two vectors
Public methodDiv(Double) Obsolete.
Divide this instance by a scalar.
Public methodStatic memberDiv(double3, Double) Obsolete.
Divide a vector by a scalar
Public methodStatic memberDiv(double3, Double, double3) Obsolete.
Divide a vector by a scalar
Public methodStatic memberDivide(double3, double3)
Divides a vector by the components of a vector (scale).
Public methodStatic memberDivide(double3, Double)
Divides a vector by a scalar.
Public methodStatic memberDivide(double3, double3, double3)
Divide a vector by the components of a vector (scale).
Public methodStatic memberDivide(double3, Double, double3)
Divides a vector by a scalar.
Public methodStatic memberDot(double3, double3)
Calculate the dot (scalar) product of two vectors
Public methodStatic memberDot(double3, double3, Double)
Calculate the dot (scalar) product of two vectors
Public methodEquals(Object)
Indicates whether this instance and a specified object are equal.
(Overrides ValueTypeEquals(Object).)
Public methodEquals(double3)
Indicates whether the current vector is equal to another vector.
Public methodStatic memberGetBarycentric
Calculates the barycentric coordinates for the given point in the given triangle, such that u*a + v*b + (1-u-v)*c = point.
Public methodGetHashCode
Returns the hashcode for this instance.
(Overrides ValueTypeGetHashCode.)
Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodStatic memberLerp(double3, double3, Double)
Returns a new Vector that is the linear blend of the 2 given Vectors
Public methodStatic memberLerp(double3, double3, Double, double3)
Returns a new Vector that is the linear blend of the 2 given Vectors
Public methodStatic memberMax
Returns the double3 with the minimum magnitude
Public methodStatic memberMin
Returns the double3 with the minimum magnitude
Public methodMult(Double) Obsolete.
Multiply this instance by a scalar.
Public methodStatic memberMult(double3, Double) Obsolete.
Multiply a vector and a scalar
Public methodStatic memberMult(double3, Double, double3) Obsolete.
Multiply a vector and a scalar
Public methodStatic memberMultiply(double3, double3)
Multiplies a vector by the components a vector (scale).
Public methodStatic memberMultiply(double3, Double)
Multiplies a vector by a scalar.
Public methodStatic memberMultiply(double3, double3, double3)
Multiplies a vector by the components of a vector (scale).
Public methodStatic memberMultiply(double3, Double, double3)
Multiplies a vector by a scalar.
Public methodNormalize
Scales the double3 to unit length.
Public methodStatic memberNormalize(double3)
Scale a vector to unit length
Public methodStatic memberNormalize(double3, double3)
Scale a vector to unit length
Public methodNormalizeFast
Scales the double3 to approximately unit length.
Public methodStatic memberNormalizeFast(double3)
Scale a vector to approximately unit length
Public methodStatic memberNormalizeFast(double3, double3)
Scale a vector to approximately unit length
Public methodScale(double3) Obsolete.
Scales this instance by the given parameter.
Public methodScale(double3) Obsolete.
Scales this instance by the given parameter.
Public methodScale(Double, Double, Double) Obsolete.
Scales the current double3 by the given amounts.
Public methodSub(double3) Obsolete.
Subtract the Vector passed as parameter from this instance.
Public methodSub(double3) Obsolete.
Subtract the Vector passed as parameter from this instance.
Public methodStatic memberSub(double3, double3) Obsolete.
Subtract one Vector from another
Public methodStatic memberSub(double3, double3, double3) Obsolete.
Subtract one Vector from another
Public methodStatic memberSubtract(double3, double3)
Subtract one Vector from another
Public methodStatic memberSubtract(double3, double3, double3)
Subtract one Vector from another
Public methodToArray
Returns an array of doubles with the three components of the vector.
Public methodToString
Returns a System.String that represents the current double3.
(Overrides ValueTypeToString.)
Public methodStatic memberTransform(double3, double4x4)
Transform a Vector by the given Matrix
Public methodStatic memberTransform(double3, QuaternionD)
Transforms a vector by a QuaternionD rotation.
Public methodStatic memberTransform(double3, double4x4, double3)
Transform a Vector by the given Matrix
Public methodStatic memberTransform(double3, QuaternionD, double3)
Transforms a vector by a QuaternionD rotation.
Public methodStatic memberTransformNormal(double3, double4x4)
Transform a Normal by the given Matrix
Public methodStatic memberTransformNormal(double3, double4x4, double3)
Transform a Normal by the given Matrix
Public methodStatic memberTransformNormalInverse(double3, double4x4)
Transform a Normal by the (transpose of the) given Matrix
Public methodStatic memberTransformNormalInverse(double3, double4x4, double3)
Transform a Normal by the (transpose of the) given Matrix
Public methodStatic memberTransformPerspective(double3, double4x4)
Transform a double3 by the given Matrix, and project the resulting double4 back to a double3
Public methodStatic memberTransformPerspective(double3, double4x4, double3)
Transform a double3 by the given Matrix, and project the resulting double4 back to a double3
Public methodStatic memberTransformPosition(double3, double4x4)
Transform a Position by the given Matrix
Public methodStatic memberTransformPosition(double3, double4x4, double3)
Transform a Position by the given Matrix
Public methodStatic memberTransformVector(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.
Public methodStatic memberTransformVector(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.
Top
Operators
  NameDescription
Public operatorStatic memberAddition
Adds two instances.
Public operatorStatic memberDivision
Divides an instance by a scalar.
Public operatorStatic memberEquality
Compares two instances for equality.
Public operatorStatic memberInequality
Compares two instances for inequality.
Public operatorStatic memberMultiply(Double, double3)
Multiplies an instance by a scalar.
Public operatorStatic memberMultiply(double3, Double)
Multiplies an instance by a scalar.
Public operatorStatic memberSubtraction
Subtracts two instances.
Public operatorStatic memberUnaryNegation
Negates an instance.
Top
Fields
  NameDescription
Public fieldStatic memberOne
Defines an instance with all components set to 1.
Public fieldStatic memberUnitX
Defines a unit-length double3 that points towards the x-axis.
Public fieldStatic memberUnitY
Defines a unit-length double3 that points towards the y-axis.
Public fieldStatic memberUnitZ
Defines a unit-length double3 that points towards the z-axis.
Public fieldx
The x component of the double3.
Public fieldy
The y component of the double3.
Public fieldz
The z component of the double3.
Public fieldStatic memberZero
Defines a zero-length double3.
Top
Remarks
The double3 structure is suitable for interoperation with unmanaged code requiring three consecutive doubles.
See Also