Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
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: about 6 hours 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 (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-06-15T18:00:35.000Z (5 months ago)
- Last Synced: 2024-10-31T11:46:21.669Z (7 days ago)
- Topics: coordinates, geolocation, geospatial, navigation, positionning, rust
- Language: Rust
- Homepage:
- Size: 131 KB
- Stars: 7
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
# DMS Coordinates
[![Rust](https://github.com/gwbres/dms-coordinates/actions/workflows/rust.yml/badge.svg)](https://github.com/gwbres/dms-coordinates/actions/workflows/rust.yml)
[![crates.io](https://docs.rs/dms-coordinates/badge.svg)](https://docs.rs/dms-coordinates/badge.svg)
[![crates.io](https://img.shields.io/crates/d/dms-coordinates.svg)](https://crates.io/crates/dms-coordinates)
[![crates.io](https://img.shields.io/crates/v/dms-coordinates.svg)](https://crates.io/crates/dms-coordinates)
[![License](https://img.shields.io/badge/license-Apache%202.0-blue?style=flat-square)](https://github.com/gwbres/dms-coordinates/blob/main/LICENSE-APACHE)
[![License](https://img.shields.io/badge/license-MIT-blue?style=flat-square)](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.