Cartesian ========= 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. Contributors ------------ Jonatan H Sundqvist TODO ---- - [x] 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 - [x] 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)