A lightweight, efficient library for detecting intersections between complex multi-valued curves. Designed for high performance: curve segmentation, interpolation, and precise root-finding through adaptive bisection.
CrossingHunter is a lightweight and efficient Python library for detecting intersections between complex, multi-valued curves.
It is designed to handle high-precision tasks where traditional root-finding methods fail due to curve complexity or non-monotonicity.
Key features:
- Curve Segmentation: Automatically segments curves into monotonic parts for reliable interpolation.
- High Precision: Adaptive bisection method ensures sub-pixel level intersection accuracy.
- One-to-Many Support: Quickly find intersections between a fixed curve and multiple target curves without redundant computation.
- Flexible and Modular: Easy to integrate into larger projects.
git clone https://github.com/starpacker/CrossingHunter.git