Expand description
rust_geometry
库是一个计算几何库。它包含了icpc竞赛中的计算几何的基本模板及部分算法。
根据作者个人icpc竞赛中的代码风格,基于计算几何问题常用的向量法思想,该模板主要实现了四个类 Point
、Line
、ConvexHull
、Round
及其相关功能。在包含该库的基础上可以方便地完成各类icpc竞赛中的计算几何问题。
限于作者精力,部分复杂程度较高、适用范围较窄的计算几何算法未被纳入该库中。即便如此,该库也能使这些算法的实现更简洁清晰。
Modules§
- convex_
hull - 该模块定义了凸壳类型
ConvexHull
,通过维护上下凸壳的方式实现了凸壳的基本功能,并实现了通过点集构造凸壳的高效算法。 - line
- 该模块定义了表示线段与直线的类型
Line
,实现了它与点、直线交互的若干功能。 - point
- 该模块定义了计算几何最基本的类型
Point
,并实现了它的许多必要的trait。 - round
- 该模块定义了表示圆的类型
Round
,实现了点、直线、圆交互的若干功能,并实现了对三角形的内心、外心求解。
Constants§
- EPS
- 浮点比较误差常数
Functions§
- eq_f64
- 浮点比较函数,当两数之差绝对值不超过
EPS
时则认为它们相等,用以防止浮点型精度误差。