6 releases
0.1.5 | Jul 13, 2022 |
---|---|
0.1.4 | Aug 16, 2020 |
0.1.3 | Jun 13, 2020 |
0.1.2 | May 18, 2020 |
#48 in Robotics
15,874 downloads per month
Used in 13 crates
(6 directly)
45KB
638 lines
Rust Map3d
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)
To-Do List:
- implement functions for right ascension and declination conversions