### 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 |

#**525** in Math

**403** downloads per month

Used in **4** crates
(3 directly)

**MIT**license

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 -

(1 turn is a full rotation)`Turns``<`T`>` - 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

~135–375KB