Functions and types for working with three-dimensional coordinate systems.
For now, all functions assume a coordinate system where right is +X, up is +Y and forwards is +Z, unless otherwise stated.
Jonatan H Sundqvist
-
Use typeclass for Vectors (would save a lot of boilerplate) -- [ ] Replace 'Vector' with more specific classes, depending on the use case -- [ ] Perhaps 'Vector' could be an alias for types that support all vector ops
-
Allow functions to operate on any Vector-like type (including eg. Complex) (cf. the
Vector
-typeclass) -
Consistent naming scheme (eg. use Vector(2D|3D) or just Vector for both types)
-
Decide on a public API (right now, exports are a mess)