IEnumerable<Box3D> Children(Box3D box)
{
float x = box.MinEdge.X;
float y = box.MinEdge.Y;
float z = box.MinEdge.Z;
float size = box.LengthX / 2;
yield return new Box3D(x, y, z, size);
yield return new Box3D(x + size, y, z, size);
yield return new Box3D(x, y, z + size, size);
yield return new Box3D(x + size, y, z + size, size);
yield return new Box3D(x, y + size, z, size);
yield return new Box3D(x + size, y + size, z, size);
yield return new Box3D(x, y + size, z + size, size);
yield return new Box3D(x + size, y + size, z + size, size);
}