public Containment Evaluate(Aabb aabb) { var vc0 = aabb.Evaluate(_near); if (vc0 == 8) { return(Containment.Outside); } var vc1 = aabb.Evaluate(_far); if (vc1 == 8) { return(Containment.Outside); } var vc2 = aabb.Evaluate(_left); if (vc2 == 8) { return(Containment.Outside); } var vc3 = aabb.Evaluate(_right); if (vc3 == 8) { return(Containment.Outside); } var vc4 = aabb.Evaluate(_top); if (vc4 == 8) { return(Containment.Outside); } var vc5 = aabb.Evaluate(_bottom); if (vc5 == 8) { return(Containment.Outside); } return(vc0 + vc1 + vc2 + vc3 + vc4 + vc5 == 0 ? Containment.Inside : Containment.Partial); }