Skip to main content

use_trigonometry_angle_basics/
basic_usage.rs

1use use_trigonometry::{
2    Angle, cos_deg, degrees_to_radians, normalize_degrees, radians_to_degrees, sin_deg, tan_deg,
3};
4
5fn main() {
6    let acute = Angle::from_degrees(30.0);
7    let wrapped = Angle::from_degrees(765.0).normalized();
8    let signed = Angle::from_degrees(-450.0).normalized_signed();
9
10    assert!((acute.radians() - degrees_to_radians(30.0)).abs() < 1.0e-12);
11    assert!((acute.degrees() - radians_to_degrees(acute.radians())).abs() < 1.0e-12);
12    assert!((acute.sin() - 0.5).abs() < 1.0e-12);
13    assert!((acute.cos() - cos_deg(30.0)).abs() < 1.0e-12);
14    assert!((wrapped.degrees() - 45.0).abs() < 1.0e-12);
15    assert!((signed.degrees() + 90.0).abs() < 1.0e-12);
16    assert!((normalize_degrees(-90.0) - 270.0).abs() < 1.0e-12);
17    assert!((sin_deg(30.0) - 0.5).abs() < 1.0e-12);
18    assert!((tan_deg(45.0) - 1.0).abs() < 1.0e-12);
19}