Vector

Import

import { vec } from "paperbit"

Content

MethodArguments
equalv, u, tolerance = 1e-9
addv, ...vectors
subv, ...vectors
multv, ...vectors
divv, ...vectors
dotv, u
roundv
floorv
ceilv
lengthv
distancea, b
normalizev
resizev, newSize

Examples

const { ellipse, rect, state, mouse, frame } = canvas.api
ellipse(...frame.size, 2)
ellipse(...vec.mult(-1, frame.size), 2)
ellipse(...vec.mult([1, -1], frame.size), 2)
ellipse(...vec.mult([-1, 1], frame.size), 2)
ellipse(0, 0, 2)
state.color = 1
ellipse(...vec.resize(mouse.pos, .4), 1)
ellipse(0, 0, 2)
state.color = 1
const len = Math.min(.4, vec.length(mouse.pos))
ellipse(...vec.resize(mouse.pos, len), 1)
const p = vec.mult(2, mouse.pos)
rect(...vec.div(vec.round(p), 2), .5)
ellipse(0, 0, 2 * vec.length(mouse.pos))
const a = [-1.2, -0.7]
const b = [1, 0.5]

state.colorAlpha = .5

ellipse(...a, 2 * vec.distance(a, mouse.pos))
ellipse(...b, 2 * vec.distance(b, mouse.pos))

state.color = [.8, .2, .2]
ellipse(...mouse.pos, .1)
const pos = [-.2, .1]
const size = 1.3

if (!vec.equal(mouse.pos, pos, size/2))
	rect(...pos, size)
const pos = [-.2, .1]
const size = [1.6, 0.6]

if (vec.equal(mouse.pos, pos, vec.div(size, 2)))
	state.color = [.8, .2, .2]

rect(...pos, ...size)