real_interval

Crates.io Docs.rs

RealInterval provides an f32-backed continuous interval type for ergonomic interval manipulation. Scalar operations, arithmetic operations, and set operations on intervals are all supported. The following is a simple example of how to use intervals:

```rust let interval = RealInterval::minmax(-1.0, 2.0); let shiftedinterval = interval + 0.5; let expandedinterval = RealInterval::minmax(-2.0, 3.0) * interval;

asserteq!(RealInterval::minmax(-0.5, 2.5), shiftedinterval); asserteq!(RealInterval::minmax(-4.0, 6.0), expandedinterval);

let andinterval = interval & shiftedinterval; let orinterval = interval | shiftedinterval;

asserteq!(Some(RealInterval::minmax(-0.5, 2.0)), andinterval); asserteq!(RealInterval::minmax(-1.0, 2.5), orinterval); ```