9 releases
Uses old Rust 2015
0.2.4 | Nov 21, 2018 |
---|---|
0.2.3 | Nov 21, 2018 |
0.2.2 | May 28, 2017 |
0.2.1 | Jan 5, 2017 |
0.1.3 | Dec 30, 2016 |
#829 in Math
323 downloads per month
Used in 5 crates
(3 directly)
35KB
634 lines
angular-units 0.2.4
Feature-rich library for representing and manipulating angular quantities. Provides strongly-typed structs for six units as well as helper traits for abstracting over the concrete types and doing common operations.
Provided Units:
- Degrees -
Deg<T>
- Radians -
Rad<T>
- Gradians -
Gon<T>
- Turns -
Turns<T>
(1 turn is a full rotation) - Arc minutes -
ArcMinutes<T>
- Arc seconds -
ArcSeconds<T>
Usage:
[dependencies]
angular-units = "0.2.4"
Examples:
- Converting from Degrees to Radians:
let angle = Deg(45.0);
let radians: Rad<_> = angle.into_angle();
- Composing angles from multiple units:
let degrees: Deg<f32> = Deg(50.0_f32) + ArcMinutes(25.0_f32) + Rad(std::f32::consts::PI / 6.0_f32);
- Interpolating between two angles:
assert_eq!(Deg(240.0).interpolate(&Deg(180.0), 0.5), Deg(210.0))
Optional Features:
Angular-units provides optional serde and approx support for all types by enabling their respective features.
Dependencies
~130–350KB