public bool Surrounds(Box box) { if (!IsDefined()) return false; if (!box.IsDefined()) return false; if (m_min.x > box.m_min.x) return false; if (m_min.y > box.m_min.y) return false; if (m_min.z > box.m_min.z) return false; if (m_max.x < box.m_max.x) return false; if (m_max.y < box.m_max.y) return false; if (m_max.z < box.m_max.z) return false; return true; }
public void Union(Box box) { MergePoint(box.m_min); MergePoint(box.m_max); }
public void Intersection(Box box) { if (!Intersects(box)) { SetUndefined(); return; } m_min = m_min.Max(box.m_min); m_max = m_max.Min(box.m_max); }