rs-math3d
rs-math3d is a no_std-friendly 2D/3D math library focused on computer graphics and geometry. It provides vectors, matrices, quaternions, transforms, and common geometric primitives with utility traits for intersection and distance queries.
Features
- Vector math (2D/3D/4D), dot/cross products, swizzles, safe normalization helpers
- Matrix math (2x2/3x3/4x4), determinants, inverses, affine fast-paths
- Quaternions for rotations and matrix conversions
- Transform helpers: translate, scale, rotate, project/unproject, lookat
- Geometric primitives: rays, planes, triangles, boxes, spheres, line segments
- Query traits for intersection and distance computations
- no_std support with an optional std feature
Usage
Add to Cargo.toml:
[]
= { = "0.10", = false }
To enable std-backed math functions:
= { = "0.10", = ["std"] }
Example
use Vector3;
use transforms;
use EPS_F32;
Modules
- vector: vector types and operations
- matrix: matrix types and operations
- quaternion: quaternion math for rotations
- transforms: common 3D transforms
- primitives: geometric shapes and intersection helpers
- queries: query traits and implementations
- basis: coordinate system basis helpers
- scalar: scalar traits and constants