T_Rhino_Geometry_Vector3d - mcneel/rhinocommon-api-docs GitHub Wiki

Vector3d Structure

Represents the three components of a vector in three-dimensional space, using Double-precision floating point numbers.

Namespace: Rhino.Geometry
Assembly: RhinoCommon (in RhinoCommon.dll) Version: Rhino 6.0

Syntax

C#

[SerializableAttribute]
public struct Vector3d : ISerializable, IEquatable<Vector3d>, 
	IComparable<Vector3d>, IComparable

VB

<SerializableAttribute>
Public Structure Vector3d
	Implements ISerializable, IEquatable(Of Vector3d), 
	IComparable(Of Vector3d), IComparable

The Vector3d type exposes the following members.

Constructors

 

Name Description
Public method Vector3d(Point3d) Initializes a new instance of a vector, copying the three components from the three coordinates of a point.
Public method Vector3d(Vector3d) Initializes a new instance of a vector, copying the three components from a vector.
Public method Vector3d(Vector3f) Initializes a new instance of a vector, copying the three components from a single-precision vector.
Public method Vector3d(Double, Double, Double) Initializes a new instance of a vector, using its three components.
  Back to Top

Properties

 

Name Description
Public property IsUnitVector Gets a value indicating whether or not this is a unit vector. A unit vector has length 1.
Public property IsValid Gets a value indicating whether this vector is valid. A valid vector must be formed of valid component values for x, y and z.
Public property IsZero Gets a value indicating whether the X, Y, and Z values are all equal to 0.0.
Public property Item Gets or sets a vector component at the given index.
Public property Length Computes the length (or magnitude, or size) of this vector. This is an application of Pythagoras' theorem. If this vector is invalid, its length is considered 0.
Public property MaximumCoordinate Gets the largest (both positive and negative) component value in this vector.
Public property MinimumCoordinate Gets the smallest (both positive and negative) component value in this vector.
Public property SquareLength Computes the squared length (or magnitude, or size) of this vector. This is an application of Pythagoras' theorem. While the Length property checks for input validity, this property does not. You should check validity in advance, if this vector can be invalid.
Public propertyStatic member Unset Gets the value of the vector with each component set to RhinoMath.UnsetValue.
Public property X Gets or sets the X (first) component of the vector.
Public propertyStatic member XAxis Gets the value of the vector with components 1,0,0.
Public property Y Gets or sets the Y (second) component of the vector.
Public propertyStatic member YAxis Gets the value of the vector with components 0,1,0.
Public property Z Gets or sets the Z (third) component of the vector.
Public propertyStatic member ZAxis Gets the value of the vector with components 0,0,1.
Public propertyStatic member Zero Gets the value of the vector with components 0,0,0.
  Back to Top

Methods

 

