}
private Primitive processRingToPrimitive(Envelope bounds, Ring ring, int dimension) {
int D = crs.getCoordinateSystem().getDimension();
if( dimension == D ){ // create Surface from ring and return
SurfaceBoundary boundary = createSurfaceBoundary( ring, Collections.EMPTY_LIST );
return createSurface( boundary );
}
CoordinateSystemAxis axis = crs.getCoordinateSystem().getAxis( dimension );
if( axis.getDirection() == AxisDirection.OTHER ){
return processRingToPrimitive( bounds, ring, dimension+1 );