uv = {
const c = sub(C, A)
const b = sub(B, A)
const p = sub(P, A)
const cc = dot(c, c)
const bc = dot(b, c)
const pc = dot(c, p)
const bb = dot(b, b)
const pb = dot(b, p)
const denom = cc*bb - bc*bc
const u = (bb*pc - bc*pb) / denom
const v = (cc*pb - bc*pc) / denom
return [u, v]
}