Muffin Dev - Muffin Maths
Maths extensions and utilities.
Installation
npm i @muffin-dev/maths
MuffinMaths
public static rad2deg(angle: number): number
Converts an angle in radians to degrees.
public static deg2rad(angle: number): number
Converts an angle in degrees to radians.
public static clamp(value: number, min: number, max: number): number
Clamps a value between given min (inclusive) and max (inclusive).
-
value: number
: he value to clamp -
min: number
: Minimum value (inclusive) -
max: number
: Maximum value (inclusive)
public static random(min: number, max: number): number
Gets a random value between given min (inclusive) and max (inclusive).
-
min: number
: Minimum random value (inclusive) -
max: number
: Maximum random value (inclusive)
public static randomInteger(min: number, max: number): number
Gets a random integer number between given min (inclusive) and max (exclusive).
-
min: number
: Minimum random value (inclusive) -
max: number
: Maximum random value (exclusive)
Vector2D
Constructor
constructor(public x = 0, public y = 0) { }
x: number
y: number
Instance Methods
public toString(): string
Converts the vector into a string.
public normalize(): void
Normalizes this vector in-place (it overrides its properties).
public get normalized(): Vector2D
Gets a copy of this vector, but normalized (it doesn't override the properties of the current vector).
public get magnitudeSqr(): number
Gets the squared magnitude (or length) of this vector.
public get magnitude(): number
Gets the magnitude (or length) of this vector.
Static Methods
public static angle(v1: Vector2D, v2: Vector2D): number
Calculates the angle between the given vectors.
public static angleDeg(v1: Vector2D, v2: Vector2D): number
Calculates the angle between the given vectors, then convert that value in degrees.
public static dot(v1: Vector2D, v2: Vector2D): number
Calculates the dot product between the two given vectors.
public static fromObject(obj: any): Vector2D
Makes a new Vector instance, using x
and y
properties of the given object.
Note that if x
or y
property doesn't exist or is null, its value is 0.
public static add(v1: Vector2D, v2: Vector2D): Vector2D
Makes an addition between the two given vectors.
public static substract(v1: Vector2D, v2: Vector2D): Vector2D
Makes a substraction between the two given vectors.