> For the complete documentation index, see [llms.txt](https://kinematicsoup.gitbook.io/reactor/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://kinematicsoup.gitbook.io/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md).

# Struct ksVector3

Namespace: [KS.Reactor](/reactor/api-reference/ks.reactor.md)\
Assembly: KSCommon.dll

ksVector3 struct.

```csharp
public struct ksVector3
```

#### Inherited Members

[object.Equals(object)](https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals\(system-object\)), [object.Equals(object, object)](https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals\(system-object-system-object\)), [object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode), [object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype), [object.ReferenceEquals(object, object)](https://learn.microsoft.com/dotnet/api/system.object.referenceequals), [object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)

## Constructors

### ksVector3(float, float) <a href="#ks_reactor_ksvector3__ctor_system_single_system_single" id="ks_reactor_ksvector3__ctor_system_single_system_single"></a>

Constructor that takes x and y values and set z to 0.

```csharp
public ksVector3(float x, float y)
```

#### Parameters

`x` [float](https://learn.microsoft.com/dotnet/api/system.single)

X value.

`y` [float](https://learn.microsoft.com/dotnet/api/system.single)

Y value.

### ksVector3(float, float, float) <a href="#ks_reactor_ksvector3__ctor_system_single_system_single_system_single" id="ks_reactor_ksvector3__ctor_system_single_system_single_system_single"></a>

Constructor.

```csharp
public ksVector3(float x, float y, float z)
```

#### Parameters

`x` [float](https://learn.microsoft.com/dotnet/api/system.single)

X value.

`y` [float](https://learn.microsoft.com/dotnet/api/system.single)

Y value.

`z` [float](https://learn.microsoft.com/dotnet/api/system.single)

Z value.

## Fields

### m\_right <a href="#ks_reactor_ksvector3_m_right" id="ks_reactor_ksvector3_m_right"></a>

```csharp
public static ksVector3 m_right
```

#### Field Value

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

## Properties

### Backwards <a href="#ks_reactor_ksvector3_backwards" id="ks_reactor_ksvector3_backwards"></a>

World backwards direction.

```csharp
public static ksVector3 Backwards { get; }
```

#### Property Value

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### Down <a href="#ks_reactor_ksvector3_down" id="ks_reactor_ksvector3_down"></a>

World down direction.

```csharp
public static ksVector3 Down { get; }
```

#### Property Value

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### Forward <a href="#ks_reactor_ksvector3_forward" id="ks_reactor_ksvector3_forward"></a>

World forward direction.

```csharp
public static ksVector3 Forward { get; }
```

#### Property Value

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### Left <a href="#ks_reactor_ksvector3_left" id="ks_reactor_ksvector3_left"></a>

World left direction.

```csharp
public static ksVector3 Left { get; }
```

#### Property Value

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### One <a href="#ks_reactor_ksvector3_one" id="ks_reactor_ksvector3_one"></a>

One.

```csharp
public static ksVector3 One { get; }
```

#### Property Value

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### Right <a href="#ks_reactor_ksvector3_right" id="ks_reactor_ksvector3_right"></a>

World right direction.

```csharp
public static ksVector3 Right { get; }
```

#### Property Value

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### Up <a href="#ks_reactor_ksvector3_up" id="ks_reactor_ksvector3_up"></a>

World up direction.

```csharp
public static ksVector3 Up { get; }
```

#### Property Value

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### X <a href="#ks_reactor_ksvector3_x" id="ks_reactor_ksvector3_x"></a>

X value.

```csharp
public float X { get; set; }
```

#### Property Value

[float](https://learn.microsoft.com/dotnet/api/system.single)

### XY <a href="#ks_reactor_ksvector3_xy" id="ks_reactor_ksvector3_xy"></a>

X and Y values as a ksVector2

```csharp
public ksVector2 XY { get; set; }
```

#### Property Value

[ksVector2](/reactor/api-reference/ks.reactor/ks.reactor.ksvector2.md)

### XZ <a href="#ks_reactor_ksvector3_xz" id="ks_reactor_ksvector3_xz"></a>

X and Z values as a ksVector2

```csharp
public ksVector2 XZ { get; set; }
```

#### Property Value

[ksVector2](/reactor/api-reference/ks.reactor/ks.reactor.ksvector2.md)

### Y <a href="#ks_reactor_ksvector3_y" id="ks_reactor_ksvector3_y"></a>

Y value.

```csharp
public float Y { get; set; }
```

#### Property Value

[float](https://learn.microsoft.com/dotnet/api/system.single)

### YZ <a href="#ks_reactor_ksvector3_yz" id="ks_reactor_ksvector3_yz"></a>

Y and Z values as a ksVector2

```csharp
public ksVector2 YZ { get; set; }
```

#### Property Value

[ksVector2](/reactor/api-reference/ks.reactor/ks.reactor.ksvector2.md)

### Z <a href="#ks_reactor_ksvector3_z" id="ks_reactor_ksvector3_z"></a>

Z value.

```csharp
public float Z { get; set; }
```

#### Property Value

[float](https://learn.microsoft.com/dotnet/api/system.single)

### Zero <a href="#ks_reactor_ksvector3_zero" id="ks_reactor_ksvector3_zero"></a>

Zero.

```csharp
public static ksVector3 Zero { get; }
```

#### Property Value

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### this\[int] <a href="#ks_reactor_ksvector3_item_system_int32" id="ks_reactor_ksvector3_item_system_int32"></a>

Indexer.

```csharp
public float this[int index] { get; set; }
```

#### Property Value

[float](https://learn.microsoft.com/dotnet/api/system.single)

## Methods

### Abs() <a href="#ks_reactor_ksvector3_abs" id="ks_reactor_ksvector3_abs"></a>

Absolute value vector.

```csharp
public ksVector3 Abs()
```

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

New vector where all components are absolue values of this vector.

### Clamp(float) <a href="#ks_reactor_ksvector3_clamp_system_single" id="ks_reactor_ksvector3_clamp_system_single"></a>

Clamps the magnitude of this vector.

```csharp
public void Clamp(float maxMagnitude)
```

#### Parameters

`maxMagnitude` [float](https://learn.microsoft.com/dotnet/api/system.single)

Max magnitude to clamp magnitude to.

### Clamped(float) <a href="#ks_reactor_ksvector3_clamped_system_single" id="ks_reactor_ksvector3_clamped_system_single"></a>

Returns a copy of this vector with its magnitude clamped to maxLength.

```csharp
public ksVector3 Clamped(float maxMagnitude)
```

#### Parameters

`maxMagnitude` [float](https://learn.microsoft.com/dotnet/api/system.single)

Max magnitude to clamp magnitude to.

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Clamped vector.

### Cross(ksVector3, ksVector3) <a href="#ks_reactor_ksvector3_cross_ks_reactor_ksvector3_ks_reactor_ksvector3" id="ks_reactor_ksvector3_cross_ks_reactor_ksvector3_ks_reactor_ksvector3"></a>

Computes the cross product of two vectors.

```csharp
public static ksVector3 Cross(ksVector3 lhs, ksVector3 rhs)
```

#### Parameters

`lhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`rhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Cross product.

### DeltaDegrees(ksVector3, ksVector3) <a href="#ks_reactor_ksvector3_deltadegrees_ks_reactor_ksvector3_ks_reactor_ksvector3" id="ks_reactor_ksvector3_deltadegrees_ks_reactor_ksvector3_ks_reactor_ksvector3"></a>

Returns the angle in degrees between to vectors.

```csharp
public static float DeltaDegrees(ksVector3 from, ksVector3 to)
```

#### Parameters

`from` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

The angle extends round from this vector.

`to` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

The angle extends round to this vector.

#### Returns

[float](https://learn.microsoft.com/dotnet/api/system.single)

Angle in degrees.

### DeltaRadians(ksVector3, ksVector3) <a href="#ks_reactor_ksvector3_deltaradians_ks_reactor_ksvector3_ks_reactor_ksvector3" id="ks_reactor_ksvector3_deltaradians_ks_reactor_ksvector3_ks_reactor_ksvector3"></a>

Returns the angle in degrees between to vectors.

```csharp
public static float DeltaRadians(ksVector3 from, ksVector3 to)
```

#### Parameters

`from` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

The angle extends round from this vector.

`to` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

The angle extends round to this vector.

#### Returns

[float](https://learn.microsoft.com/dotnet/api/system.single)

Angle in radians.

### Dot(ksVector3, ksVector3) <a href="#ks_reactor_ksvector3_dot_ks_reactor_ksvector3_ks_reactor_ksvector3" id="ks_reactor_ksvector3_dot_ks_reactor_ksvector3_ks_reactor_ksvector3"></a>

Computes the dot product of two vectors.

```csharp
public static float Dot(ksVector3 lhs, ksVector3 rhs)
```

#### Parameters

`lhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`rhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

#### Returns

[float](https://learn.microsoft.com/dotnet/api/system.single)

Dot product.

### Equals(object) <a href="#ks_reactor_ksvector3_equals_system_object" id="ks_reactor_ksvector3_equals_system_object"></a>

Checks if this vector is equal to an object.

```csharp
public override bool Equals(object obj)
```

#### Parameters

`obj` [object](https://learn.microsoft.com/dotnet/api/system.object)

Object to compare with this vector.

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

True if this vector is equal to the object.

### Equals(ksVector3) <a href="#ks_reactor_ksvector3_equals_ks_reactor_ksvector3" id="ks_reactor_ksvector3_equals_ks_reactor_ksvector3"></a>

Checks if this vector is equal to another.

```csharp
public bool Equals(ksVector3 other)
```

#### Parameters

`other` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Other vector to compare with.

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

True if the vectors are equal.

### GetHashCode() <a href="#ks_reactor_ksvector3_gethashcode" id="ks_reactor_ksvector3_gethashcode"></a>

Gets the hash code for this vector.

```csharp
public override int GetHashCode()
```

#### Returns

[int](https://learn.microsoft.com/dotnet/api/system.int32)

### IsUniform(float) <a href="#ks_reactor_ksvector3_isuniform_system_single" id="ks_reactor_ksvector3_isuniform_system_single"></a>

Are all components of the vector the same?

```csharp
public bool IsUniform(float tolerance = 0)
```

#### Parameters

`tolerance` [float](https://learn.microsoft.com/dotnet/api/system.single)

The vector is considered uniform if the difference between the min and max components does not exceed this.

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

True if all components of the vector are the same

### Lerp(ksVector3, ksVector3, float) <a href="#ks_reactor_ksvector3_lerp_ks_reactor_ksvector3_ks_reactor_ksvector3_system_single" id="ks_reactor_ksvector3_lerp_ks_reactor_ksvector3_ks_reactor_ksvector3_system_single"></a>

Linearly Interpolates between two vectors.

```csharp
public static ksVector3 Lerp(ksVector3 from, ksVector3 to, float t)
```

#### Parameters

`from` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Vector to interpolate from.

`to` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Vector to interpolate to.

`t` [float](https://learn.microsoft.com/dotnet/api/system.single)

Value between 0 and 1 that determines the amount of interpolation.

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Interpolated vector.

### Magnitude() <a href="#ks_reactor_ksvector3_magnitude" id="ks_reactor_ksvector3_magnitude"></a>

Returns the magnitude.

```csharp
public float Magnitude()
```

#### Returns

[float](https://learn.microsoft.com/dotnet/api/system.single)

### MagnitudeSquared() <a href="#ks_reactor_ksvector3_magnitudesquared" id="ks_reactor_ksvector3_magnitudesquared"></a>

Returns the magnitude squared.

```csharp
public float MagnitudeSquared()
```

#### Returns

[float](https://learn.microsoft.com/dotnet/api/system.single)

### Max(ksVector3, ksVector3) <a href="#ks_reactor_ksvector3_max_ks_reactor_ksvector3_ks_reactor_ksvector3" id="ks_reactor_ksvector3_max_ks_reactor_ksvector3_ks_reactor_ksvector3"></a>

Returns a vector that is made from the largest components of two vectors.

```csharp
public static ksVector3 Max(ksVector3 lhs, ksVector3 rhs)
```

#### Parameters

`lhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`rhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Max vector.

### MaxValue(bool) <a href="#ks_reactor_ksvector3_maxvalue_system_boolean" id="ks_reactor_ksvector3_maxvalue_system_boolean"></a>

Gets the maximum component in the vector.

```csharp
public float MaxValue(bool absolute = false)
```

#### Parameters

`absolute` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

If true, returns the max absolute value.

#### Returns

[float](https://learn.microsoft.com/dotnet/api/system.single)

Max component value.

### Min(ksVector3, ksVector3) <a href="#ks_reactor_ksvector3_min_ks_reactor_ksvector3_ks_reactor_ksvector3" id="ks_reactor_ksvector3_min_ks_reactor_ksvector3_ks_reactor_ksvector3"></a>

Returns a vector that is made from the smallest components of two vectors

```csharp
public static ksVector3 Min(ksVector3 lhs, ksVector3 rhs)
```

#### Parameters

`lhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`rhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Min vector.

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### MinValue(bool) <a href="#ks_reactor_ksvector3_minvalue_system_boolean" id="ks_reactor_ksvector3_minvalue_system_boolean"></a>

Gets the minimum component in the vector.

```csharp
public float MinValue(bool absolute = false)
```

#### Parameters

`absolute` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

If true, returns the min absolute value.

#### Returns

[float](https://learn.microsoft.com/dotnet/api/system.single)

Min component value.

### MoveTowards(ksVector3, ksVector3, float) <a href="#ks_reactor_ksvector3_movetowards_ks_reactor_ksvector3_ks_reactor_ksvector3_system_single" id="ks_reactor_ksvector3_movetowards_ks_reactor_ksvector3_ks_reactor_ksvector3_system_single"></a>

Moves a point towards a target point.

```csharp
public static ksVector3 MoveTowards(ksVector3 start, ksVector3 target, float delta)
```

#### Parameters

`start` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Start point.

`target` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Target to move towards.

`delta` [float](https://learn.microsoft.com/dotnet/api/system.single)

delta distance to move. It will not overshoot the target. Negative values will move away from the target.

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### Normalize() <a href="#ks_reactor_ksvector3_normalize" id="ks_reactor_ksvector3_normalize"></a>

Normalizes this vector.

```csharp
public bool Normalize()
```

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

False if the vector could not be normalized because it's the zero vector.

### Normalized() <a href="#ks_reactor_ksvector3_normalized" id="ks_reactor_ksvector3_normalized"></a>

Returns the a normalized copy of this vector.

```csharp
public ksVector3 Normalized()
```

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### OrthoNormalize(ref ksVector3, ref ksVector3) <a href="#ks_reactor_ksvector3_orthonormalize_ks_reactor_ksvector3__ks_reactor_ksvector3" id="ks_reactor_ksvector3_orthonormalize_ks_reactor_ksvector3__ks_reactor_ksvector3"></a>

Normalizes vectors and makes tangent orthoganol to normal.

```csharp
public static void OrthoNormalize(ref ksVector3 normal, ref ksVector3 tangent)
```

#### Parameters

`normal` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`tangent` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### Project(ksVector3, ksVector3) <a href="#ks_reactor_ksvector3_project_ks_reactor_ksvector3_ks_reactor_ksvector3" id="ks_reactor_ksvector3_project_ks_reactor_ksvector3_ks_reactor_ksvector3"></a>

Projects a vector onto another vector.

```csharp
public static ksVector3 Project(ksVector3 vector, ksVector3 target)
```

#### Parameters

`vector` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Vector to project.

`target` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Target to project onto.

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Projection result.

### Reflect(ksVector3, ksVector3) <a href="#ks_reactor_ksvector3_reflect_ks_reactor_ksvector3_ks_reactor_ksvector3" id="ks_reactor_ksvector3_reflect_ks_reactor_ksvector3_ks_reactor_ksvector3"></a>

Reflects a vector off the plane defined by a normal.

```csharp
public static ksVector3 Reflect(ksVector3 direction, ksVector3 normal)
```

#### Parameters

`direction` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Direction to reflect.

`normal` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Normal of plane to reflect off of.

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Reflected vector.

### ReplaceNaNs(float) <a href="#ks_reactor_ksvector3_replacenans_system_single" id="ks_reactor_ksvector3_replacenans_system_single"></a>

Replaces NaN values in the vector.

```csharp
public bool ReplaceNaNs(float value = 0)
```

#### Parameters

`value` [float](https://learn.microsoft.com/dotnet/api/system.single)

Replacement value.

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

True if any of the values was replaced.

### RotateTowards(ksVector3, ksVector3, float) <a href="#ks_reactor_ksvector3_rotatetowards_ks_reactor_ksvector3_ks_reactor_ksvector3_system_single" id="ks_reactor_ksvector3_rotatetowards_ks_reactor_ksvector3_ks_reactor_ksvector3_system_single"></a>

Rotates a vector towards a direction.

```csharp
public static ksVector3 RotateTowards(ksVector3 vector, ksVector3 direction, float deltaDegrees)
```

#### Parameters

`vector` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Vector to rotate.

`direction` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Direction to rotate towards.

`deltaDegrees` [float](https://learn.microsoft.com/dotnet/api/system.single)

Max amount in degrees to rotate the vector.

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### RotateTowardsRadians(ksVector3, ksVector3, float) <a href="#ks_reactor_ksvector3_rotatetowardsradians_ks_reactor_ksvector3_ks_reactor_ksvector3_system_single" id="ks_reactor_ksvector3_rotatetowardsradians_ks_reactor_ksvector3_ks_reactor_ksvector3_system_single"></a>

Rotates a vector towards a direction.

```csharp
public static ksVector3 RotateTowardsRadians(ksVector3 vector, ksVector3 direction, float deltaRadians)
```

#### Parameters

`vector` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Vector to rotate.

`direction` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Direction to rotate towards.

`deltaRadians` [float](https://learn.microsoft.com/dotnet/api/system.single)

Max amount in radians to rotate the vector.

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### Scale(ksVector3, ksVector3) <a href="#ks_reactor_ksvector3_scale_ks_reactor_ksvector3_ks_reactor_ksvector3" id="ks_reactor_ksvector3_scale_ks_reactor_ksvector3_ks_reactor_ksvector3"></a>

Multiplies two vectors component-wise.

```csharp
public static ksVector3 Scale(ksVector3 a, ksVector3 b)
```

#### Parameters

`a` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`b` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### Slerp(ksVector3, ksVector3, float, bool) <a href="#ks_reactor_ksvector3_slerp_ks_reactor_ksvector3_ks_reactor_ksvector3_system_single_system_boolean" id="ks_reactor_ksvector3_slerp_ks_reactor_ksvector3_ks_reactor_ksvector3_system_single_system_boolean"></a>

Spherically interpolates between from and to by t.

```csharp
public static ksVector3 Slerp(ksVector3 from, ksVector3 to, float t, bool lerpMagnitude = false)
```

#### Parameters

`from` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Vector to interpolate from.

`to` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Vector to interpolate to.

`t` [float](https://learn.microsoft.com/dotnet/api/system.single)

Value between 0 and 1 that determines the amount of interpolation.

`lerpMagnitude` [bool](https://learn.microsoft.com/dotnet/api/system.boolean)

If false, magnitude won't be interpolated.

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Interpolated vector.

### ToString() <a href="#ks_reactor_ksvector3_tostring" id="ks_reactor_ksvector3_tostring"></a>

Returns a string that represents the current ksVector3.

```csharp
public override string ToString()
```

#### Returns

[string](https://learn.microsoft.com/dotnet/api/system.string)

A string that represents the current ksVector3

### ToString(string) <a href="#ks_reactor_ksvector3_tostring_system_string" id="ks_reactor_ksvector3_tostring_system_string"></a>

Returns a string respresentation of the vector.

```csharp
public string ToString(string format)
```

#### Parameters

`format` [string](https://learn.microsoft.com/dotnet/api/system.string)

#### Returns

[string](https://learn.microsoft.com/dotnet/api/system.string)

String representation of the vector.

### ToString(IFormatProvider) <a href="#ks_reactor_ksvector3_tostring_system_iformatprovider" id="ks_reactor_ksvector3_tostring_system_iformatprovider"></a>

Returns a string respresentation of the vector.

```csharp
public string ToString(IFormatProvider provider)
```

#### Parameters

`provider` [IFormatProvider](https://learn.microsoft.com/dotnet/api/system.iformatprovider)

#### Returns

[string](https://learn.microsoft.com/dotnet/api/system.string)

String representation of the vector.

## Operators

### operator +(ksVector3, ksVector3) <a href="#ks_reactor_ksvector3_op_addition_ks_reactor_ksvector3_ks_reactor_ksvector3" id="ks_reactor_ksvector3_op_addition_ks_reactor_ksvector3_ks_reactor_ksvector3"></a>

Adds two KSVector3s.

```csharp
public static ksVector3 operator +(ksVector3 lhs, ksVector3 rhs)
```

#### Parameters

`lhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`rhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### operator +(ksVector3, Vector3) <a href="#ks_reactor_ksvector3_op_addition_ks_reactor_ksvector3_unityengine_vector3" id="ks_reactor_ksvector3_op_addition_ks_reactor_ksvector3_unityengine_vector3"></a>

Vector addition with [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md) and Unity Vector3.

```csharp
public static ksVector3 operator +(ksVector3 lhs, Vector3 rhs)
```

#### Parameters

`lhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`rhs` Vector3

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`lhs` + `rhs`

### operator +(Vector3, ksVector3) <a href="#ks_reactor_ksvector3_op_addition_unityengine_vector3_ks_reactor_ksvector3" id="ks_reactor_ksvector3_op_addition_unityengine_vector3_ks_reactor_ksvector3"></a>

Vector addition with Unity Vector3 and [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md).

```csharp
public static Vector3 operator +(Vector3 lhs, ksVector3 rhs)
```

#### Parameters

`lhs` Vector3

`rhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

#### Returns

Vector3

`lhs` + `rhs`

### operator /(ksVector3, float) <a href="#ks_reactor_ksvector3_op_division_ks_reactor_ksvector3_system_single" id="ks_reactor_ksvector3_op_division_ks_reactor_ksvector3_system_single"></a>

Divides a ksVector3 by a number.

```csharp
public static ksVector3 operator /(ksVector3 vector, float scale)
```

#### Parameters

`vector` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`scale` [float](https://learn.microsoft.com/dotnet/api/system.single)

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### operator /(float, ksVector3) <a href="#ks_reactor_ksvector3_op_division_system_single_ks_reactor_ksvector3" id="ks_reactor_ksvector3_op_division_system_single_ks_reactor_ksvector3"></a>

Dives a number by a ksVector3.

```csharp
public static ksVector3 operator /(float number, ksVector3 vector)
```

#### Parameters

`number` [float](https://learn.microsoft.com/dotnet/api/system.single)

`vector` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### operator ==(ksVector3, ksVector3) <a href="#ks_reactor_ksvector3_op_equality_ks_reactor_ksvector3_ks_reactor_ksvector3" id="ks_reactor_ksvector3_op_equality_ks_reactor_ksvector3_ks_reactor_ksvector3"></a>

Checks if two vectors are equal.

```csharp
public static bool operator ==(ksVector3 lhs, ksVector3 rhs)
```

#### Parameters

`lhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`rhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

True if the vectors are equal.

### operator ==(ksVector3, Vector3) <a href="#ks_reactor_ksvector3_op_equality_ks_reactor_ksvector3_unityengine_vector3" id="ks_reactor_ksvector3_op_equality_ks_reactor_ksvector3_unityengine_vector3"></a>

Equality comparison with with [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md) and Unity Vector3.

```csharp
public static bool operator ==(ksVector3 lhs, Vector3 rhs)
```

#### Parameters

`lhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`rhs` Vector3

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

`lhs` == `rhs`

### operator ==(Vector3, ksVector3) <a href="#ks_reactor_ksvector3_op_equality_unityengine_vector3_ks_reactor_ksvector3" id="ks_reactor_ksvector3_op_equality_unityengine_vector3_ks_reactor_ksvector3"></a>

Equality comparison with Unity Vector3 and [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md).

```csharp
public static bool operator ==(Vector3 lhs, ksVector3 rhs)
```

#### Parameters

`lhs` Vector3

`rhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

`lhs` == `rhs`

### implicit operator float\[]\(ksVector3) <a href="#ks_reactor_ksvector3_op_implicit_ks_reactor_ksvector3__system_single" id="ks_reactor_ksvector3_op_implicit_ks_reactor_ksvector3__system_single"></a>

Implicit conversion from ksVector3 to float\[3].

```csharp
public static implicit operator float[](ksVector3 value)
```

#### Parameters

`value` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

#### Returns

[float](https://learn.microsoft.com/dotnet/api/system.single)\[]

### implicit operator ksVector3(float\[]) <a href="#ks_reactor_ksvector3_op_implicit_system_single____ks_reactor_ksvector3" id="ks_reactor_ksvector3_op_implicit_system_single____ks_reactor_ksvector3"></a>

Implicit conversion from float\[] to ksVector3.

```csharp
[Obsolete]
public static implicit operator ksVector3(float[] value)
```

#### Parameters

`value` [float](https://learn.microsoft.com/dotnet/api/system.single)\[]

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### implicit operator Vector3(ksVector3) <a href="#ks_reactor_ksvector3_op_implicit_ks_reactor_ksvector3__unityengine_vector3" id="ks_reactor_ksvector3_op_implicit_ks_reactor_ksvector3__unityengine_vector3"></a>

Implicit conversion from [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md) to Unity Vector3.

```csharp
public static implicit operator Vector3(ksVector3 value)
```

#### Parameters

`value` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Reactor vector

#### Returns

Vector3

Unity vectory

### implicit operator ksVector3(Vector3) <a href="#ks_reactor_ksvector3_op_implicit_unityengine_vector3__ks_reactor_ksvector3" id="ks_reactor_ksvector3_op_implicit_unityengine_vector3__ks_reactor_ksvector3"></a>

Implicit conversion from Unity Vector3 to [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md).

```csharp
public static implicit operator ksVector3(Vector3 value)
```

#### Parameters

`value` Vector3

Unity vector

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

Reactor vector

### operator !=(ksVector3, ksVector3) <a href="#ks_reactor_ksvector3_op_inequality_ks_reactor_ksvector3_ks_reactor_ksvector3" id="ks_reactor_ksvector3_op_inequality_ks_reactor_ksvector3_ks_reactor_ksvector3"></a>

Checks if two vectors are not equal.

```csharp
public static bool operator !=(ksVector3 lhs, ksVector3 rhs)
```

#### Parameters

`lhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`rhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

True if the vectors are not equal.

### operator !=(ksVector3, Vector3) <a href="#ks_reactor_ksvector3_op_inequality_ks_reactor_ksvector3_unityengine_vector3" id="ks_reactor_ksvector3_op_inequality_ks_reactor_ksvector3_unityengine_vector3"></a>

Inequality comparison with with [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md) and Unity Vector3.

```csharp
public static bool operator !=(ksVector3 lhs, Vector3 rhs)
```

#### Parameters

`lhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`rhs` Vector3

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

`lhs` != `rhs`

### operator !=(Vector3, ksVector3) <a href="#ks_reactor_ksvector3_op_inequality_unityengine_vector3_ks_reactor_ksvector3" id="ks_reactor_ksvector3_op_inequality_unityengine_vector3_ks_reactor_ksvector3"></a>

Inequality comparison with Unity Vector3 and [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md).

```csharp
public static bool operator !=(Vector3 lhs, ksVector3 rhs)
```

#### Parameters

`lhs` Vector3

`rhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

#### Returns

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

l`lhs` != `rhs`

### operator \*(ksVector3, float) <a href="#ks_reactor_ksvector3_op_multiply_ks_reactor_ksvector3_system_single" id="ks_reactor_ksvector3_op_multiply_ks_reactor_ksvector3_system_single"></a>

Multiplies a ksVector3 by a number. Multiplies each component of ksVector3 by a number scale.

```csharp
public static ksVector3 operator *(ksVector3 vector, float scale)
```

#### Parameters

`vector` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`scale` [float](https://learn.microsoft.com/dotnet/api/system.single)

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### operator \*(float, ksVector3) <a href="#ks_reactor_ksvector3_op_multiply_system_single_ks_reactor_ksvector3" id="ks_reactor_ksvector3_op_multiply_system_single_ks_reactor_ksvector3"></a>

Multiplies a ksVector3 by a number. Multiplies each component of ksVector3 by a number scale.

```csharp
public static ksVector3 operator *(float scale, ksVector3 vector)
```

#### Parameters

`scale` [float](https://learn.microsoft.com/dotnet/api/system.single)

`vector` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### operator -(ksVector3, ksVector3) <a href="#ks_reactor_ksvector3_op_subtraction_ks_reactor_ksvector3_ks_reactor_ksvector3" id="ks_reactor_ksvector3_op_subtraction_ks_reactor_ksvector3_ks_reactor_ksvector3"></a>

Subtracts one vector from another.

```csharp
public static ksVector3 operator -(ksVector3 lhs, ksVector3 rhs)
```

#### Parameters

`lhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`rhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

### operator -(ksVector3, Vector3) <a href="#ks_reactor_ksvector3_op_subtraction_ks_reactor_ksvector3_unityengine_vector3" id="ks_reactor_ksvector3_op_subtraction_ks_reactor_ksvector3_unityengine_vector3"></a>

Vector subtraction with [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md) and Unity Vector3.

```csharp
public static ksVector3 operator -(ksVector3 lhs, Vector3 rhs)
```

#### Parameters

`lhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`rhs` Vector3

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

`lhs` - `rhs`

### operator -(Vector3, ksVector3) <a href="#ks_reactor_ksvector3_op_subtraction_unityengine_vector3_ks_reactor_ksvector3" id="ks_reactor_ksvector3_op_subtraction_unityengine_vector3_ks_reactor_ksvector3"></a>

Vector subtraction with Unity Vector3 and [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md).

```csharp
public static Vector3 operator -(Vector3 lhs, ksVector3 rhs)
```

#### Parameters

`lhs` Vector3

`rhs` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

#### Returns

Vector3

`lhs` - `rhs`

### operator -(ksVector3) <a href="#ks_reactor_ksvector3_op_unarynegation_ks_reactor_ksvector3" id="ks_reactor_ksvector3_op_unarynegation_ks_reactor_ksvector3"></a>

Multiplies the vector by -1.

```csharp
public static ksVector3 operator -(ksVector3 v)
```

#### Parameters

`v` [ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)

#### Returns

[ksVector3](/reactor/api-reference/ks.reactor/ks.reactor.ksvector3.md)
