some improvement on frustum class