This is a Rust library for geographic coordinate frame conversion. The implementation is similar to Pymap3d. All the functions are implemented in f64
precision.
Live demo: map 3d live demo
No external dependencies
The default units are:
- Radians [rad] for angular variables
- Meters [m] for linear variables
- Greenwich Sidereal Time [GST] for date and time
We support several reference ellipsoids,
WGS84
is defined as the default one, obtained with Ellipsoid::default()
.
List of coordinates systems implemented in the functions:
- Geodetic coordinate system (GEODETIC)
- Earth-Centered Earth-fixed (ECEF)
- Earth-Centered Inertial (ECI)
- Local spherical coordinate system (AER)
- Local tangent plane coordinate system - East-North-Up (ENU)
- Local tangent plane coordinate system - North-East-Down (NED)
Additional functions:
- Radians to Degrees and Degrees to Radians
- UTC time conversion to GST
- 3x3 Matrix - 3x1 column multiplication
- 3x3 Matrix transpose
- f64 round towards zero
- projected distance (
Haversine
formula) between two coordinates (lat, lon, in decimal degrees)