[geometry] updated traverse to avoid output of nearly empty rings, like in convert_rings. This also affects unit tests