geometry-overlay 0.0.4

Segment-intersection kernel, turn graph, and boolean overlay (intersection/union/difference) for the geometry port.
Documentation
# geometry-overlay

Part of the [boost_geometry](https://crates.io/crates/boost_geometry) workspace — a Rust port of [Boost.Geometry](https://www.boost.org/doc/libs/release/libs/geometry/). Most users should depend on the facade crate, which re-exports this one; depend on this crate directly only for a slimmer build.

Boolean-overlay engine — the segment-intersection kernel and the
machinery built on top of it.

Mirrors `boost/geometry/algorithms/detail/overlay/`. Overlay is the
engine behind `intersection`, `union`, `difference`,
`sym_difference`, and (indirectly) `buffer`, `is_valid`, `relate`,
`crosses`, `overlaps`, `touches`, `point_on_surface`, and
`merge_elements`. Boost concentrates all of it under one `detail`
directory; the port gives it its own crate because the algorithmic
surface is too dense to share a crate with anything else.

The build order is strict:

* [`predicate`] — OVL1: the robust predicate layer every overlay
  operation eventually calls (orientation, in-circle,
  segment-segment intersection, coordinate-range gate).
* turn graph → traversal → output assembly → the four overlay free
  functions land in later phases, each behind the same strict
  ordering.

## Robustness

v1 uses **exact input arithmetic with no rescale** — the predicates
compute directly on the `f64` inputs and the
[`predicate::range_guard`] refuses inputs outside the safe
arithmetic range rather than silently returning a wrong sign,
leaving a slot for a future rescale policy.

## License

BSL-1.0 — see [LICENSE](https://github.com/pentatonick/boost_geometry/blob/main/LICENSE).