Crate rust_geometry

Source
Expand description

rust_geometry 库是一个计算几何库。它包含了icpc竞赛中的计算几何的基本模板及部分算法。

根据作者个人icpc竞赛中的代码风格,基于计算几何问题常用的向量法思想,该模板主要实现了四个类 PointLineConvexHullRound 及其相关功能。在包含该库的基础上可以方便地完成各类icpc竞赛中的计算几何问题。

限于作者精力,部分复杂程度较高、适用范围较窄的计算几何算法未被纳入该库中。即便如此,该库也能使这些算法的实现更简洁清晰。

Modules§

convex_hull
该模块定义了凸壳类型 ConvexHull,通过维护上下凸壳的方式实现了凸壳的基本功能,并实现了通过点集构造凸壳的高效算法。
line
该模块定义了表示线段与直线的类型 Line,实现了它与点、直线交互的若干功能。
point
该模块定义了计算几何最基本的类型 Point,并实现了它的许多必要的trait。
round
该模块定义了表示圆的类型 Round,实现了点、直线、圆交互的若干功能,并实现了对三角形的内心、外心求解。

Constants§

EPS
浮点比较误差常数

Functions§

eq_f64
浮点比较函数,当两数之差绝对值不超过 EPS 时则认为它们相等,用以防止浮点型精度误差。