[]
        
(Showing Draft Content)

C1.Util.DX.Vector3

Vector3 Struct

Represents a three dimensional mathematical vector.

Namespace: C1.Util.DX
Assembly: C1.Win.C1DX.4.8.dll
Syntax
[TypeConverter(typeof(Vector3Converter))]
public struct Vector3 : IEquatable<Vector3>, IFormattable

Constructors

Name Description
Vector3(Vector2, float)

Initializes a new instance of the Vector3 struct.

Vector3(float)

Initializes a new instance of the Vector3 struct.

Vector3(float, float, float)

Initializes a new instance of the Vector3 struct.

Vector3(float[])

Initializes a new instance of the Vector3 struct.

Fields

Name Description
One

A Vector3 with all of its components set to one.

SizeInBytes

The size of the Vector3 type, in bytes.

UnitX

The X unit Vector3 (1, 0, 0).

UnitY

The Y unit Vector3 (0, 1, 0).

UnitZ

The Z unit Vector3 (0, 0, 1).

X

The X component of the vector.

Y

The Y component of the vector.

Z

The Z component of the vector.

Zero

A Vector3 with all of its components set to zero.

Properties

Name Description
IsNormalized

Gets a value indicting whether this instance is normalized.

this[int]

Gets or sets the component at the specified index.

Length

Gets the length of the vector.

LengthSquared

Gets the squared length of the vector.

Methods

Name Description
Abs(Vector3)

Returns a vector whose elements are the absolute values of each of the specified vector's elements.

AbsRef(ref Vector3)

Calculates the absolute value vector.

AbsRef(out Vector3, ref Vector3)

Returns a vector whose elements are the absolute values of each of the specified vector's elements.

Add(Vector3, Vector3)

Adds two vectors.

AddRef(out Vector3, ref Vector3, ref Vector3)

Adds two vectors.

Clamp(Vector3, Vector3, Vector3)

Restricts a vector between a minimum and a maximum value.

ClampRef(out Vector3, ref Vector3, ref Vector3, ref Vector3)

Restricts a vector between a minimum and a maximum value.

Cross(Vector3, Vector3)

Computes the cross product of two vectors.

CrossRef(out Vector3, ref Vector3, ref Vector3)

Computes the cross product of two vectors.

Divide(Vector3, Vector3)

Divides the first vector by the second.

Divide(Vector3, float)

Divides the specified vector by a specified scalar value.

DivideRef(out Vector3, ref Vector3, ref Vector3)

Divides the first vector by the second.

DivideRef(out Vector3, ref Vector3, float)

Divides the specified vector by a specified scalar value.

Dot(Vector3, Vector3)

Calculates the dot product of two vectors.

DotRef(ref Vector3, ref Vector3)

Calculates the dot product of two vectors.

Equals(Vector3)

Determines whether the specified Vector3 is equal to this instance.

Equals(object)

Determines whether the specified object is equal to this instance.

EqualsRef(ref Vector3)

Determines whether the specified Vector3 is equal to this instance.

GetHashCode()

Returns a hash code for this instance.

Lerp(Vector3, Vector3, float)

Performs a linear interpolation between two vectors based on the given weighting.

LerpRef(out Vector3, ref Vector3, ref Vector3, float)

Performs a linear interpolation between two vectors based on the given weighting.

Max(Vector3, Vector3)

Returns a vector containing the largest components of the specified vectors.

Max(out Vector3, ref Vector3, ref Vector3)

Returns a vector containing the largest components of the specified vectors.

Min(Vector3, Vector3)

Returns a vector containing the smallest components of the specified vectors.

MinRef(out Vector3, ref Vector3, ref Vector3)

Returns a vector containing the smallest components of the specified vectors.

Multiply(Vector3, Vector3)

Modulates a vector with another by performing component-wise multiplication.

Multiply(Vector3, float)

Scales a vector by the given value.

Multiply(out Vector3, ref Vector3, ref Vector3)

Modulates a vector with another by performing component-wise multiplication.

MultiplyRef(out Vector3, ref Vector3, float)

Scales a vector by the given value.

Negate(Vector3)

Reverses the direction of a given vector.

NegateRef(ref Vector3)

Reverses the direction of the vector.

NegateRef(out Vector3, ref Vector3)

Reverses the direction of a given vector.

Normalize(Vector3)

Converts the vector into a unit vector.

NormalizeRef(ref Vector3)

Converts the vector into a unit vector.

NormalizeRef(out Vector3, ref Vector3)

Converts the vector into a unit vector.

Subtract(Vector3, Vector3)

Subtracts two vectors.

SubtractRef(out Vector3, ref Vector3, ref Vector3)

Subtracts two vectors.

ToArray()

Creates an array containing the elements of the vector.

ToString()

Returns a string that represents this instance.

ToString(IFormatProvider)

Returns a string that represents this instance.

ToString(string)

Returns a string that represents this instance.

ToString(string, IFormatProvider)

Returns a string that represents this instance.

Operators

Name Description
operator +(Vector3, Vector3)

Adds two vectors.

operator /(Vector3, Vector3)

Divides the first vector by the second.

operator /(Vector3, float)

Divides the specified vector by a specified scalar value.

operator ==(Vector3, Vector3)

Tests for equality between two objects.

explicit operator Vector2(Vector3)

Performs an explicit conversion from Vector3 to Vector2.

explicit operator Vector4(Vector3)

Performs an explicit conversion from Vector3 to Vector4.

operator !=(Vector3, Vector3)

Tests for inequality between two objects.

operator *(Vector3, Vector3)

Modulates a vector with another by performing component-wise multiplication.

operator *(Vector3, float)

Scales a vector by the given value.

operator *(float, Vector3)

Scales a vector by the given value.

operator -(Vector3, Vector3)

Subtracts two vectors.

operator -(Vector3)

Reverses the direction of a given vector.