public static Range operator -(Range range, double delta) { Range r = new Range(range.X1, range.X2); r.X1 -= delta; r.X2 -= delta; return r; }
public static Range operator *(Range range1, Range range2) { Range range = new Range(); range.X1 = Math.Max(range1.X1, range2.X1); range.X2 = Math.Min(range1.X2, range2.X2); return range; }
private static bool Overlapped(Range r1, Range r2) { if (r1.X2 < r2.X1) return false; if (r1.X1 > r2.X2) return false; return true; }
public bool Overlapped(Range range) { return Overlapped(this, range); }
public Range(Range range) { this.X1 = range.X1; this.X2 = range.X2; }