Table of Contents

Struct Vector3D

Namespace
Avalonia
Assembly
Avalonia.Base.dll
public readonly struct Vector3D : IEquatable<Vector3D>
Implements
Inherited Members

Constructors

Vector3D(double, double, double)

public Vector3D(double X, double Y, double Z)

Parameters

X double
Y double
Z double

Properties

Length

Length of the vector.

public double Length { get; }

Property Value

double

X

public double X { get; init; }

Property Value

double

Y

public double Y { get; init; }

Property Value

double

Z

public double Z { get; init; }

Property Value

double

Methods

Abs()

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

public Vector3D Abs()

Returns

Vector3D

Add(Vector3D, Vector3D)

Adds the second to the first vector

public static Vector3D Add(Vector3D left, Vector3D right)

Parameters

left Vector3D
right Vector3D

Returns

Vector3D

Clamp(Vector3D, Vector3D, Vector3D)

Restricts a vector between a minimum and a maximum value.

public static Vector3D Clamp(Vector3D value, Vector3D min, Vector3D max)

Parameters

value Vector3D
min Vector3D
max Vector3D

Returns

Vector3D

Deconstruct(out double, out double, out double)

public void Deconstruct(out double X, out double Y, out double Z)

Parameters

X double
Y double
Z double

Distance(Vector3D, Vector3D)

Computes the Euclidean distance between the two given points.

public static double Distance(Vector3D value1, Vector3D value2)

Parameters

value1 Vector3D
value2 Vector3D

Returns

double

DistanceSquared(Vector3D, Vector3D)

Computes the squared Euclidean distance between the two given points.

public static double DistanceSquared(Vector3D value1, Vector3D value2)

Parameters

value1 Vector3D
value2 Vector3D

Returns

double

Divide(Vector3D, Vector3D)

Divides the first vector by the second.

public static Vector3D Divide(Vector3D left, Vector3D right)

Parameters

left Vector3D
right Vector3D

Returns

Vector3D

Divide(Vector3D, double)

Divides the vector by the given scalar.

public static Vector3D Divide(Vector3D left, double right)

Parameters

left Vector3D
right double

Returns

Vector3D

Dot(Vector3D, Vector3D)

Calculates the dot product of two vectors.

public static double Dot(Vector3D vector1, Vector3D vector2)

Parameters

vector1 Vector3D
vector2 Vector3D

Returns

double

Equals(Vector3D)

public bool Equals(Vector3D other)

Parameters

other Vector3D

Returns

bool

Equals(object)

public override bool Equals(object obj)

Parameters

obj object

Returns

bool

GetHashCode()

public override int GetHashCode()

Returns

int

Max(Vector3D, Vector3D)

Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors

public static Vector3D Max(Vector3D left, Vector3D right)

Parameters

left Vector3D
right Vector3D

Returns

Vector3D

Min(Vector3D, Vector3D)

Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors

public static Vector3D Min(Vector3D left, Vector3D right)

Parameters

left Vector3D
right Vector3D

Returns

Vector3D

Multiply(Vector3D, Vector3D)

Multiplies the first vector by the second.

public static Vector3D Multiply(Vector3D left, Vector3D right)

Parameters

left Vector3D
right Vector3D

Returns

Vector3D

Multiply(Vector3D, double)

Multiplies the vector by the given scalar.

public static Vector3D Multiply(Vector3D left, double right)

Parameters

left Vector3D
right double

Returns

Vector3D

Normalize(Vector3D)

Returns a normalized version of this vector.

public static Vector3D Normalize(Vector3D value)

Parameters

value Vector3D

Returns

Vector3D

Parse(string)

Parses a Vector string.

public static Vector3D Parse(string s)

Parameters

s string

The string.

Returns

Vector3D

The Vector3D.

Substract(Vector3D, Vector3D)

Subtracts the second from the first vector

public static Vector3D Substract(Vector3D left, Vector3D right)

Parameters

left Vector3D
right Vector3D

Returns

Vector3D

ToString()

public override string ToString()

Returns

string

Operators

operator +(Vector3D, Vector3D)

Adds the second to the first vector

public static Vector3D operator +(Vector3D left, Vector3D right)

Parameters

left Vector3D
right Vector3D

Returns

Vector3D

operator ==(Vector3D, Vector3D)

public static bool operator ==(Vector3D left, Vector3D right)

Parameters

left Vector3D
right Vector3D

Returns

bool

implicit operator Vector3D(Vector3)

public static implicit operator Vector3D(Vector3 vector)

Parameters

vector Vector3

Returns

Vector3D

operator !=(Vector3D, Vector3D)

public static bool operator !=(Vector3D left, Vector3D right)

Parameters

left Vector3D
right Vector3D

Returns

bool

operator *(Vector3D, double)

Multiplies the vector by the given scalar.

public static Vector3D operator *(Vector3D left, double right)

Parameters

left Vector3D
right double

Returns

Vector3D

operator -(Vector3D, Vector3D)

Subtracts the second from the first vector

public static Vector3D operator -(Vector3D left, Vector3D right)

Parameters

left Vector3D
right Vector3D

Returns

Vector3D

operator -(Vector3D)

Negates the vector

public static Vector3D operator -(Vector3D v)

Parameters

v Vector3D

Returns

Vector3D