// Returns true if these Bounds share any area in common with another. bool overlaps(const Bounds& other, bool force2d = false) const { Point otherMid(other.mid()); return std::abs(m_mid.x - otherMid.x) <= width() / 2.0 + other.width() / 2.0 && std::abs(m_mid.y - otherMid.y) <= depth() / 2.0 + other.depth() / 2.0 && (force2d || std::abs(m_mid.z - otherMid.z) <= height() / 2.0 + other.height() / 2.0); }