Vector3d Structure |
Namespace: Rhino.Geometry
The Vector3d type exposes the following members.
Name | Description | |
---|---|---|
Vector3d(Point3d) |
Initializes a new instance of a vector, copying the three components from the three coordinates of a point.
| |
Vector3d(Vector3d) |
Initializes a new instance of a vector, copying the three components from a vector.
| |
Vector3d(Vector3f) |
Initializes a new instance of a vector, copying the three components from a single-precision vector.
| |
Vector3d(Double, Double, Double) |
Initializes a new instance of a vector, using its three components.
|
Name | Description | |
---|---|---|
IsUnitVector |
Gets a value indicating whether or not this is a unit vector.
A unit vector has length 1.
| |
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.
| |
IsZero |
Gets a value indicating whether the X, Y, and Z values are all equal to 0.0.
| |
Item |
Gets or sets a vector component at the given index.
| |
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.
| |
MaximumCoordinate |
Gets the largest (both positive and negative) component value in this vector, as an absolute value.
| |
MinimumCoordinate |
Gets the smallest (both positive and negative) component value in this vector.
| |
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.
| |
Unset |
Gets the value of the vector with each component set to RhinoMath.UnsetValue.
| |
X |
Gets or sets the X (first) component of the vector.
| |
XAxis |
Gets the value of the vector with components 1,0,0.
| |
Y |
Gets or sets the Y (second) component of the vector.
| |
YAxis |
Gets the value of the vector with components 0,1,0.
| |
Z |
Gets or sets the Z (third) component of the vector.
| |
ZAxis |
Gets the value of the vector with components 0,0,1.
| |
Zero |
Gets the value of the vector with components 0,0,0.
|
Name | Description | |
---|---|---|
Add |
Sums up two vectors.
(Provided for languages that do not support operator overloading. You can use the + operator otherwise) | |
AreOrthogonal |
Test whether three vectors describe an orthogonal axis system.
All vectors must be mutually perpendicular this to be the case.
| |
AreOrthonormal |
Test whether three vectors describe an orthogonal, unit axis system.
All vectors must be mutually perpendicular and have unit length for this to be the case.
| |
AreRighthanded |
Test whether three vectors describe a right-handed, orthogonal, unit axis system.
The vectors must be orthonormal and follow the right-hand ordering; index-finger=x,
middle-finger=y, thumb=z.
| |
CompareTo |
Compares this Vector3d with another Vector3d.
Component evaluation priority is first X, then Y, then Z. | |
CrossProduct |
Computes the cross product (or vector product, or exterior product) of two vectors.
This operation is not commutative. | |
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) | |
EpsilonEquals |
Check that all values in other are within epsilon of the values in this
| |
Equals(Object) |
Determines whether the specified System.Object is a Vector3d and has the same values as the present vector.
(Overrides ValueTypeEquals(Object).) | |
Equals(Vector3d) |
Determines whether the specified vector has the same value as the present vector.
| |
GetHashCode |
Computes the hash code for the current vector.
(Overrides ValueTypeGetHashCode.) | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
IsParallelTo(Vector3d) |
Determines whether this vector is parallel to another vector, within one degree (within Pi / 180).
| |
IsParallelTo(Vector3d, Double) |
Determines whether this vector is parallel to another vector, within a provided tolerance.
| |
IsPerpendicularTo(Vector3d) |
Test to see whether this vector is perpendicular to within one degree of another one.
| |
IsPerpendicularTo(Vector3d, Double) |
Determines whether this vector is perpendicular to another vector, within a provided angle tolerance.
| |
IsTiny |
Uses RhinoMath.ZeroTolerance for IsTiny calculation.
| |
IsTiny(Double) |
Determines whether a vector is very short.
| |
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) | |
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) | |
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) | |
Negate |
Computes the reversed vector.
(Provided for languages that do not support operator overloading. You can use the - unary operator otherwise) | |
PerpendicularTo(Vector3d) |
Sets this vector to be perpendicular to another vector.
Result is not unitized.
| |
PerpendicularTo(Point3d, Point3d, Point3d) |
Set this vector to be perpendicular to a plane defined by 3 points.
| |
Reverse |
Reverses this vector in place (reverses the direction).
If this vector is Invalid, no changes will occur and false will be returned. | |
Rotate |
Rotates this vector around a given axis.
| |
Subtract |
Subtracts the second vector from the first one.
(Provided for languages that do not support operator overloading. You can use the - operator otherwise) | |
ToString |
Returns the string representation of the current vector, in the form X,Y,Z.
(Overrides ValueTypeToString.) | |
ToString(String, IFormatProvider) | Formats the value of the current instance using the specified format. | |
Transform |
Transforms the vector in place.
The transformation matrix acts on the left of the vector; i.e., result = transformation*vector | |
Unitize |
Unitizes the vector in place. A unit vector has length 1 unit.
An invalid or zero length vector cannot be unitized. | |
VectorAngle(Vector3d, Vector3d) |
Compute the angle between two vectors.
This operation is commutative. | |
VectorAngle(Vector3d, Vector3d, Plane) |
Computes the angle on a plane between two vectors.
| |
VectorAngle(Vector3d, Vector3d, Vector3d) |
Computes the angle of v1, v2 with a normal vector.
|
Name | Description | |
---|---|---|
Addition |
Sums up two vectors.
| |
Division |
Divides a Vector3d by a number, having the effect of shrinking it.
| |
Equality |
Determines whether two vectors have the same value.
| |
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. | |
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. | |
(Vector3f to Vector3d) |
Converts a single-precision (float) vector in a double-precision vector, without needing casting.
| |
Inequality |
Determines whether two vectors have different values.
| |
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. | |
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. | |
Multiply(Double, Vector3d) |
Multiplies a vector by a number, having the effect of scaling it.
| |
Multiply(Vector3d, Vector3d) |
Multiplies two vectors together, returning the dot product (or inner product).
This differs from the cross product.
| |
Multiply(Vector3d, Double) |
Multiplies a vector by a number, having the effect of scaling it.
| |
Subtraction |
Subtracts the second vector from the first one.
| |
UnaryNegation |
Computes the opposite vector.
|