> 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.ksvector2.md).

# Struct ksVector2

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

Vector2 struct.

```csharp
public struct ksVector2
```

#### 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

### ksVector2(float, float) <a href="#ks_reactor_ksvector2__ctor_system_single_system_single" id="ks_reactor_ksvector2__ctor_system_single_system_single"></a>

Constructor.

```csharp
public ksVector2(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.

## Fields

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

```csharp
public static ksVector2 m_right
```

#### Field Value

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

## Properties

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

World down direction.

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

#### Property Value

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

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

World left direction.

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

#### Property Value

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

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

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

#### Property Value

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

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

World right direction.

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

#### Property Value

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

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

World up direction.

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

#### Property Value

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

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

X value.

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

#### Property Value

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

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

Y value.

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

#### Property Value

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

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

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

#### Property Value

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

### this\[int] <a href="#ks_reactor_ksvector2_item_system_int32" id="ks_reactor_ksvector2_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_ksvector2_abs" id="ks_reactor_ksvector2_abs"></a>

Absolute value vector.

```csharp
public ksVector2 Abs()
```

#### Returns

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

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

### Clamp(float) <a href="#ks_reactor_ksvector2_clamp_system_single" id="ks_reactor_ksvector2_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_ksvector2_clamped_system_single" id="ks_reactor_ksvector2_clamped_system_single"></a>

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

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

#### Parameters

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

Max magnitude to clamp magnitude to.

#### Returns

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

Clamped vector.

### DeltaDegrees(ksVector2, ksVector2) <a href="#ks_reactor_ksvector2_deltadegrees_ks_reactor_ksvector2_ks_reactor_ksvector2" id="ks_reactor_ksvector2_deltadegrees_ks_reactor_ksvector2_ks_reactor_ksvector2"></a>

Returns the angle in degrees between two vectors.

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

#### Parameters

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

The angle extends round from this vector.

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

The angle extends round to this vector.

#### Returns

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

Angle in degrees.

### DeltaRadians(ksVector2, ksVector2) <a href="#ks_reactor_ksvector2_deltaradians_ks_reactor_ksvector2_ks_reactor_ksvector2" id="ks_reactor_ksvector2_deltaradians_ks_reactor_ksvector2_ks_reactor_ksvector2"></a>

Returns the angle in radians between two vectors.

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

#### Parameters

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

The angle extends round from this vector.

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

The angle extends round to this vector.

#### Returns

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

Angle in radians.

### Dot(ksVector2, ksVector2) <a href="#ks_reactor_ksvector2_dot_ks_reactor_ksvector2_ks_reactor_ksvector2" id="ks_reactor_ksvector2_dot_ks_reactor_ksvector2_ks_reactor_ksvector2"></a>

Computes the dot product of two vectors.

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

#### Parameters

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

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

#### Returns

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

Dot product.

### Equals(object) <a href="#ks_reactor_ksvector2_equals_system_object" id="ks_reactor_ksvector2_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(ksVector2) <a href="#ks_reactor_ksvector2_equals_ks_reactor_ksvector2" id="ks_reactor_ksvector2_equals_ks_reactor_ksvector2"></a>

Checks if this vector is equal to another.

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

#### Parameters

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

Other vector to compare with.

#### Returns

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

True if the vectors are equal.

### FromDegrees(float, float) <a href="#ks_reactor_ksvector2_fromdegrees_system_single_system_single" id="ks_reactor_ksvector2_fromdegrees_system_single_system_single"></a>

Constructs a Vector2 from an angle.

```csharp
public static ksVector2 FromDegrees(float angle, float magnitude = 1)
```

#### Parameters

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

Angle in degrees.

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

Magnitude

#### Returns

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

### FromRadians(float, float) <a href="#ks_reactor_ksvector2_fromradians_system_single_system_single" id="ks_reactor_ksvector2_fromradians_system_single_system_single"></a>

Constructs a Vector2 from an angle.

```csharp
public static ksVector2 FromRadians(float angle, float magnitude = 1)
```

#### Parameters

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

Angle in radians.

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

Magnitude.

#### Returns

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

### GetHashCode() <a href="#ks_reactor_ksvector2_gethashcode" id="ks_reactor_ksvector2_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_ksvector2_isuniform_system_single" id="ks_reactor_ksvector2_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 [X](#KS_Reactor_ksVector2_X) and [Y](#KS_Reactor_ksVector2_Y) 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(ksVector2, ksVector2, float) <a href="#ks_reactor_ksvector2_lerp_ks_reactor_ksvector2_ks_reactor_ksvector2_system_single" id="ks_reactor_ksvector2_lerp_ks_reactor_ksvector2_ks_reactor_ksvector2_system_single"></a>

Linearly interpolates between two vectors.

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

#### Parameters

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

Vector to interpolate from.

`to` [ksVector2](/reactor/api-reference/ks.reactor/ks.reactor.ksvector2.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

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

Interpolated vector.

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

Gets the magnitude.

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

#### Returns

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

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

Gets the magnitude squared.

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

#### Returns

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

### Max(ksVector2, ksVector2) <a href="#ks_reactor_ksvector2_max_ks_reactor_ksvector2_ks_reactor_ksvector2" id="ks_reactor_ksvector2_max_ks_reactor_ksvector2_ks_reactor_ksvector2"></a>

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

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

#### Parameters

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

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

#### Returns

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

Max vector.

### MaxValue(bool) <a href="#ks_reactor_ksvector2_maxvalue_system_boolean" id="ks_reactor_ksvector2_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)

Return the max absolute value.

#### Returns

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

Max component value.

### Min(ksVector2, ksVector2) <a href="#ks_reactor_ksvector2_min_ks_reactor_ksvector2_ks_reactor_ksvector2" id="ks_reactor_ksvector2_min_ks_reactor_ksvector2_ks_reactor_ksvector2"></a>

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

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

#### Parameters

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

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

#### Returns

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

Min vector.

### MinValue(bool) <a href="#ks_reactor_ksvector2_minvalue_system_boolean" id="ks_reactor_ksvector2_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)

Return the min absolute value.

#### Returns

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

Min component value.

### MoveTowards(ksVector2, ksVector2, float) <a href="#ks_reactor_ksvector2_movetowards_ks_reactor_ksvector2_ks_reactor_ksvector2_system_single" id="ks_reactor_ksvector2_movetowards_ks_reactor_ksvector2_ks_reactor_ksvector2_system_single"></a>

Moves a point towards a target point.

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

#### Parameters

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

start point.

`target` [ksVector2](/reactor/api-reference/ks.reactor/ks.reactor.ksvector2.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

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

### Normalize() <a href="#ks_reactor_ksvector2_normalize" id="ks_reactor_ksvector2_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_ksvector2_normalized" id="ks_reactor_ksvector2_normalized"></a>

Gets a normalized copy of this vector.

```csharp
public ksVector2 Normalized()
```

#### Returns

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

### Project(ksVector2, ksVector2) <a href="#ks_reactor_ksvector2_project_ks_reactor_ksvector2_ks_reactor_ksvector2" id="ks_reactor_ksvector2_project_ks_reactor_ksvector2_ks_reactor_ksvector2"></a>

Projects a vector onto another vector.

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

#### Parameters

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

Vector to project.

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

Target to project onto.

#### Returns

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

Projection result.

### Reflect(ksVector2, ksVector2) <a href="#ks_reactor_ksvector2_reflect_ks_reactor_ksvector2_ks_reactor_ksvector2" id="ks_reactor_ksvector2_reflect_ks_reactor_ksvector2_ks_reactor_ksvector2"></a>

Reflects a vector off the plane defined by a normal.

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

#### Parameters

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

Direction to reflect.

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

Normal of plane to reflect off of.

#### Returns

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

Reflected vector.

### ReplaceNaNs(float) <a href="#ks_reactor_ksvector2_replacenans_system_single" id="ks_reactor_ksvector2_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.

### Rotate(ksVector2, float) <a href="#ks_reactor_ksvector2_rotate_ks_reactor_ksvector2_system_single" id="ks_reactor_ksvector2_rotate_ks_reactor_ksvector2_system_single"></a>

Rotates a vector by an angle.

```csharp
public static ksVector2 Rotate(ksVector2 direction, float angle)
```

#### Parameters

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

Direction to rotate.

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

Angle in degrees.

#### Returns

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

Rotated vector.

### RotateRadians(ksVector2, float) <a href="#ks_reactor_ksvector2_rotateradians_ks_reactor_ksvector2_system_single" id="ks_reactor_ksvector2_rotateradians_ks_reactor_ksvector2_system_single"></a>

Rotates a vector by an angle.

```csharp
public static ksVector2 RotateRadians(ksVector2 direction, float angle)
```

#### Parameters

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

Direction to rotate.

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

Angle in radians.

#### Returns

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

Rotated vector.

### Scale(ksVector2, ksVector2) <a href="#ks_reactor_ksvector2_scale_ks_reactor_ksvector2_ks_reactor_ksvector2" id="ks_reactor_ksvector2_scale_ks_reactor_ksvector2_ks_reactor_ksvector2"></a>

Multiplies two vectors component-wise.

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

#### Parameters

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

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

#### Returns

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

### Slerp(ksVector2, ksVector2, float, bool) <a href="#ks_reactor_ksvector2_slerp_ks_reactor_ksvector2_ks_reactor_ksvector2_system_single_system_boolean" id="ks_reactor_ksvector2_slerp_ks_reactor_ksvector2_ks_reactor_ksvector2_system_single_system_boolean"></a>

Spherically interpolates between from and to by t.

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

#### Parameters

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

Vector to interpolate from.

`to` [ksVector2](/reactor/api-reference/ks.reactor/ks.reactor.ksvector2.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

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

Interpolated vector.

### ToDegrees() <a href="#ks_reactor_ksvector2_todegrees" id="ks_reactor_ksvector2_todegrees"></a>

Converts the direction of the vector to an angle.

```csharp
public float ToDegrees()
```

#### Returns

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

Angle in degrees \[0, 360).

### ToRadians() <a href="#ks_reactor_ksvector2_toradians" id="ks_reactor_ksvector2_toradians"></a>

Converts the direction of the vector to an angle.

```csharp
public float ToRadians()
```

#### Returns

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

Angle in radians \[0, 2PI).

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

Returns a string that represents the current Vector2.

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

#### Returns

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

A string that represents the current Vector2.

### ToString(string) <a href="#ks_reactor_ksvector2_tostring_system_string" id="ks_reactor_ksvector2_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)

Representation of the vector.

### ToString(IFormatProvider) <a href="#ks_reactor_ksvector2_tostring_system_iformatprovider" id="ks_reactor_ksvector2_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)

Representation of the vector.

## Operators

### operator +(ksVector2, ksVector2) <a href="#ks_reactor_ksvector2_op_addition_ks_reactor_ksvector2_ks_reactor_ksvector2" id="ks_reactor_ksvector2_op_addition_ks_reactor_ksvector2_ks_reactor_ksvector2"></a>

Adds two ksVector2.

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

#### Parameters

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

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

#### Returns

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

### operator +(ksVector2, Vector2) <a href="#ks_reactor_ksvector2_op_addition_ks_reactor_ksvector2_unityengine_vector2" id="ks_reactor_ksvector2_op_addition_ks_reactor_ksvector2_unityengine_vector2"></a>

Vector addition with [ksVector2](/reactor/api-reference/ks.reactor/ks.reactor.ksvector2.md) and Unity Vector2.

```csharp
public static ksVector2 operator +(ksVector2 lhs, Vector2 rhs)
```

#### Parameters

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

`rhs` Vector2

#### Returns

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

`lhs` + `rhs`

### operator +(Vector2, ksVector2) <a href="#ks_reactor_ksvector2_op_addition_unityengine_vector2_ks_reactor_ksvector2" id="ks_reactor_ksvector2_op_addition_unityengine_vector2_ks_reactor_ksvector2"></a>

Vector addition with Unity Vector2 and [ksVector2](/reactor/api-reference/ks.reactor/ks.reactor.ksvector2.md).

```csharp
public static Vector2 operator +(Vector2 lhs, ksVector2 rhs)
```

#### Parameters

`lhs` Vector2

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

#### Returns

Vector2

`lhs` + `rhs`

### operator /(ksVector2, float) <a href="#ks_reactor_ksvector2_op_division_ks_reactor_ksvector2_system_single" id="ks_reactor_ksvector2_op_division_ks_reactor_ksvector2_system_single"></a>

Divides a ksVector2 by a number.

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

#### Parameters

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

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

#### Returns

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

### operator /(float, ksVector2) <a href="#ks_reactor_ksvector2_op_division_system_single_ks_reactor_ksvector2" id="ks_reactor_ksvector2_op_division_system_single_ks_reactor_ksvector2"></a>

Divides a number by a ksVector2.

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

#### Parameters

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

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

#### Returns

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

### operator ==(ksVector2, ksVector2) <a href="#ks_reactor_ksvector2_op_equality_ks_reactor_ksvector2_ks_reactor_ksvector2" id="ks_reactor_ksvector2_op_equality_ks_reactor_ksvector2_ks_reactor_ksvector2"></a>

Checks if two vectors are equal.

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

#### Parameters

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

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

#### Returns

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

True if the vectors are equal.

### operator ==(ksVector2, Vector2) <a href="#ks_reactor_ksvector2_op_equality_ks_reactor_ksvector2_unityengine_vector2" id="ks_reactor_ksvector2_op_equality_ks_reactor_ksvector2_unityengine_vector2"></a>

Equality comparison with with [ksVector2](/reactor/api-reference/ks.reactor/ks.reactor.ksvector2.md) and Unity Vector2.

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

#### Parameters

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

`rhs` Vector2

#### Returns

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

`lhs` == `rhs`

### operator ==(Vector2, ksVector2) <a href="#ks_reactor_ksvector2_op_equality_unityengine_vector2_ks_reactor_ksvector2" id="ks_reactor_ksvector2_op_equality_unityengine_vector2_ks_reactor_ksvector2"></a>

Equality comparison with Unity Vector2 and [ksVector2](/reactor/api-reference/ks.reactor/ks.reactor.ksvector2.md).

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

#### Parameters

`lhs` Vector2

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

#### Returns

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

`lhs` == `rhs`

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

Implicit conversion from ksVector2 to float\[2].

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

#### Parameters

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

#### Returns

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

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

Implicit conversion from float\[] to ksVector2.

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

#### Parameters

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

#### Returns

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

### implicit operator Vector2(ksVector2) <a href="#ks_reactor_ksvector2_op_implicit_ks_reactor_ksvector2__unityengine_vector2" id="ks_reactor_ksvector2_op_implicit_ks_reactor_ksvector2__unityengine_vector2"></a>

Implicit conversion from [ksVector2](/reactor/api-reference/ks.reactor/ks.reactor.ksvector2.md) to Unity Vector2.

```csharp
public static implicit operator Vector2(ksVector2 value)
```

#### Parameters

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

Reactor vector

#### Returns

Vector2

Unity vector

### implicit operator ksVector2(Vector2) <a href="#ks_reactor_ksvector2_op_implicit_unityengine_vector2__ks_reactor_ksvector2" id="ks_reactor_ksvector2_op_implicit_unityengine_vector2__ks_reactor_ksvector2"></a>

Implicit conversion from Unity Vector2 to [ksVector2](/reactor/api-reference/ks.reactor/ks.reactor.ksvector2.md).

```csharp
public static implicit operator ksVector2(Vector2 value)
```

#### Parameters

`value` Vector2

Unity vector

#### Returns

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

Reactor vector

### operator !=(ksVector2, ksVector2) <a href="#ks_reactor_ksvector2_op_inequality_ks_reactor_ksvector2_ks_reactor_ksvector2" id="ks_reactor_ksvector2_op_inequality_ks_reactor_ksvector2_ks_reactor_ksvector2"></a>

Checks if two vectors are not equal

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

#### Parameters

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

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

#### Returns

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

True if the vectors are not equal.

### operator !=(ksVector2, Vector2) <a href="#ks_reactor_ksvector2_op_inequality_ks_reactor_ksvector2_unityengine_vector2" id="ks_reactor_ksvector2_op_inequality_ks_reactor_ksvector2_unityengine_vector2"></a>

Inequality comparison with with [ksVector2](/reactor/api-reference/ks.reactor/ks.reactor.ksvector2.md) and Unity Vector2.

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

#### Parameters

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

`rhs` Vector2

#### Returns

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

`lhs` != `rhs`

### operator !=(Vector2, ksVector2) <a href="#ks_reactor_ksvector2_op_inequality_unityengine_vector2_ks_reactor_ksvector2" id="ks_reactor_ksvector2_op_inequality_unityengine_vector2_ks_reactor_ksvector2"></a>

Inequality comparison with Unity Vector2 and [ksVector2](/reactor/api-reference/ks.reactor/ks.reactor.ksvector2.md).

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

#### Parameters

`lhs` Vector2

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

#### Returns

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

`lhs` != `rhs`

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

Multiplies a ksVector2 by a number. Multiplies each component of Vector2 by a number scale.

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

#### Parameters

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

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

#### Returns

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

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

Multiplies a ksVector2 by a number. Multiplies each component of Vector2 by a number scale.

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

#### Parameters

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

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

#### Returns

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

### operator -(ksVector2, ksVector2) <a href="#ks_reactor_ksvector2_op_subtraction_ks_reactor_ksvector2_ks_reactor_ksvector2" id="ks_reactor_ksvector2_op_subtraction_ks_reactor_ksvector2_ks_reactor_ksvector2"></a>

Subtracts one vector from another.

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

#### Parameters

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

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

#### Returns

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

### operator -(ksVector2, Vector2) <a href="#ks_reactor_ksvector2_op_subtraction_ks_reactor_ksvector2_unityengine_vector2" id="ks_reactor_ksvector2_op_subtraction_ks_reactor_ksvector2_unityengine_vector2"></a>

Vector subtraction with [ksVector2](/reactor/api-reference/ks.reactor/ks.reactor.ksvector2.md) and Unity Vector2.

```csharp
public static ksVector2 operator -(ksVector2 lhs, Vector2 rhs)
```

#### Parameters

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

`rhs` Vector2

#### Returns

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

`lhs` - `rhs`

### operator -(Vector2, ksVector2) <a href="#ks_reactor_ksvector2_op_subtraction_unityengine_vector2_ks_reactor_ksvector2" id="ks_reactor_ksvector2_op_subtraction_unityengine_vector2_ks_reactor_ksvector2"></a>

Vector subtraction with Unity Vector2 and [ksVector2](/reactor/api-reference/ks.reactor/ks.reactor.ksvector2.md).

```csharp
public static Vector2 operator -(Vector2 lhs, ksVector2 rhs)
```

#### Parameters

`lhs` Vector2

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

#### Returns

Vector2

`lhs` - `rhs`

### operator -(ksVector2) <a href="#ks_reactor_ksvector2_op_unarynegation_ks_reactor_ksvector2" id="ks_reactor_ksvector2_op_unarynegation_ks_reactor_ksvector2"></a>

Multiplies the vector by -1.

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

#### Parameters

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

#### Returns

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