public FloatRange IntersectionWith(FloatRange other) => IsEmpty || other.IsEmpty ? Empty : new FloatRange(Start.Max(other.Start), End.Min(other.End));
public bool Equals(FloatRange other) => Start.IsAlmostEqualTo(other.Start) && End.IsAlmostEqualTo(other.End);
public bool IntersectsWith(FloatRange other) => !IsEmpty && !other.IsEmpty && (Start <= other.Start && End >= other.End || Start >= other.Start && Start <other.End || End> other.Start && End <= other.End);