### 2 releases

Uses old Rust 2015

0.1.1 | Aug 27, 2015 |
---|---|

0.1.0 | Aug 26, 2015 |

#**1167** in Math

**64** downloads per month

**MIT**license

14KB

297 lines

# angular

Angular types and common helper methods to work with them while using the Rust type system in our favor.

## Features

- Tested and documented
- Safe while don't sacrificing performance and conversion related errors

## Usage

Everything evolves around the

type and its two variants
`Angle <T>`

`Degrees``(`v`)`

and `Radians``(`v`)`

. This ensures proper typing and allows for safe
helper methods evolving around it.`extern` `crate` angular`;`
`use` `angular``::``*``;`
`use` `std``::``f64``::``consts``::``{``SQRT_2``,` `FRAC_PI_4``}``;`
`fn` `calc_hypotenuse``(``opposite``:` `f64`, `alpha``:` Angle`)`` ``->` `f64` `{`
opposite `/` alpha`.``sin``(``)`
`}`
`let` a `=` `calc_hypotenuse``(``SQRT_2``,` Radians`(``FRAC_PI_4``)``)``;`
`let` b `=` `calc_hypotenuse``(``SQRT_2``,` Degrees`(``45.``0``)``)``;`
`let` c `=` `calc_hypotenuse``(``SQRT_2``,` `Angle``::`eighth`(``)``)``;`
`assert!``(``(`a `-` `2.``0``)``.``abs``(``)` `<` `1.``0e10``)``;`
`assert!``(``(`a `-` b`)``.``abs``(``)` `<` `1.``0e10``)``;`

## Documentation

For an exhaustive documentation head over to the API docs.

## License

This software is licensed under the terms of the MIT license. Please see the LICENSE for full details.

#### Dependencies

~245KB