Vector Struct
The Vector class represents a 3 dimensional vector.
Syntax
public struct Vector
Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Members
See Also: Inherited members from ValueType.
Public Constructors
Public Fields
static readonly
|
Back | Vector . Deprecated back vector. |
static readonly
|
Down | Vector . Deprecated down vector. |
static readonly
|
Forward | Vector . Deprecated forward vector. |
static readonly
|
Left | Vector . Deprecated left vector. |
static readonly
|
ObjectBack | Vector . The default world back vector. |
static readonly
|
ObjectDown | Vector . The default world down vector. |
static readonly
|
ObjectForward | Vector . The default world forward vector. |
static readonly
|
ObjectLeft | Vector . The default world left vector. |
static readonly
|
ObjectRight | Vector . The default world right vector. |
static readonly
|
ObjectUp | Vector . The default world up vector. |
static readonly
|
One | Vector . A vector with all components 1. |
static readonly
|
Right | Vector . Deprecated right vector. |
static readonly
|
Up | Vector . Deprecated up Vector |
static readonly
|
Zero | Vector . A vector with all components 0. |
Public Properties
Public Methods
AngleTo (ref Vector) : float
Returns the angle in radians between this vector and the given vector. |
||
Cross (ref Vector) : Vector
Calculates the cross product of 2 3D vectors. |
||
Dot (ref Vector) : float
Performs a 3-component scalar or dot product. |
||
Dot3 (ref Vector) : float
Performs a 3-component scalar or dot product. |
||
Dot4 (ref Vector) : float
Performs a 4-component scalar or dot product. |
||
Length () : float
Calculates the magnitude of this vector. |
||
LengthSquared () : float
Calculates the square magnitude of this vector. |
||
Lerp (ref Vector, float) : Vector
Performs a linear interpolation between two vectors. |
||
Normalized () : Vector
Returns a vector with the same orientation and unit length. |
||
static
|
Orthonormalize (ref Vector, ref Vector) : Vector
Normalizes the two vectors and returns the normalized cross product. |
|
static
|
Parse (string) : Vector
Parse a Vector from a string. |
|
Rotate (ref Quaternion) : Vector
Returns a new vector which is this vector rotated by the given quaternion. |
||
override
|
ToString () : string
Generates a string representation of the vector. |
|
ToString (string) : string
Generates a string representation of the vector. |
||
ToString4 (string) : string
Generates a string representation of the vector, including the W parameter. |
||
static
|
TryParse (string, out Vector) : bool
Attempt to parse a Vector from a string |
Public Operators
static
|
Addition (ref Vector, ref Vector) | Performs vector addition. |
static
|
Division (ref Vector, float) | Divides vector components by a scalar. |
static
|
Multiply (ref Vector, float) | Performs a vector scalar multiplication. |
static
|
Multiply (float, ref Vector) | Performs a vector scalar multiplication. |
static
|
Subtraction (ref Vector, ref Vector) | Performs vector subtraction. |
static
|
Conversion to Sansar.Vector (Implicit) | Converts a Mono.Simd.Vector4f to a vector. |
static
|
Conversion to Mono.Simd.Vector4f (Implicit) | Converts a vector to a Mono.Simd.Vector4f |
Member Details
Vector Constructor
Creates a new vector with the supplied values.Syntax
public Vector ([System.Runtime.CompilerServices.IsReadOnly] ref Mono.Simd.Vector4f v)Parameters
- v
- Initializes the vector from a Mono.Simd.Vector4f. W should be 0 and is assumed to be 0 for most operations.
Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Vector Constructor
Creates a new vector with all values set to the given value.Syntax
public Vector (float all)Parameters
- all
- The value for all coordinates.
Remarks
W will be set to 0.Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Vector Constructor
Creates a new vector with the supplied values.Syntax
Parameters
- x
- The x coordinate.
- y
- The y coordinate.
- z
- The z coordinate.
- w
- The w coordinate. W defaults to 0 and is assumed to be 0 for most operations.
Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
AngleTo Method
Returns the angle in radians between this vector and the given vector.Syntax
Parameters
- b
- The angle to compare.
Returns
The smallest angle in radians between the two vectors.Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Back Field
Deprecated back vector.Syntax
[System.Obsolete("Use ObjectBack for correct back vector.", false)]
public static readonly Vector BackSee Also
Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Cross Method
Calculates the cross product of 2 3D vectors.Syntax
Parameters
- b
- The second vector.
Returns
a X bRemarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Dot Method
Performs a 3-component scalar or dot product.Syntax
Parameters
- b
- The second vector.
Returns
Returns X*b.X+Y*b.Y+Z*b.ZRemarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Dot3 Method
Performs a 3-component scalar or dot product.Syntax
Parameters
- b
- The second vector.
Returns
Returns X*b.X+Y*b.Y+Z*b.ZRemarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Dot4 Method
Performs a 4-component scalar or dot product.Syntax
Parameters
- b
- The second vector.
Returns
Returns X*b.X+Y*b.Y+Z*b.Z+W*b.WRemarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Down Field
Deprecated down vector.Syntax
[System.Obsolete("Use ObjectDown for correct down vector.", false)]
public static readonly Vector DownSee Also
Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Forward Field
Deprecated forward vector.Syntax
[System.Obsolete("Use ObjectForward for correct forward vector.", false)]
public static readonly Vector ForwardSee Also
Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Item Property
Allows getting coordinates by index.Syntax
Parameters
- index
- 0=>X, 1=>Y, 2=>Z, 3=>W
Value
Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Left Field
Deprecated left vector.Syntax
[System.Obsolete("Use ObjectLeft for correct left vector.", false)]
public static readonly Vector LeftSee Also
Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Length Method
Calculates the magnitude of this vector.Syntax
public float Length ()Returns
The 3D vector length.Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
LengthSquared Method
Calculates the square magnitude of this vector.Syntax
public float LengthSquared ()Returns
The square of the 3D vector length.Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Lerp Method
Performs a linear interpolation between two vectors.Syntax
Parameters
- b
- The second vector.
- amount
- Value from [0..1] indicating the weight for the second vector.
Returns
A vector that is linearly interpolated between the two sources.Remarks
a + (b-a) * amount.Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Normalized Method
Returns a vector with the same orientation and unit length.Syntax
public Vector Normalized ()Returns
A vector with the same orientation and unit length.Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
ObjectBack Field
The default world back vector.Syntax
public static readonly Vector ObjectBackRemarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
ObjectDown Field
The default world down vector.Syntax
public static readonly Vector ObjectDownRemarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
ObjectForward Field
The default world forward vector.Syntax
public static readonly Vector ObjectForwardRemarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
ObjectLeft Field
The default world left vector.Syntax
public static readonly Vector ObjectLeftRemarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
ObjectRight Field
The default world right vector.Syntax
public static readonly Vector ObjectRightRemarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
ObjectUp Field
The default world up vector.Syntax
public static readonly Vector ObjectUpRemarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
One Field
A vector with all components 1.Syntax
public static readonly Vector OneRemarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
op_Addition Method
Performs vector addition.Syntax
public static Vector operator+ ([System.Runtime.CompilerServices.IsReadOnly] ref Vector a, [System.Runtime.CompilerServices.IsReadOnly] ref Vector b)Parameters
- a
- The first Vector.
- b
- The second Vector.
Returns
A new vector that is the sum of the arguments.Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
op_Division Method
Divides vector components by a scalar.Syntax
Parameters
- a
- The vector.
- b
- The scalar.
Returns
Returns a new vector with value [a.X/b, a.Y/b, a.Z/b, a.W/b]Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Conversion Method
Converts a Mono.Simd.Vector4f to a vector.Syntax
public static implicit operator Vector ([System.Runtime.CompilerServices.IsReadOnly] ref Mono.Simd.Vector4f v)Parameters
- v
- The vector to convert
Returns
Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Conversion Method
Converts a vector to a Mono.Simd.Vector4fSyntax
public static implicit operator Mono.Simd.Vector4f ([System.Runtime.CompilerServices.IsReadOnly] ref Vector v)Parameters
- v
- The vector to convert
Returns
Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
op_Multiply Method
Performs a vector scalar multiplication.Syntax
Parameters
- a
- The vector.
- b
- The scalar.
Returns
Returns a new vector with value [a.X*b, a.Y*b, a.Z*b, a.W*b]Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
op_Multiply Method
Performs a vector scalar multiplication.Syntax
Parameters
- a
- The scalar.
- b
- The vector.
Returns
Returns a new vector with value [a*b.X, a*b.Y, a*b.Z, a*b.W]Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
op_Subtraction Method
Performs vector subtraction.Syntax
public static Vector operator- ([System.Runtime.CompilerServices.IsReadOnly] ref Vector a, [System.Runtime.CompilerServices.IsReadOnly] ref Vector b)Parameters
- a
- The first Vector.
- b
- The second Vector.
Returns
A new vector that is the difference of the arguments.Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Orthonormalize Method
Normalizes the two vectors and returns the normalized cross product.Syntax
Parameters
- forward
- The facing ve
- up
Returns
Remarks
Documentation for this section has not yet been entered.Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Parse Method
Parse a Vector from a string.Syntax
Parameters
- vectorString
- A string of the format <X,Y,Z> or <X,Y,Z,W>
Returns
The Vector parsed from the string.Exceptions
Type Reason ArgumentException If vectorString is null. FormatException If the string is not a valid vector or its components are not valid floats. Remarks
Example
C# Example Vector myVector = Vector.Parse("<1,2.34,5.6>");Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Right Field
Deprecated right vector.Syntax
[System.Obsolete("Use ObjectRight for correct right vector.", false)]
public static readonly Vector RightSee Also
Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Rotate Method
Returns a new vector which is this vector rotated by the given quaternion.Syntax
public Vector Rotate ([System.Runtime.CompilerServices.IsReadOnly] ref Quaternion q)Parameters
- q
- The quaternion rotation.
Returns
Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
ToString Method
Generates a string representation of the vector.Syntax
public override string ToString ()Returns
The vector as a string.Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
ToString Method
Generates a string representation of the vector.Syntax
Parameters
- format
- Format to use for each of the coordinates.
Returns
The vector as a string.Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
ToString4 Method
Generates a string representation of the vector, including the W parameter.Syntax
Parameters
- format
- Format to use for each of the coordinates.
Returns
The vector as a string.Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
TryParse Method
Attempt to parse a Vector from a stringSyntax
Parameters
- vectorString
- A string of the format <X,Y,Z> or <X,Y,Z,W>
- vector
- The vector that will be set if vectorString represents a valid vector.
Returns
True if successfully parsed a vector, false if not.Remarks
Example
C# Example Vector myVector; if (Vector.Parse("<1,2.34,5.6>", out myVector) { // myVector is set }Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Up Field
Deprecated up VectorSyntax
[System.Obsolete("Use ObjectUp for correct up vector.", false)]
public static readonly Vector UpSee Also
Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
W Property
The W coordinate of the vector.Syntax
public float W { get; set; }Value
Remarks
W should be 0 and is assumed to be 0 for most operations.Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
X Property
The X coordinate of the vector.Syntax
public float X { get; set; }Value
Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Y Property
The Y coordinate of the vector.Syntax
public float Y { get; set; }Value
Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Z Property
The Z coordinate of the vector.Syntax
public float Z { get; set; }Value
Remarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
Zero Field
A vector with all components 0.Syntax
public static readonly Vector ZeroRemarks
Requirements
Namespace: Sansar
Assembly: Sansar.Script (in Sansar.Script.dll)
Assembly Versions: 1.0.0.0
0 Comments