@thisotherthing/ops

@thisotherthing/ops-math

Exports

V2

V2.dist

// get the distance between two V2

Parameters
v0
[
number
number
]
v1
[
number
number
]
Return
number

V2.fromTo

// get a new V2 from two coordinate pairs

Parameters
x0
number
y0
number
x1
number
y1
number
Return
[
number
number
]

V2.fromToV2

// get a new V2, that goes from v0 to v1

Parameters
v0
[
number
number
]
v1
[
number
number
]
Return
[
number
number
]

V2.dot

// get the dot product between two V2

Parameters
v0
[
number
number
]
v1
[
number
number
]
Return
number

V2.sqrLength

// get the square length of a V2

Parameters
v
[
number
number
]
Return
number

V2.length

// get the length of a V2

Parameters
v
[
number
number
]
Return
number

V2.normalize

// update a V2 to have a length of 1

Parameters
v
[
number
number
]
Return
void

V2.clamp01

// update a V2 to have a length of 1 or less

Parameters
v
[
number
number
]
Return
void

V2.clamp

// update a V2 to have a length of 1 or less

Parameters
v
[
number
number
]
min
number
max
number
Return
void

V2.add

// add `add` to the target

Parameters
target
[
number
number
]
add
[
number
number
]
Return
void

V2.addScalar

// add `add` to the target

Parameters
target
[
number
number
]
add
number
Return
void

V2.sub

// substract `sub` to the target

Parameters
target
[
number
number
]
sub
[
number
number
]
Return
void

V2.subScalar

// substract `sub` to the target

Parameters
target
[
number
number
]
sub
number
Return
void

V2.mul

// multiply the target with `mul`

Parameters
target
[
number
number
]
mul
[
number
number
]
Return
void

V2.mulScalar

// multiply the target with `mul`

Parameters
target
[
number
number
]
mul
number
Return
void

V2.div

// divide the target by `div`

Parameters
target
[
number
number
]
div
[
number
number
]
Return
void

V2.divScalar

// divide the target by `div`

Parameters
target
[
number
number
]
div
number
Return
void

Ranges

Ranges.getMinMaxSteps

Parameters
min
number
max
number
steps
number
Return
start:number
end:number
index:number
relativeIndex:number
[]

map

// map value from one range to another if the value exceeds the input range, it will also exceed the output range

Parameters

value
number
inMin
number
inMax
number
outMin
number
outMax
number

Return

number

mapClamped

// map value from one range to another the output value is clamped, and will be inside the output range

Parameters

value
number
inMin
number
inMax
number
outMin
number
outMax
number

Return

number

lerp

// blend between value `a` and `b`, with the normalized value `t`

Parameters

a
number
b
number
t
number

Return

number

inverseLerpUnclamped

// get the relative, normalized position of `value` between `a` and `b` the result is unclamped, and can exceed 0..1

Parameters

a
number
b
number
value
number

Return

number

inverseLerpClamped

// get the relative, normalized position of `value` between `a` and `b` the result is clamped, and can not exceed 0..1

Parameters

a
number
b
number
value
number

Return

number

clamp

// get the clamped value of `value` between `min` and `max`

Parameters

min
number
max
number
value
number

Return

number

clamp01

// get the clamped value of `value` between `0` and `1`

Parameters

v
number

Return

number

getClosestPOT

// get the Power of Two, closed to `value` it can be lower or bigger than value

Parameters

value
number

Return

number

getNextPOT

// get next larger/equal Power of Two to `value`

Parameters

value
number

Return

number

pingPong

// bounce `value` between itself and `length` generates a triangle wave

Parameters

value
number
length
number

Return

number