Table of Contents

Struct VectorF

Namespace
Obsidian.API
Assembly
Obsidian.API.dll

Represents a three-dimensional vector. Uses float.

public struct VectorF : IEquatable<VectorF>
Implements
Inherited Members

Constructors

VectorF(int, int, int)

Creates a new instance of VectorF with specific values.

public VectorF(int x, int y, int z)

Parameters

x int

Value of X coordinate.

y int

Value of Y coordinate.

z int

Value of Z coordinate.

VectorF(float)

Creates new instance of VectorF with X, Y and Z set to value.

public VectorF(float value)

Parameters

value float

Value of X, Y and Z.

VectorF(float, float, float)

Creates a new instance of VectorF with specific values.

public VectorF(float x, float y, float z)

Parameters

x float

Value of X coordinate.

y float

Value of Y coordinate.

z float

Value of Z coordinate.

Fields

Backwards

A read-only field that represents VectorF with coordinates (0, 0, -1).

public static readonly VectorF Backwards

Field Value

VectorF

Down

A read-only field that represents VectorF with coordinates (0, -1, 0).

public static readonly VectorF Down

Field Value

VectorF

East

A read-only field that represents VectorF with coordinates (1, 0, 0).

public static readonly VectorF East

Field Value

VectorF

Forwards

A read-only field that represents VectorF with coordinates (0, 0, 1).

public static readonly VectorF Forwards

Field Value

VectorF

Left

A read-only field that represents VectorF with coordinates (-1, 0, 0).

public static readonly VectorF Left

Field Value

VectorF

North

A read-only field that represents VectorF with coordinates (0, 0, -1).

public static readonly VectorF North

Field Value

VectorF

One

A read-only field that represents VectorF with coordinates (1, 1, 1).

public static readonly VectorF One

Field Value

VectorF

Right

A read-only field that represents VectorF with coordinates (1, 0, 0).

public static readonly VectorF Right

Field Value

VectorF

South

A read-only field that represents VectorF with coordinates (0, 0, 1).

public static readonly VectorF South

Field Value

VectorF

Up

A read-only field that represents VectorF with coordinates (0, 1, 0).

public static readonly VectorF Up

Field Value

VectorF

West

A read-only field that represents VectorF with coordinates (-1, 0, 0).

public static readonly VectorF West

Field Value

VectorF

Zero

A read-only field that represents VectorF with coordinates (0, 0, 0).

public static readonly VectorF Zero

Field Value

VectorF

Properties

Magnitude

Calculates magnitude of this VectorF.

public readonly float Magnitude { get; }

Property Value

float

X

The X component of the VectorF.

public float X { readonly get; set; }

Property Value

float

Y

The Y component of the VectorF.

public float Y { readonly get; set; }

Property Value

float

Z

The Z component of the VectorF.

public float Z { readonly get; set; }

Property Value

float

Methods

ChunkClamped(float, float, float)

Creates new Vector clamped to fit inside a single minecraft chunk.

public static VectorF ChunkClamped(float x, float y, float z)

Parameters

x float
y float
z float

Returns

VectorF

Clamp(VectorF, VectorF)

Returns VectorF clamped to the inclusive range of min and max.

public readonly VectorF Clamp(VectorF min, VectorF max)

Parameters

min VectorF
max VectorF

Returns

VectorF

Clamp(VectorF, VectorF, VectorF)

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

Parameters

value VectorF
min VectorF
max VectorF

Returns

VectorF

Cross(VectorF, VectorF)

public static VectorF Cross(VectorF value1, VectorF value2)

Parameters

value1 VectorF
value2 VectorF

Returns

VectorF

Deconstruct(out float, out float, out float)

public void Deconstruct(out float x, out float y, out float z)

Parameters

x float
y float
z float

Distance(VectorF, VectorF)

Calculates the distance between two VectorFs.

public static float Distance(VectorF from, VectorF to)

Parameters

from VectorF
to VectorF

Returns

float

Dot(VectorF, VectorF)

public static float Dot(VectorF value1, VectorF value2)

Parameters

value1 VectorF
value2 VectorF

