https://github.com/gwbres/dms-coordinates
:earth_africa: D°M'S'' coordinates in Rust for navigation and cartography applications
https://github.com/gwbres/dms-coordinates
coordinates geolocation geospatial navigation positionning rust
Last synced: 7 months ago
JSON representation
:earth_africa: D°M'S'' coordinates in Rust for navigation and cartography applications
- Host: GitHub
- URL: https://github.com/gwbres/dms-coordinates
- Owner: gwbres
- License: apache-2.0
- Created: 2021-12-22T09:17:20.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2025-02-20T07:22:57.000Z (about 1 year ago)
- Last Synced: 2025-08-29T00:29:50.763Z (8 months ago)
- Topics: coordinates, geolocation, geospatial, navigation, positionning, rust
- Language: Rust
- Homepage:
- Size: 136 KB
- Stars: 7
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
# DMS Coordinates
[](https://github.com/gwbres/dms-coordinates/actions/workflows/rust.yml)
[](https://docs.rs/dms-coordinates/badge.svg)
[](https://crates.io/crates/dms-coordinates)
[](https://crates.io/crates/dms-coordinates)
[](https://github.com/gwbres/dms-coordinates/blob/main/LICENSE-APACHE)
[](https://github.com/gwbres/dms-coordinates/blob/main/LICENSE-MIT)
Rust Crate for D°M'S" coordinates manipulation, used in navigation :sailboat: :airplane: :ship:
This crate exposes several structures
* [Cardinal points](doc/cardinal.md) of a compass rose
* [D° M' S"](doc/dms.md) to represent an angle as Degrees, Minutes and fractionnal seconds,
so called "sexagesimal" format, with an optionnal Cardinal. This object
can be used to represent Latitude / Longitude angles
* [DMS 3D](doc/dms3d.md) comprises a Latitude, a Longitude angle and optionnal altitude
(3D coordinates)
## Features
* std: this lib supports "no-std" by default
* serde: enable `DMS`, `DMS3d`, `Cardinal` serdes ops, requires "std"
* gpx: enables cast from Waypoint to DMS3D, requires "std"
## Other solutions :crab:
Other solutions exist nowadays in Rust to deal with sexagesimal coordiantes.
The `geodesy` library is one of them, and most likely more consistent than this library.
The sole interest you can find here is the few dependencies that this library has.