package mil.nga.giat.geowave.adapter.raster; import java.awt.RenderingHints; import java.awt.image.RenderedImage; import java.io.File; import java.io.IOException; import javax.media.jai.Histogram; import javax.media.jai.PlanarImage; import javax.media.jai.RenderedImageAdapter; import org.apache.commons.lang3.tuple.Pair; import org.geotools.image.ImageWorker; public class ImageWorkerPredefineStats extends ImageWorker { public ImageWorkerPredefineStats() { super(); // TODO Auto-generated constructor stub } public ImageWorkerPredefineStats( File input ) throws IOException { super( input); } public ImageWorkerPredefineStats( RenderedImage image ) { super( image); } public ImageWorkerPredefineStats( RenderingHints hints ) { super( hints); } public ImageWorkerPredefineStats setStats( Pair<String, Object>[] nameValuePairs ) { image = new RenderedImageAdapter( image); for (Pair<String, Object> pair : nameValuePairs) { ((PlanarImage) (image)).setProperty( pair.getLeft(), pair.getRight()); } return this; } public ImageWorkerPredefineStats setHistogram( Histogram histogram ) { image = new RenderedImageAdapter( image); ((PlanarImage) (image)).setProperty( "histogram", histogram); return this; } public ImageWorkerPredefineStats setExtrema( double[][] extrema ) { image = new RenderedImageAdapter( image); ((PlanarImage) (image)).setProperty( "extrema", extrema); return this; } }