public static WritableRandomIter getWritableRandomIterator( int width, int height ) {
        if (doesOverFlow(width, height)) {
            GrassLegacyRandomIter iter = new GrassLegacyRandomIter(new double[height][width]);
            return iter;
        }
        WritableRaster pitRaster = CoverageUtilities.createWritableRaster(width, height, null, null, null);
        WritableRandomIter iter = RandomIterFactory.createWritable(pitRaster, null);
        return iter;
    }
public static WritableRandomIter getWritableRandomIterator ( int width , int height ) { if ( doesOverFlow ( width , height ) ) { GrassLegacyRandomIter iter = new GrassLegacyRandomIter ( new double [ height ] [ width ] ) ; return iter ; } WritableRaster pitRaster = CoverageUtilities . createWritableRaster ( width , height , null , null , null ) ; WritableRandomIter iter = RandomIterFactory . createWritable ( pitRaster , null ) ; return iter ; }
Creates a {@link WritableRandomIter}.

<p>It is important to use this method since it supports also
large GRASS rasters.

<p>If the size would throw an integer overflow, a {@link GrassLegacyRandomIter}
will be proposed to try to save the saveable.

@param raster the coverage on which to wrap a {@link WritableRandomIter}.
@return the iterator.