wtc-math
v1.3.0
Published
A math library that provides discrete components for common math operations. Includes vectors, matrices and quaternions.
Downloads
1,365
Maintainers
Readme
wtc-math 1.3.0
A math library for JavaScript and TypeScript — vectors, matrices, quaternions, and utilities for 3D graphics and creative coding.
Install
npm install wtc-mathUsage
The core classes are available from the main entry point:
import { Vec2, Vec3, Vec4, Mat2, Mat3, Mat4, Quat } from "wtc-math";
import { clamp, lerp, map, smoothstep, degToRad } from "wtc-math";Color, Plane, and Ray are optional — import them only when needed:
import { Color } from "wtc-math/color";
import { Plane } from "wtc-math/plane";
import { Ray } from "wtc-math/ray";Classes
| Class | Description |
|-------|-------------|
| Vec2 | 2D vector |
| Vec3 | 3D vector |
| Vec4 | 4D vector |
| Mat2 | 2×2 matrix |
| Mat3 | 3×3 matrix |
| Mat4 | 4×4 matrix |
| Quat | Quaternion (extends Vec4) |
| Color | RGBA colour in 0–1 space — fromHex, fromHSL, lerp, toCSS |
| Plane | Plane in 3D — distanceTo, projectPoint, intersectLine |
| Ray | Ray in 3D — at, intersectSphere, intersectBox, intersectPlane |
Utilities
clamp(v, min, max)
lerp(a, b, t)
map(v, inMin, inMax, outMin, outMax)
smoothstep(edge0, edge1, x)
smootherstep(edge0, edge1, x)
degToRad(deg)
radToDeg(rad)
pingpong(t, length)Types
All structural types are exported:
import type { Vec2Like, Vec3Like, Vec4Like, QuatLike, Mat2Like, Mat3Like, Mat4Like } from "wtc-math";Documentation
Full API docs: wethegit.github.io/wtc-math
