[Pure] public bool TryIntersection(LongitudeDegreeRange other, out LongitudeDegreeRange result) { if (Intersects(other)) { result = new LongitudeDegreeRange( Math.Max(Start, other.Start), Math.Min(End, other.End)); return(true); } result = default(LongitudeDegreeRange); return(false); }
[Pure] public bool Within(LongitudeDegreeRange r) { return(DefaultPeriodicOperations.Contains(r.Start, r.End, Start, End)); }
[Pure] public bool Equals(LongitudeDegreeRange r) { // ReSharper disable CompareOfFloatsByEqualityOperator return(Start == r.Start && End == r.End); // ReSharper restore CompareOfFloatsByEqualityOperator }
[Pure] public bool Intersects(LongitudeDegreeRange r) { return(DefaultPeriodicOperations.Intersects(Start, End, r.Start, r.End)); }