This repository has been archived by the owner on Oct 22, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 125
VRageMath.Vector3D
Malware edited this page Dec 25, 2018
·
55 revisions
← Index
public struct Vector3D: ValueType, IEquatable<T>
Namespace: VRageMath
Assembly: VRage.Math.dll
Inheritance: ValueType
Implements:
Member | Description |
---|---|
X | Gets or sets the x-component of the vector. |
Y | Gets or sets the y-component of the vector. |
Z | Gets or sets the z-component of the vector. |
Zero | |
One | |
Half | |
PositiveInfinity | |
NegativeInfinity | |
UnitX | |
UnitY | |
UnitZ | |
Up | |
Down | |
Right | |
Left | |
Forward | |
Backward | |
MaxValue | |
MinValue |
Member | Description |
---|---|
Sum | |
Volume |
Member | Description |
---|---|
TransformNormal(ref Vector3D, ref MatrixI, ref Vector3D) | |
TransformNormal(Vector3D, MyBlockOrientation) | |
TransformNormal(ref Vector3D, MyBlockOrientation, ref Vector3D) | |
TransformNormal(Vector3D, ref MatrixD) | |
Transform(Vector3D, Quaternion) | Transforms a Vector3 by a specified Quaternion rotation. |
Transform(ref Vector3D, ref Quaternion, ref Vector3D) | Transforms a Vector3 by a specified Quaternion rotation. |
Rotate(ref Vector3D, ref MatrixD, ref Vector3D) | |
Rotate(Vector3D, MatrixD) | |
Transform(Vector3D[], ref MatrixD, Vector3D[]) | Transforms a source array of Vector3s by a specified Matrix and writes the results to an existing destination array. |
Transform(Vector3D[], ref MatrixD, *Vector3D) | |
Transform(Vector3D[], int, ref Matrix, Vector3D[], int, int) | Applies a specified transform Matrix to a specified range of an array of Vector3s and writes the results into a specified range of a destination array. |
TransformNormal(Vector3D[], ref Matrix, Vector3D[]) | Transforms an array of 3D vector normals by a specified Matrix. |
TransformNormal(Vector3D[], ref Matrix, *Vector3D) | |
TransformNormal(Vector3D[], int, ref Matrix, Vector3D[], int, int) | Transforms a specified range in an array of 3D vector normals by a specified Matrix and writes the results to a specified range in a destination array. |
Transform(Vector3D[], ref Quaternion, Vector3D[]) | Transforms a source array of Vector3s by a specified Quaternion rotation and writes the results to an existing destination array. |
Transform(Vector3D[], int, ref Quaternion, Vector3D[], int, int) | Applies a specified Quaternion rotation to a specified range of an array of Vector3s and writes the results into a specified range of a destination array. |
Negate(Vector3D) | Returns a vector pointing in the opposite direction. |
Negate(ref Vector3D, ref Vector3D) | Returns a vector pointing in the opposite direction. |
Add(Vector3D, Vector3D) | Adds two vectors. |
Add(ref Vector3D, ref Vector3D, ref Vector3D) | Adds two vectors. |
Subtract(Vector3D, Vector3D) | Subtracts a vector from a vector. |
Subtract(ref Vector3D, ref Vector3D, ref Vector3D) | Subtracts a vector from a vector. |
Multiply(Vector3D, Vector3D) | Multiplies the components of two vectors by each other. |
Multiply(ref Vector3D, ref Vector3D, ref Vector3D) | Multiplies the components of two vectors by each other. |
Multiply(Vector3D, double) | Multiplies a vector by a scalar value. |
Multiply(ref Vector3D, double, ref Vector3D) | Multiplies a vector by a scalar value. |
Divide(Vector3D, Vector3D) | Divides the components of a vector by the components of another vector. |
Divide(ref Vector3D, ref Vector3D, ref Vector3D) | Divides the components of a vector by the components of another vector. |
Divide(Vector3D, double) | Divides a vector by a scalar value. |
Divide(ref Vector3D, double, ref Vector3D) | Divides a vector by a scalar value. |
CalculatePerpendicularVector(Vector3D) | |
CalculatePerpendicularVector(ref Vector3D) | |
GetAzimuthAndElevation(Vector3D, ref double, ref double) | |
CreateFromAzimuthAndElevation(double, double, ref Vector3D) | |
VolumeInt(double) | |
IsInsideInclusive(ref Vector3D, ref Vector3D) | |
SwapYZCoordinates(Vector3D) | |
GetDim(int) | |
SetDim(int, double) | |
Round(Vector3D) | |
Floor(Vector3D) | |
Fract(ref Vector3D, ref Vector3D) | |
Round(Vector3D, int) | |
Abs(ref Vector3D, ref Vector3D) | |
ProjectOnPlane(ref Vector3D, ref Vector3D) | Projects given vector on plane specified by it's normal. |
ProjectOnVector(ref Vector3D, ref Vector3D) | Projects vector on another vector resulting in new vector in guided vector's direction with different length. |
Abs(Vector3D) | |
Sign(Vector3D) | |
SignNonZero(Vector3D) | Returns per component sign, never returns zero. For zero component returns sign 1. Faster than Sign. |
Interpolate3(Vector3D, Vector3D, double) | |
IsValid() | |
AssertIsValid() | |
IsUnit(ref Vector3D) | |
ArePerpendicular(ref Vector3D, ref Vector3D) | |
IsZero(Vector3D) | |
IsZero(Vector3D, double) | |
IsZeroVector(Vector3D) | |
IsZeroVector(Vector3D, double) | |
Step(Vector3D) | |
ToString() | Retrieves a string representation of the current object. |
TryParse(string, ref Vector3D) | |
ToString(string) | |
Equals(Vector3D) | Determines whether the specified Object is equal to the Vector3. |
Equals(Vector3D, double) | |
Equals(object) | Returns a value that indicates whether the current instance is equal to a specified object. |
GetHashCode() | |
GetHash() | Gets the hash code of the vector object. |
Length() | Calculates the length of the vector. |
LengthSquared() | Calculates the length of the vector squared. |
Distance(Vector3D, Vector3D) | Calculates the distance between two vectors. |
Distance(Vector3D, Vector3) | |
Distance(Vector3, Vector3D) | |
Distance(ref Vector3D, ref Vector3D, ref double) | Calculates the distance between two vectors. |
DistanceSquared(Vector3D, Vector3D) | Calculates the distance between two vectors squared. |
DistanceSquared(ref Vector3D, ref Vector3D, ref double) | Calculates the distance between two vectors squared. |
RectangularDistance(Vector3D, Vector3D) | Calculates rectangular distance (a.k.a. Manhattan distance or Chessboard distace) between two vectors. |
RectangularDistance(ref Vector3D, ref Vector3D) | Calculates rectangular distance (a.k.a. Manhattan distance or Chessboard distace) between two vectors. |
Dot(Vector3D, Vector3D) | Calculates the dot product of two vectors. If the two vectors are unit vectors, the dot product returns a doubleing point value between -1 and 1 that can be used to determine some properties of the angle between two vectors. For example, it can show whether the vectors are orthogonal, parallel, or have an acute or obtuse angle between them. |
Dot(Vector3D, Vector3) | |
Dot(ref Vector3D, ref Vector3D, ref double) | Calculates the dot product of two vectors and writes the result to a user-specified variable. If the two vectors are unit vectors, the dot product returns a doubleing point value between -1 and 1 that can be used to determine some properties of the angle between two vectors. For example, it can show whether the vectors are orthogonal, parallel, or have an acute or obtuse angle between them. |
Dot(ref Vector3D, ref Vector3, ref double) | |
Dot(ref Vector3, ref Vector3D, ref double) | |
Dot(Vector3D) | |
Dot(Vector3) | |
Dot(ref Vector3D) | |
Cross(Vector3D) | |
Normalize() | Turns the current vector into a unit vector. The result is a vector one unit in length pointing in the same direction as the original vector. |
Normalize(Vector3D) | Creates a unit vector from the specified vector. The result is a vector one unit in length pointing in the same direction as the original vector. |
Normalize(ref Vector3D, ref Vector3D) | Creates a unit vector from the specified vector, writing the result to a user-specified variable. The result is a vector one unit in length pointing in the same direction as the original vector. |
Cross(Vector3D, Vector3D) | Calculates the cross product of two vectors. |
Cross(ref Vector3D, ref Vector3D, ref Vector3D) | Calculates the cross product of two vectors. |
Reflect(Vector3D, Vector3D) | Returns the reflection of a vector off a surface that has the specified normal. Reference page contains code sample. |
Reflect(ref Vector3D, ref Vector3D, ref Vector3D) | Returns the reflection of a vector off a surface that has the specified normal. Reference page contains code sample. |
Reject(Vector3D, Vector3D) | Returns the rejection of vector from direction, i.e. projection of vector onto the plane defined by origin and direction |
Reject(ref Vector3D, ref Vector3D, ref Vector3D) | Returns the rejection of vector from direction, i.e. projection of vector onto the plane defined by origin and direction |
Min() | Returns the component of the vector that is smallest of all the three components. |
AbsMin() | Returns the component of the vector, whose absolute value is smallest of all the three components. |
Max() | Returns the component of the vector that is largest of all the three components. |
AbsMax() | Returns the component of the vector, whose absolute value is largest of all the three components. |
AbsMaxComponent() | |
Min(Vector3D, Vector3D) | Returns a vector that contains the lowest value from each matching pair of components. |
Min(ref Vector3D, ref Vector3D, ref Vector3D) | Returns a vector that contains the lowest value from each matching pair of components. |
Max(Vector3D, Vector3D) | Returns a vector that contains the highest value from each matching pair of components. |
Max(ref Vector3D, ref Vector3D, ref Vector3D) | Returns a vector that contains the highest value from each matching pair of components. |
MinMax(ref Vector3D, ref Vector3D) | Separates minimal and maximal values of any two input vectors |
DominantAxisProjection(Vector3D) | Returns a vector that is equal to the projection of the input vector to the coordinate axis that corresponds to the original vector's largest value. |
DominantAxisProjection(ref Vector3D, ref Vector3D) | Calculates a vector that is equal to the projection of the input vector to the coordinate axis that corresponds to the original vector's largest value. The result is saved into a user-specified variable. |
Clamp(Vector3D, Vector3D, Vector3D) | Restricts a value to be within a specified range. |
Clamp(ref Vector3D, ref Vector3D, ref Vector3D, ref Vector3D) | Restricts a value to be within a specified range. |
ClampToSphere(Vector3D, double) | |
ClampToSphere(ref Vector3D, double) | |
Lerp(Vector3D, Vector3D, double) | Performs a linear interpolation between two vectors. |
Lerp(ref Vector3D, ref Vector3D, double, ref Vector3D) | Performs a linear interpolation between two vectors. |
Barycentric(Vector3D, Vector3D, Vector3D, double, double) | Returns a Vector3 containing the 3D Cartesian coordinates of a point specified in Barycentric coordinates relative to a 3D triangle. |
Barycentric(ref Vector3D, ref Vector3D, ref Vector3D, double, double, ref Vector3D) | Returns a Vector3 containing the 3D Cartesian coordinates of a point specified in barycentric (areal) coordinates relative to a 3D triangle. |
Barycentric(Vector3D, Vector3D, Vector3D, Vector3D, ref double, ref double, ref double) | Compute barycentric coordinates (u, v, w) for point p with respect to triangle (a, b, c) From : Real-Time Collision Detection, Christer Ericson, CRC Press 3.4 Barycentric Coordinates |
SmoothStep(Vector3D, Vector3D, double) | Interpolates between two values using a cubic equation. |
SmoothStep(ref Vector3D, ref Vector3D, double, ref Vector3D) | Interpolates between two values using a cubic equation. |
CatmullRom(Vector3D, Vector3D, Vector3D, Vector3D, double) | Performs a Catmull-Rom interpolation using the specified positions. |
CatmullRom(ref Vector3D, ref Vector3D, ref Vector3D, ref Vector3D, double, ref Vector3D) | Performs a Catmull-Rom interpolation using the specified positions. |
Hermite(Vector3D, Vector3D, Vector3D, Vector3D, double) | Performs a Hermite spline interpolation. |
Hermite(ref Vector3D, ref Vector3D, ref Vector3D, ref Vector3D, double, ref Vector3D) | Performs a Hermite spline interpolation. |
Transform(Vector3D, MatrixD) | Transforms a 3D vector by the given matrix. |
Transform(Vector3, MatrixD) | |
Transform(Vector3D, Matrix) | Transforms a 3D vector by the given matrix. |
Transform(Vector3D, ref MatrixD) | |
Transform(ref Vector3D, ref MatrixD, ref Vector3D) | Transforms a Vector3 by the given Matrix. |
Transform(ref Vector3, ref MatrixD, ref Vector3D) | |
TransformNoProjection(ref Vector3D, ref MatrixD, ref Vector3D) | |
RotateAndScale(ref Vector3D, ref MatrixD, ref Vector3D) | |
Transform(ref Vector3D, ref MatrixI, ref Vector3D) | |
TransformNormal(Vector3D, Matrix) | Transforms a 3D vector normal by a matrix. |
TransformNormal(Vector3, MatrixD) | Transforms a 3D vector normal by a matrix. |
TransformNormal(Vector3D, MatrixD) | Transforms a 3D vector normal by a matrix. |
TransformNormal(ref Vector3D, ref MatrixD, ref Vector3D) | Transforms a vector normal by a matrix. |
TransformNormal(ref Vector3, ref MatrixD, ref Vector3D) |
Do you have questions, comments, suggestions for improvements? Is there something I can do better? Did I make a mistake? Please add an issue here, and prefix your issue title with Wiki. Thank you, your help will be very appreciated!