Urho.Vector4 Structure

Represents a 4D vector using four single-precision floating-point numbers.

See Also: Vector4

Syntax

public struct Vector4 : IEquatable<Vector4>

Remarks

The Vector4 structure is suitable for interoperation with unmanaged code requiring four consecutive floats.

Requirements

Namespace: Urho
Assembly: Urho (in Urho.dll)
Assembly Versions: 1.0.0.0

The members of Urho.Vector4 are listed below.

See Also: ValueType

Public Constructors

Constructs a new Vector4 from the given Vector2.
Constructs a new Vector4 from the given Vector3.
Constructs a new Vector4 from the given Vector4.
Constructs a new Vector4 from the specified Vector3 and W component.
Constructs a new Vector4.

Public Fields

static readonly
OneVector4. Defines an instance with all components set to 1.
static readonly
SizeInBytesInt32. Defines the size of the Vector4 struct in bytes.
static
UnitWVector4. Defines a unit-length Vector4 that points towards the W-axis.
static
UnitXVector4. Defines a unit-length Vector4 that points towards the X-axis.
static
UnitYVector4. Defines a unit-length Vector4 that points towards the Y-axis.
static
UnitZVector4. Defines a unit-length Vector4 that points towards the Z-axis.
WSingle. The W component of the Vector4.
XSingle. The X component of the Vector4.
YSingle. The Y component of the Vector4.
ZSingle. The Z component of the Vector4.
static
ZeroVector4. Defines a zero-length Vector4.

Public Properties

[read-only]
LengthSingle. Gets the length (magnitude) of the vector.
[read-only]
LengthFastSingle. Gets an approximation of the vector length (magnitude).
[read-only]
LengthSquaredSingle. Gets the square of the vector length (magnitude).
XyVector2. Gets or sets an OpenTK.Vector2 with the X and Y components of this instance.
XyzVector3. Gets or sets an OpenTK.Vector3 with the X, Y and Z components of this instance.

Public Methods

Add(Vector4)
Add the Vector passed as parameter to this instance.
Add(ref Vector4)
Add the Vector passed as parameter to this instance.
static
Add(Vector4, Vector4) : Vector4
Adds two vectors.
static
Add(ref Vector4, ref Vector4, out Vector4)
Adds two vectors.
static
BaryCentric(Vector4, Vector4, Vector4, Single, Single) : Vector4
Interpolate 3 Vectors using Barycentric coordinates
static
BaryCentric(ref Vector4, ref Vector4, ref Vector4, Single, Single, out Vector4)
Interpolate 3 Vectors using Barycentric coordinates
static
Clamp(Vector4, Vector4, Vector4) : Vector4
Clamp a vector to the given minimum and maximum vectors
static
Clamp(ref Vector4, ref Vector4, ref Vector4, out Vector4)
Clamp a vector to the given minimum and maximum vectors
Div(Single)
Divide this instance by a scalar.
static
Div(Vector4, Single) : Vector4
Divide a vector by a scalar
static
Div(ref Vector4, Single, out Vector4)
Divide a vector by a scalar
static
Divide(Vector4, Single) : Vector4
Divides a vector by a scalar.
static
Divide(Vector4, Vector4) : Vector4
Divides a vector by the components of a vector (scale).
static
Divide(ref Vector4, Single, out Vector4)
Divides a vector by a scalar.
static
Divide(ref Vector4, ref Vector4, out Vector4)
Divide a vector by the components of a vector (scale).
static
Dot(Vector4, Vector4) : Single
Calculate the dot product of two vectors
static
Dot(ref Vector4, ref Vector4, out Single)
Calculate the dot product of two vectors
override
Equals(Object) : Boolean
Indicates whether this instance and a specified object are equal.
Equals(Vector4) : Boolean
Indicates whether the current vector is equal to another vector.
override
GetHashCode() : Int32
Returns the hashcode for this instance.
static
Lerp(Vector4, Vector4, Single) : Vector4
Returns a new Vector that is the linear blend of the 2 given Vectors
static
Lerp(ref Vector4, ref Vector4, Single, out Vector4)
Returns a new Vector that is the linear blend of the 2 given Vectors
static
Max(Vector4, Vector4) : Vector4
Calculate the component-wise maximum of two vectors
static
Max(ref Vector4, ref Vector4, out Vector4)
Calculate the component-wise maximum of two vectors
static
Min(Vector4, Vector4) : Vector4
Calculate the component-wise minimum of two vectors
static
Min(ref Vector4, ref Vector4, out Vector4)
Calculate the component-wise minimum of two vectors
Mult(Single)
Multiply this instance by a scalar.
static
Mult(Vector4, Single) : Vector4
Multiply a vector and a scalar
static
Mult(ref Vector4, Single, out Vector4)
Multiply a vector and a scalar
static
Multiply(Vector4, Single) : Vector4
Multiplies a vector by a scalar.
static
Multiply(Vector4, Vector4) : Vector4
Multiplies a vector by the components a vector (scale).
static
Multiply(ref Vector4, Single, out Vector4)
Multiplies a vector by a scalar.
static
Multiply(ref Vector4, ref Vector4, out Vector4)
Multiplies a vector by the components of a vector (scale).
Normalize()
Scales the Vector4 to unit length.
static
Normalize(Vector4) : Vector4
Scale a vector to unit length
static
Normalize(ref Vector4, out Vector4)
Scale a vector to unit length
NormalizeFast()
Scales the Vector4 to approximately unit length.
static
NormalizeFast(Vector4) : Vector4
Scale a vector to approximately unit length
static
NormalizeFast(ref Vector4, out Vector4)
Scale a vector to approximately unit length
Scale(Vector4)
Scales this instance by the given parameter.
Scale(ref Vector4)
Scales this instance by the given parameter.
Scale(Single, Single, Single, Single)
Scales the current Vector4 by the given amounts.
Sub(Vector4)
Subtract the Vector passed as parameter from this instance.
Sub(ref Vector4)
Subtract the Vector passed as parameter from this instance.
static
Sub(Vector4, Vector4) : Vector4
Subtract one Vector from another
static
Sub(ref Vector4, ref Vector4, out Vector4)
Subtract one Vector from another
static
Subtract(Vector4, Vector4) : Vector4
Subtract one Vector from another
static
Subtract(ref Vector4, ref Vector4, out Vector4)
Subtract one Vector from another
override
ToString() : String
Returns a System.String that represents the current Vector4.
static
Transform(Vector4, Matrix4) : Vector4
Transform a Vector by the given Matrix
static
Transform(ref Vector4, ref Matrix4, out Vector4)
Transform a Vector by the given Matrix

Public Operators

static
Addition(Vector4, Vector4) Adds two instances.
static
Division(Vector4, Single) Divides an instance by a scalar.
static
Equality(Vector4, Vector4) Compares two instances for equality.
static
Inequality(Vector4, Vector4) Compares two instances for inequality.
static
Multiply(Single, Vector4) Multiplies an instance by a scalar.
static
Multiply(Vector4, Single) Multiplies an instance by a scalar.
static
Subtraction(Vector4, Vector4) Subtracts two instances.
static
UnaryNegation Negates an instance.
static
Conversion to System.IntPtr(Explicit) Returns a pointer to the first element of the specified instance.
static
Conversion to System.Single*(Explicit) Returns a pointer to the first element of the specified instance.