Name Description
Public methodStatic member Add Sums up two vectors. (Provided for languages that do not support operator overloading. You can use the + operator otherwise)
Public method CompareTo Compares this Vector3d with another Vector3d. Component evaluation priority is first X, then Y, then Z.
Public methodStatic member CrossProduct Computes the cross product (or vector product, or exterior product) of two vectors. This operation is not commutative.
Public methodStatic member Divide Divides a Vector3d by a number, having the effect of shrinking it. (Provided for languages that do not support operator overloading. You can use the / operator otherwise)
Public method EpsilonEquals Check that all values in other are within epsilon of the values in this
Public method Equals(Object) Determines whether the specified System.Object is a Vector3d and has the same values as the present vector. (Overrides ValueType.Equals(Object).)
Public method Equals(Vector3d) Determines whether the specified vector has the same value as the present vector.
Public method GetHashCode Computes the hash code for the current vector. (Overrides ValueType.GetHashCode().)
Public method GetType Gets the Type of the current instance. (Inherited from Object.)
Public methodCode example IsParallelTo(Vector3d) Determines whether this vector is parallel to another vector, within one degree (within Pi / 180).
Public method IsParallelTo(Vector3d, Double) Determines whether this vector is parallel to another vector, within a provided tolerance.
Public method IsPerpendicularTo(Vector3d) Test to see whether this vector is perpendicular to within one degree of another one.
Public method IsPerpendicularTo(Vector3d, Double) Determines whether this vector is perpendicular to another vector, within a provided angle tolerance.
Public method IsTiny() Uses RhinoMath.ZeroTolerance for IsTiny calculation.
Public methodCode example IsTiny(Double) Determines whether a vector is very short.
Public methodStatic member Multiply(Double, Vector3d) Multiplies a vector by a number, having the effect of scaling it. (Provided for languages that do not support operator overloading. You can use the * operator otherwise)
Public methodStatic member Multiply(Vector3d, Vector3d) Multiplies two vectors together, returning the dot product (or inner product). This differs from the cross product. (Provided for languages that do not support operator overloading. You can use the * operator otherwise)
Public methodStatic member Multiply(Vector3d, Double) Multiplies a vector by a number, having the effect of scaling it. (Provided for languages that do not support operator overloading. You can use the * operator otherwise)
Public methodStatic member Negate Computes the reversed vector. (Provided for languages that do not support operator overloading. You can use the - unary operator otherwise)
Public method PerpendicularTo Sets this vector to be perpendicular to another vector. Result is not unitized.
Public method Reverse Reverses this vector in place (reverses the direction). If this vector is Invalid, no changes will occur and false will be returned.
Public method Rotate Rotates this vector around a given axis.
Public methodStatic member Subtract Subtracts the second vector from the first one. (Provided for languages that do not support operator overloading. You can use the - operator otherwise)
Public method ToString Returns the string representation of the current vector, in the form X,Y,Z. (Overrides ValueType.ToString().)
Public method Transform Transforms the vector in place. The transformation matrix acts on the left of the vector; i.e.,

result = transformation*vector

Public method Unitize Unitizes the vector in place. A unit vector has length 1 unit. An invalid or zero length vector cannot be unitized.
Public methodStatic member VectorAngle(Vector3d, Vector3d) Compute the angle between two vectors. This operation is commutative.
Public methodStatic member VectorAngle(Vector3d, Vector3d, Plane) Computes the angle on a plane between two vectors.
Public methodStatic member VectorAngle(Vector3d, Vector3d, Vector3d) Computes the angle of v1, v2 with a normal vector.
  Back to Top

Operators

 

Name Description
Public operatorStatic member Addition Sums up two vectors.
Public operatorStatic member Division Divides a Vector3d by a number, having the effect of shrinking it.
Public operatorStatic member Equality Determines whether two vectors have the same value.
Public operatorStatic member GreaterThan Determines whether the first specified vector comes after (has superior sorting value than) the second vector. Components evaluation priority is first X, then Y, then Z.
Public operatorStatic member GreaterThanOrEqual Determines whether the first specified vector comes after (has superior sorting value than) the second vector, or it is equal to it. Components evaluation priority is first X, then Y, then Z.
Public operatorStatic member Implicit(Vector3f to Vector3d) Converts a single-precision (float) vector in a double-precision vector, without needing casting.
Public operatorStatic member Inequality Determines whether two vectors have different values.
Public operatorStatic member LessThan Determines whether the first specified vector comes before (has inferior sorting value than) the second vector. Components evaluation priority is first X, then Y, then Z.
Public operatorStatic member LessThanOrEqual Determines whether the first specified vector comes before (has inferior sorting value than) the second vector, or it is equal to it. Components evaluation priority is first X, then Y, then Z.
Public operatorStatic member Multiply(Double, Vector3d) Multiplies a vector by a number, having the effect of scaling it.
Public operatorStatic member Multiply(Vector3d, Vector3d) Multiplies two vectors together, returning the dot product (or inner product). This differs from the cross product.
Public operatorStatic member Multiply(Vector3d, Double) Multiplies a vector by a number, having the effect of scaling it.
Public operatorStatic member Subtraction Subtracts the second vector from the first one.
Public operatorStatic member UnaryNegation Computes the opposite vector.
  Back to Top

Version Information

Supported in: 6.0.16224.21491, 5D58w

See Also

Reference

Rhino.Geometry Namespace

⚠️ **GitHub.com Fallback** ⚠️