@thi.ng/vectors
Version:
Optimized 2d/3d/4d and arbitrary length vector operations, support for memory mapping/layouts
13 lines (12 loc) • 358 B
JavaScript
const signedVolume = (a, b, c, [dx, dy, dz]) => {
const ady = a[1] - dy;
const bdy = b[1] - dy;
const cdy = c[1] - dy;
const adz = a[2] - dz;
const bdz = b[2] - dz;
const cdz = c[2] - dz;
return (a[0] - dx) * (bdy * cdz - bdz * cdy) + (b[0] - dx) * (cdy * adz - cdz * ady) + (c[0] - dx) * (ady * bdz - adz * bdy);
};
export {
signedVolume
};