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 • Rust 包仓库 1/week @ 2024-04-28 • Rust 包仓库 4/week @ 2024-05-19 • Rust 包仓库 1/week @ 2024-05-26 • Rust 包仓库 7/week @ 2024-06-02 • Rust 包仓库 6/week @ 2024-06-09 • Rust 包仓库 192/week @ 2024-06-16 • Rust 包仓库 33/week @ 2024-06-23 • Rust 包仓库 203/week @ 2024-06-30 • Rust 包仓库 66/week @ 2024-07-07 • Rust 包仓库 25/week @ 2024-07-14 • Rust 包仓库 55/week @ 2024-07-21 • Rust 包仓库 21/week @ 2024-07-28 • Rust 包仓库 10/week @ 2024-08-04 • Rust 包仓库 29/week @ 2024-08-11 • Rust 包仓库

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