private SpatialTree<E> octant(Vector3f position) {
        if (position.x > division_x) {
            if (position.y > division_y) {
                if (position.z > division_z)
                    return octant1;
                else
                    return octant5;
            } else {
                if (position.z > division_z)
                    return octant4;
                else
                    return octant8;
            }
        } else {
            if (position.y > division_y) {
                if (position.z > division_z)
                    return octant2;
                else
                    return octant6;
            } else {
                if (position.z > division_z)
                    return octant3;
                else
                    return octant7;
            }            
        }
    }