Sguaba: Hard-to-misuse rigid body transforms for engineers
a year ago
- #Rust
- #Engineering
- #Coordinate Systems
- Sguaba is a Rust crate designed to handle rigid body transforms for engineers, focusing on ease of use and error prevention.
- It strongly types coordinates and vectors with their respective coordinate systems and implements conversions between them.
- The library leverages Rust's type system to prevent accidental misuse of different coordinate systems or conventions.
- Sguaba includes types like `Coordinate`, `Vector`, `Orientation`, and `Pose` for easy reasoning about spatial data.
- It supports various coordinate systems such as WGS84, ECEF, NED, and FRD, with conversions handled via `RigidBodyTransform`.
- The library is designed for engineers, abstracting complex math (like quaternions) behind intuitive interfaces.
- Example use case: converting a pilot's observation in FRD coordinates to WGS84 coordinates for real-world location.
- Sguaba is currently missing some coordinate systems like ENU and ECI, and could benefit from more documentation and tests.
- The project is open-source, with contributions welcome via GitHub.