Struct Vector3D
Represents a geometric 3D vector.
Inherited Members
Namespace: TopSolid.Kernel.Automating
Assembly: cs.temp.dll.dll
Syntax
[AvailableSinceVersion(7, 6, 0, 0)]
public struct Vector3D
Remarks
This structure is available since v7.6.
Constructors
Vector3D(Double, Double, Double)
Initializes a new instance of the Vector3D structure with its coordinates.
Declaration
public Vector3D(double inX, double inY, double inZ)
Parameters
Type | Name | Description |
---|---|---|
System.Double | inX | X component. |
System.Double | inY | Y component. |
System.Double | inZ | Z component. |
Fields
V0
Null vector, i.e. (0,0,0).
Declaration
public static readonly Vector3D V0
Field Value
Type | Description |
---|---|
Vector3D |
VX
Positive X unit vector, i.e. (1,0,0).
Declaration
public static readonly Vector3D VX
Field Value
Type | Description |
---|---|
Vector3D |
VY
Positive Y unit vector, i.e. (0,1,0).
Declaration
public static readonly Vector3D VY
Field Value
Type | Description |
---|---|
Vector3D |
VZ
Positive Z unit vector, i.e. (0,0,1).
Declaration
public static readonly Vector3D VZ
Field Value
Type | Description |
---|---|
Vector3D |
X
X component.
Declaration
public double X
Field Value
Type | Description |
---|---|
System.Double |
Y
Y component.
Declaration
public double Y
Field Value
Type | Description |
---|---|
System.Double |
Z
Z component.
Declaration
public double Z
Field Value
Type | Description |
---|---|
System.Double |
Properties
Norm
Gets the vector's norm.
Declaration
public readonly double Norm { get; }
Property Value
Type | Description |
---|---|
System.Double | Vector's norm. |
Operators
Addition(Vector3D, Vector3D)
Adds two vectors.
Declaration
public static Vector3D operator +(Vector3D inVector1, Vector3D inVector2)
Parameters
Type | Name | Description |
---|---|---|
Vector3D | inVector1 | Left hand side vector. |
Vector3D | inVector2 | Right hand side vector. |
Returns
Type | Description |
---|---|
Vector3D | Vectors' sum. |
Division(Vector3D, Double)
Divides a vector by a double value.
Declaration
public static Vector3D operator /(Vector3D inVector, double inD)
Parameters
Type | Name | Description |
---|---|---|
Vector3D | inVector | Left hand side vector. |
System.Double | inD | Right hand side double. |
Returns
Type | Description |
---|---|
Vector3D | Scaled vector. |
ExclusiveOr(Vector3D, Vector3D)
Computes the cross product of two vectors.
Declaration
public static Vector3D operator ^(Vector3D inVector1, Vector3D inVector2)
Parameters
Type | Name | Description |
---|---|---|
Vector3D | inVector1 | Left hand side vector. |
Vector3D | inVector2 | Right hand side vector. |
Returns
Type | Description |
---|---|
Vector3D | Vectors' cross product. |
Explicit(Vector3D to Direction3D)
Casts a vector into a direction.
Declaration
public static explicit operator Direction3D(Vector3D inVector)
Parameters
Type | Name | Description |
---|---|---|
Vector3D | inVector |
Returns
Type | Description |
---|---|
Direction3D |
Multiply(Double, Vector3D)
Multiplies a double value and a vector.
Declaration
public static Vector3D operator *(double inD, Vector3D inVector)
Parameters
Type | Name | Description |
---|---|---|
System.Double | inD | Left hand side double. |
Vector3D | inVector | Right hand side vector. |
Returns
Type | Description |
---|---|
Vector3D | Scaled vector. |
Multiply(Vector3D, Double)
Multiplies a vector and a double value.
Declaration
public static Vector3D operator *(Vector3D inVector, double inD)
Parameters
Type | Name | Description |
---|---|---|
Vector3D | inVector | Left hand side vector. |
System.Double | inD | Right hand side double. |
Returns
Type | Description |
---|---|
Vector3D | Scaled vector. |
Multiply(Vector3D, Vector3D)
Computes the dot product of two vectors.
Declaration
public static double operator *(Vector3D inVector1, Vector3D inVector2)
Parameters
Type | Name | Description |
---|---|---|
Vector3D | inVector1 | Left hand side vector. |
Vector3D | inVector2 | Right hand side vector. |
Returns
Type | Description |
---|---|
System.Double | Vectors' dot product. |
Subtraction(Vector3D, Vector3D)
Subtracts two vectors.
Declaration
public static Vector3D operator -(Vector3D inVector1, Vector3D inVector2)
Parameters
Type | Name | Description |
---|---|---|
Vector3D | inVector1 | Left hand side vector. |
Vector3D | inVector2 | Right hand side vector. |
Returns
Type | Description |
---|---|
Vector3D | Vectors' subtraction. |
UnaryNegation(Vector3D)
Negates a vector.
Declaration
public static Vector3D operator -(Vector3D inVector)
Parameters
Type | Name | Description |
---|---|---|
Vector3D | inVector | Vector to negate. |
Returns
Type | Description |
---|---|
Vector3D | Negated vector. |