Returns

float

Equals(VectorF)

Indicates whether this VectorF is near equal to other.

public readonly bool Equals(VectorF other)

Parameters

other VectorF

Returns

bool

Equals(object?)

public override readonly bool Equals(object? obj)

Parameters

obj object

Returns

bool

Floor()

Truncates the decimal component of each part of this VectorF.

public readonly VectorF Floor()

Returns

VectorF

GetHashCode()

public override readonly int GetHashCode()

Returns

int

Lerp(VectorF, VectorF, float)

public static VectorF Lerp(VectorF value1, VectorF value2, float amount)

Parameters

value1 VectorF
value2 VectorF
amount float

Returns

VectorF

MagnitudeSquared()

Calculates magnitude of this VectorF squared.

public readonly float MagnitudeSquared()

Returns

float

Normalize()

Performs vector normalization on this VectorF's coordinates.

public readonly VectorF Normalize()

Returns

VectorF

Normalized VectorF.

ToString()

Returns VectorF formatted as a string.

public override readonly string ToString()

Returns

string

String representaion of this VectorF.

Operators

operator +(VectorF, VectorF)

public static VectorF operator +(VectorF a, VectorF b)

Parameters

a VectorF
b VectorF

Returns

VectorF

operator +(VectorF, float)

public static VectorF operator +(VectorF a, float b)

Parameters

a VectorF
b float

Returns

VectorF

operator +(VectorF, (int x, int y, int z))

public static VectorF operator +(VectorF a, (int x, int y, int z) b)

Parameters

a VectorF
b (int x, int y, int z)

Returns

VectorF

operator +(float, VectorF)

public static VectorF operator +(float a, VectorF b)

Parameters

a float
b VectorF

Returns

VectorF

operator /(VectorF, VectorF)

public static VectorF operator /(VectorF a, VectorF b)

Parameters

a VectorF
b VectorF

Returns

VectorF

operator /(VectorF, float)

public static VectorF operator /(VectorF a, float b)

Parameters

a VectorF
b float

Returns

VectorF

operator /(float, VectorF)

public static VectorF operator /(float a, VectorF b)

Parameters

a float
b VectorF

Returns

VectorF

operator ==(VectorF, VectorF)

public static bool operator ==(VectorF a, VectorF b)

Parameters

a VectorF
b VectorF

Returns

bool

explicit operator Vector(VectorF)

public static explicit operator Vector(VectorF positionF)

Parameters

positionF VectorF

Returns

Vector

operator !=(VectorF, VectorF)

public static bool operator !=(VectorF a, VectorF b)

Parameters

a VectorF
b VectorF

Returns

bool

operator %(VectorF, VectorF)

public static VectorF operator %(VectorF a, VectorF b)

Parameters

a VectorF
b VectorF

Returns

VectorF

operator %(VectorF, float)

public static VectorF operator %(VectorF a, float b)

Parameters

a VectorF
b float

Returns

VectorF

operator %(float, VectorF)

public static VectorF operator %(float a, VectorF b)

Parameters

a float
b VectorF

Returns

VectorF

operator *(VectorF, VectorF)

public static VectorF operator *(VectorF a, VectorF b)

Parameters

a VectorF
b VectorF

Returns

VectorF

operator *(VectorF, float)

public static VectorF operator *(VectorF a, float b)

Parameters

a VectorF
b float

Returns

VectorF

operator *(float, VectorF)

public static VectorF operator *(float a, VectorF b)

Parameters

a float
b VectorF

Returns

VectorF

operator -(VectorF, VectorF)

public static VectorF operator -(VectorF a, VectorF b)

Parameters

a VectorF
b VectorF

Returns

VectorF

operator -(VectorF, float)

public static VectorF operator -(VectorF a, float b)

Parameters

a VectorF
b float

Returns

VectorF

operator -(float, VectorF)

public static VectorF operator -(float a, VectorF b)

Parameters

a float
b VectorF

Returns

VectorF

operator -(VectorF)

public static VectorF operator -(VectorF a)

Parameters

a VectorF

Returns

VectorF