# Vector3 Structure

A structure encapsulating three double precision floating point values.

Namespace:  NeoAxis
Assembly:  NeoAxis.Core (in NeoAxis.Core.dll) Version: 2024.1.1.0 (2024.1.1.0)
Syntax
C#
`public struct Vector3`

The Vector3 type exposes the following members.

Constructors
NameDescription
Vector3(Vector3)
Constructs a vector with another given vector.
Vector3(Vector3F)
Constructs a vector with another given vector of Vector3F format.
Vector3(Vector3I)
Constructs a vector with another given vector of Vector3I format.
Vector3(Vector2, Double)
Constructs a vector with a given Vector2 and a scalar.
Vector3(Double, Double, Double)
Constructs a vector with the given individual elements.
Top
Properties
NameDescription
Item
Gets or sets the component at the specified index.
Top
Methods
NameDescription
Abs
Returns a vector whose elements are the absolute values of each of the specified vector's components.
Acos
Calculates the arc-cosine of each component of the specified vector.
AllNonZero
Determines whether all components of a given vector are unequal to the zero.
AnyNonZero
Determines whether any component of a given vector is unequal to the zero.
Asin
Calculates the arc-sine of each component of the specified vector.
Atan
Calculates the arc-tangent of each component of the specified vector.
Atan2
Returns the vector which contains the angles in radians whose tangents are the quotient of the corresponding components in the first specified vector y and the second specified vector x.
Clamp
Restricts the current instance of Vector3 to be within a specified range and returns the clamped value.
Cos
Calculates the cosine of each component of the specified vector.
Cosh
Calculates the hyperbolic cosine of each component of the specified vector.
Cross(Vector3)
Calculates the cross product of two vectors.
Cross(Vector3, Vector3)
Calculates the cross product of two vectors.
Cross(Vector3, Vector3)
Calculates the cross product of two vectors.
Cross(Vector3, Vector3, Vector3)
Calculates the cross product of two vectors.
Distance(Vector3, Vector3)
Calculates the distance between two vectors.
Distance(Vector3, Vector3)
Calculates the distance between two vectors.
Divide(Double, Vector3, Vector3)
Divides a scalar by a vector.
Divide(Vector3, Vector3, Vector3)
Divides the first vector by the second vector.
Divide(Vector3, Double, Vector3)
Divides a vector by a given scalar.
Dot(Vector3)
Calculates the dot product of two vectors.
Dot(Vector3)
Calculates the dot product of two vectors.
Dot(Vector3, Vector3)
Calculates the dot product of two vectors.
Dot(Vector3, Vector3, Double)
Calculates the dot product of two vectors.
Equals(Object)
Determines whether the specified object is equal to the current instance of Vector3.
(Overrides ValueTypeEquals(Object).)
Equals(Vector3)
Equals(Vector3, Double)
Determines whether the specified vector is equal to the current instance of Vector3 with a given precision.
Equals(Vector3, Vector3)
Equals(Vector3, Double)
Determines whether the specified vector is equal to the current instance of Vector3 with a given precision.
Exp
Returns the vector which contains e raised to the power of n, where n is the corresponding component in the specified vector.
GetClamp
Restricts the current instance of Vector3 to be within a specified range and returns the clamped value.
GetHashCode
Returns a hash code for this instance.
(Overrides ValueTypeGetHashCode.)
GetNormalize
Converts the current instance of Vector3 into a unit vector and returns the normalized vector.
GetSaturate
Clamps the components of the current instance of Vector3 between 0 and 1 and returns the saturated value.
GetTruncate
Rounds a given vector towards zero for each component in it and returns the truncated vector.
GetType
Gets the Type of the current instance.
(Inherited from Object.)
Length
Calculates the length of the current instance of Vector3.
LengthSquared
Calculates the squared length of the current instance of Vector3.
Lerp(Vector3, Vector3, Double)
Performs a linear interpolation between two vectors based on the given weighting.
Lerp(Vector3, Vector3, Double, Vector3)
Performs a linear interpolation between two vectors based on the given weighting.
Log
Calculates the natural logarithm of each component of the specified vector.
Log10
Calculates the base 10 logarithm of each component of the specified vector.
Max
Returns a vector containing the largest components of the specified vectors.
MaxComponent
Returns the value of the largest component of the current instance of Vector3.
Min
Returns a vector containing the smallest components of the specified vectors.
MinComponent
Returns the value of the smallest component of the current instance of Vector3.
Multiply(Double, Vector3, Vector3)
Multiplies a vector by a given scalar.
Multiply(Vector3, Vector3, Vector3)
Multiplies two vectors together.
Multiply(Vector3, Double, Vector3)
Multiplies a vector by a given scalar.
Negate
Negate(Vector3, Vector3)
Reverses the direction of a given vector.
Normalize
Converts the current instance of Vector3 into a unit vector.
Normalize(Vector3)
Converts a vector into a unit vector.
Normalize(Vector3, Vector3)
Converts a vector into a unit vector.
Parse
Converts a string representation of a vector into the equivalent Vector3 structure.
Pow
Returns the vector which contains the components of the first specified vector raised to power of the numbers which are equal to the corresponding components of the second specified vector.
Saturate
Clamps the components of the current instance of Vector3 between 0 and 1.
Select
Chooses one of two vectors depending on the pick1 value.
Sin
Calculates the sine of each component of the specified vector.
Sinh
Calculates the hyperbolic sine of each component of the specified vector.
Sqrt
Calculates the square root of each component of the specified vector.
Subtract
Subtracts two vectors.
Tan
Calculates the tangent of each component of the specified vector.
Tanh
Calculates the hyperbolic tangent of each component of the specified vector.
ToString
Returns a String that represents the current instance of Vector3.
(Overrides ValueTypeToString.)
ToString(Int32)
Returns a String that represents the current instance of Vector3 with a given precision.
ToVector2
Converts the current instance of Vector3 into an instance of Vector2.
ToVector2F
Converts the current instance of Vector3 into an instance of Vector2.
ToVector3F
Converts the current instance of Vector3 into the equivalent Vector3F structure.
ToVector3H
Converts the current instance of Vector3 into the equivalent Vector3F structure.
ToVector3I
Converts the current instance of Vector3 into the equivalent Vector3I structure.
Truncate
Rounds the current instance of Vector3 towards zero for each component in a vector.
Top
Operators
NameDescription
Division(Double, Vector3)
Divides a scalar by a vector.
Division(Vector3, Vector3)
Divides the first vector by the second vector.
Division(Vector3, Double)
Divides a vector by a given scalar.
Equality
Determines whether two given vectors are equal.
Inequality
Determines whether two given vectors are unequal.
Multiply(Double, Vector3)
Multiplies a vector by a given scalar.
Multiply(Vector3, Vector3)
Multiplies two vectors together.
Multiply(Vector3, Double)
Multiplies a vector by a given scalar.
Subtraction
Subtracts two vectors.
UnaryNegation
Reverses the direction of a given vector.
Top
Fields
NameDescription
One
Returns the vector (1,1,1).
OneAsString
X
The X component of the vector.
XAxis
Returns the vector (1,0,0).
Y
The Y component of the vector.
YAxis
Returns the vector (0,1,0).
Z
The Z component of the vector.
ZAxis
Returns the vector (0,0,1).
Zero
Returns the vector (0,0,0).
ZeroAsString
Top
Extension Methods
NameDescription
MethodInvoke
Calls the object method by name.
(Defined by ObjectEx.)