#angle #geometry #degree #radians #trigonometry

no-std angle-sc

用正弦和余弦表示的角度

5个版本

0.2.0 2024年7月1日
0.1.3 2024年6月19日
0.1.2 2024年3月18日
0.1.1 2024年2月16日
0.1.0 2024年2月11日

#448 in 数学

Download history 1/week @ 2024-04-28 4/week @ 2024-05-19 1/week @ 2024-05-26 7/week @ 2024-06-02 6/week @ 2024-06-09 192/week @ 2024-06-16 33/week @ 2024-06-23 203/week @ 2024-06-30 66/week @ 2024-07-07 25/week @ 2024-07-14 55/week @ 2024-07-21 21/week @ 2024-07-28 10/week @ 2024-08-04 29/week @ 2024-08-11

118 每月下载
用于 2 crates

MIT许可证

51KB
787

angle-sc

crates.io docs.io License Rust codecov

用正弦和余弦表示的角度。

角度θ的余弦和正弦可以视为坐标x和y,其中θ是从x轴逆时针测量的。
它们形成一个单位圆,见图1。

Unit circle
图1 由sin θ和cos θ形成的单位圆

设计

Angle Class Diagram
图2 角度类图

单位圆的Angle通过简单地取Angle的正弦和余弦的相反数来计算。
Angle的加法和减法使用角度和差公式执行。
Angledouble使用二倍角公式,而half使用半角公式
Angle<运算符比较一个Angle是否在单位圆上另一个Angle的顺时针方向。

Anglesincos字段是UnitNegRange,一个值在-1.0到+1.0(包括)范围内的newtype
使用DegreesRadians newtype将Angle转换为其他类型,并将其他类型转换为Angle
使用Validate trait来检查AngleUnitNegRange是否有效。

由于库被声明为no_std,因此它可以用于嵌入式应用程序。

贡献

如果您想通过代码或文档进行贡献,请从贡献指南开始。如果您有任何疑问,请随时提问。但请遵守我们的行为准则

许可证

angle-rs遵循MIT许可证提供,请参阅LICENSE

依赖

~0.7–1.3MB
~30K SLoC