opsCanvas

@thisotherthing/ops-math

V2

V2.dist

// get the distance between two V2

Parameters
v0
[numbernumber]
v1
[numbernumber]
Return
number

V2.fromTo

// get a new V2 from two coordinate pairs

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

V2.fromToV2

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

Parameters
v0
[numbernumber]
v1
[numbernumber]
Return
[numbernumber]

V2.dot

// get the dot product between two V2

Parameters
v0
[numbernumber]
v1
[numbernumber]
Return
number

V2.sqrLength

// get the square length of a V2

Parameters
v
[numbernumber]
Return
number

V2.length

// get the length of a V2

Parameters
v
[numbernumber]
Return
number

V2.normalize

// update a V2 to have a length of 1

Parameters
v
[numbernumber]
Return
void

V2.clamp01

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

Parameters
v
[numbernumber]
Return
void

V2.clamp

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

Parameters
v
[numbernumber]
min
number
max
number
Return
void

V2.add

// add `add` to the target

Parameters
target
[numbernumber]
add
[numbernumber]
Return
void

V2.addScalar

// add `add` to the target

Parameters
target
[numbernumber]
add
number
Return
void

V2.sub

// substract `sub` to the target

Parameters
target
[numbernumber]
sub
[numbernumber]
Return
void

V2.subScalar

// substract `sub` to the target

Parameters
target
[numbernumber]
sub
number
Return
void

V2.mul

// multiply the target with `mul`

Parameters
target
[numbernumber]
mul
[numbernumber]
Return
void

V2.mulScalar

// multiply the target with `mul`

Parameters
target
[numbernumber]
mul
number
Return
void

V2.div

// divide the target by `div`

Parameters
target
[numbernumber]
div
[numbernumber]
Return
void

V2.divScalar

// divide the target by `div`

Parameters
target
[numbernumber]
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