# MonoMac.OpenGL.Vector3d: Method Members

The methods of MonoMac.OpenGL.Vector3d are listed below. For a list of all members, see the Vector3d list.

See Also: ValueType

## Public Methods

 Add(Vector3d)Add the Vector passed as parameter to this instance. Add(ref Vector3d)Add the Vector passed as parameter to this instance. static Add(Vector3d, Vector3d) : Vector3d Adds two vectors. static Add(ref Vector3d, ref Vector3d, out Vector3d) Adds two vectors. static BaryCentric(Vector3d, Vector3d, Vector3d, Double, Double) : Vector3d Interpolate 3 Vectors using Barycentric coordinates static BaryCentric(ref Vector3d, ref Vector3d, ref Vector3d, Double, Double, out Vector3d)Interpolate 3 Vectors using Barycentric coordinates static CalculateAngle(Vector3d, Vector3d) : Double Calculates the angle (in radians) between two vectors. static CalculateAngle(ref Vector3d, ref Vector3d, out Double)Calculates the angle (in radians) between two vectors. static Clamp(Vector3d, Vector3d, Vector3d) : Vector3d Clamp a vector to the given minimum and maximum vectors static Clamp(ref Vector3d, ref Vector3d, ref Vector3d, out Vector3d) Clamp a vector to the given minimum and maximum vectors static ComponentMax(Vector3d, Vector3d) : Vector3d Calculate the component-wise maximum of two vectors static ComponentMax(ref Vector3d, ref Vector3d, out Vector3d) Calculate the component-wise maximum of two vectors static ComponentMin(Vector3d, Vector3d) : Vector3d Calculate the component-wise minimum of two vectors static ComponentMin(ref Vector3d, ref Vector3d, out Vector3d) Calculate the component-wise minimum of two vectors static Cross(Vector3d, Vector3d) : Vector3d Caclulate the cross (vector) product of two vectors static Cross(ref Vector3d, ref Vector3d, out Vector3d) Caclulate the cross (vector) product of two vectors Div(Double)Divide this instance by a scalar. static Div(Vector3d, Double) : Vector3d Divide a vector by a scalar static Div(ref Vector3d, Double, out Vector3d) Divide a vector by a scalar static Divide(Vector3d, Vector3d) : Vector3d Divides a vector by the components of a vector (scale). static Divide(Vector3d, Double) : Vector3d Divides a vector by a scalar. static Divide(ref Vector3d, ref Vector3d, out Vector3d) Divide a vector by the components of a vector (scale). static Divide(ref Vector3d, Double, out Vector3d) Divides a vector by a scalar. static Dot(Vector3d, Vector3d) : Double Calculate the dot (scalar) product of two vectors static Dot(ref Vector3d, ref Vector3d, out Double) Calculate the dot (scalar) product of two vectors Equals(Vector3d) : BooleanIndicates whether the current vector is equal to another vector. override Equals(Object) : Boolean Indicates whether this instance and a specified object are equal. override GetHashCode() : Int32 Returns the hashcode for this instance. static Lerp(Vector3d, Vector3d, Double) : Vector3d Returns a new Vector that is the linear blend of the 2 given Vectors static Lerp(ref Vector3d, ref Vector3d, Double, out Vector3d) Returns a new Vector that is the linear blend of the 2 given Vectors static Max(Vector3d, Vector3d) : Vector3d Returns the Vector3d with the minimum magnitude static Min(Vector3d, Vector3d) : Vector3d Returns the Vector3d with the minimum magnitude Mult(Double)Multiply this instance by a scalar. static Mult(Vector3d, Double) : Vector3d Multiply a vector and a scalar static Mult(ref Vector3d, Double, out Vector3d) Multiply a vector and a scalar static Multiply(Vector3d, Vector3d) : Vector3d Multiplies a vector by the components a vector (scale). static Multiply(Vector3d, Double) : Vector3d Multiplies a vector by a scalar. static Multiply(ref Vector3d, ref Vector3d, out Vector3d) Multiplies a vector by the components of a vector (scale). static Multiply(ref Vector3d, Double, out Vector3d) Multiplies a vector by a scalar. Normalize() Scales the Vector3d to unit length. static Normalize(Vector3d) : Vector3d Scale a vector to unit length static Normalize(ref Vector3d, out Vector3d) Scale a vector to unit length NormalizeFast() Scales the Vector3d to approximately unit length. static NormalizeFast(Vector3d) : Vector3d Scale a vector to approximately unit length static NormalizeFast(ref Vector3d, out Vector3d) Scale a vector to approximately unit length Scale(Vector3d)Scales this instance by the given parameter. Scale(ref Vector3d)Scales this instance by the given parameter. Scale(Double, Double, Double) Scales the current Vector3d by the given amounts. Sub(Vector3d)Subtract the Vector passed as parameter from this instance. Sub(ref Vector3d)Subtract the Vector passed as parameter from this instance. static Sub(Vector3d, Vector3d) : Vector3d Subtract one Vector from another static Sub(ref Vector3d, ref Vector3d, out Vector3d) Subtract one Vector from another static Subtract(Vector3d, Vector3d) : Vector3d Subtract one Vector from another static Subtract(ref Vector3d, ref Vector3d, out Vector3d) Subtract one Vector from another override ToString() : String Returns a System.String that represents the current Vector3. static Transform(Vector3d, Matrix4d) : Vector3dTransform a Vector by the given Matrix static Transform(Vector3d, Quaterniond) : Vector3d Transforms a vector by a quaternion rotation. static Transform(ref Vector3d, ref Matrix4d, out Vector3d)Transform a Vector by the given Matrix static Transform(ref Vector3d, ref Quaterniond, out Vector3d) Transforms a vector by a quaternion rotation. static TransformNormal(Vector3d, Matrix4d) : Vector3dTransform a Normal by the given Matrix static TransformNormal(ref Vector3d, ref Matrix4d, out Vector3d)Transform a Normal by the given Matrix static TransformNormalInverse(Vector3d, Matrix4d) : Vector3dTransform a Normal by the (transpose of the) given Matrix static TransformNormalInverse(ref Vector3d, ref Matrix4d, out Vector3d)Transform a Normal by the (transpose of the) given Matrix static TransformPerspective(Vector3d, Matrix4d) : Vector3d Transform a Vector3d by the given Matrix, and project the resulting Vector4 back to a Vector3 static TransformPerspective(ref Vector3d, ref Matrix4d, out Vector3d)Transform a Vector3d by the given Matrix, and project the resulting Vector4d back to a Vector3d static TransformPosition(Vector3d, Matrix4d) : Vector3dTransform a Position by the given Matrix static TransformPosition(ref Vector3d, ref Matrix4d, out Vector3d)Transform a Position by the given Matrix static TransformVector(Vector3d, Matrix4d) : Vector3dTransform 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. static TransformVector(ref Vector3d, ref Matrix4d, out Vector3d)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.