From 62bc951474b190f4d22012708d59cf010310b9e7 Mon Sep 17 00:00:00 2001 From: Lane Kolbly Date: Sun, 13 Aug 2017 06:36:22 -0500 Subject: Shortened DoIntervalsIntersect to two comparisons, made inline. (#3883) * Shortened DoIntervalsIntersect to two comparisons, made inline. * Applied DeMorgan's * a_Max1 => a_Max2 * Moved DoIntervalsIntersect definition into header file. * Moved DoesIntersect into header. * Unindented line --- src/Cuboid.cpp | 31 ------------------------------- 1 file changed, 31 deletions(-) (limited to 'src/Cuboid.cpp') diff --git a/src/Cuboid.cpp b/src/Cuboid.cpp index 1aa1e92e1..ac9537a8b 100644 --- a/src/Cuboid.cpp +++ b/src/Cuboid.cpp @@ -7,20 +7,6 @@ -/** Returns true if the two specified intervals have a non-empty union */ -static bool DoIntervalsIntersect(int a_Min1, int a_Max1, int a_Min2, int a_Max2) -{ - return ( - ((a_Min1 >= a_Min2) && (a_Min1 <= a_Max2)) || // Start of first interval is within the second interval - ((a_Max1 >= a_Min2) && (a_Max1 <= a_Max2)) || // End of first interval is within the second interval - ((a_Min2 >= a_Min1) && (a_Min2 <= a_Max1)) // Start of second interval is within the first interval - ); -} - - - - - //////////////////////////////////////////////////////////////////////////////// // cCuboid: @@ -95,23 +81,6 @@ int cCuboid::GetVolume(void) const -bool cCuboid::DoesIntersect(const cCuboid & a_Other) const -{ - ASSERT(IsSorted()); - ASSERT(a_Other.IsSorted()); - - // In order for cuboids to intersect, each of their coord intervals need to intersect - return ( - DoIntervalsIntersect(p1.x, p2.x, a_Other.p1.x, a_Other.p2.x) && - DoIntervalsIntersect(p1.y, p2.y, a_Other.p1.y, a_Other.p2.y) && - DoIntervalsIntersect(p1.z, p2.z, a_Other.p1.z, a_Other.p2.z) - ); -} - - - - - bool cCuboid::IsCompletelyInside(const cCuboid & a_Outer) const { ASSERT(IsSorted()); -- cgit v1.2.3