+ format.getName()); ColorModel cm = imageLayout.getColorModel(null); if (cm == null) { throw new Exception(
return false; ColorModel nativeCm = readerLayout.getColorModel(null); if (nativeCm == null || nativeCm.hasAlpha()) { return false;
@Override public String getName(GridCoverage2DReader reader, Map<String, String> map) { ImageLayout layout; String coverageName = null; try { layout = reader.getImageLayout(); ColorModel cm = layout.getColorModel(null); ColorSpace cs = cm.getColorSpace(); int type = cs.getType(); switch (type) { case ColorSpace.TYPE_GRAY: coverageName = GRAY; break; case ColorSpace.TYPE_RGB: coverageName = RGB; break; default: throw new IllegalArgumentException( "The specified ColorSpace's type is not supported: " + type); } } catch (IOException e) { throw new IllegalArgumentException(e); } return coverageName; } }
private boolean checkColorModel( GridCoverage2DReader coverage, MosaicConfigurationBean config, RasterManager rasterManager, String inputCoverageName) throws IOException { byte[][] palette = config.getPalette(); ColorModel colorModel = config.getColorModel(); ColorModel actualCM = coverage.getImageLayout(inputCoverageName).getColorModel(null); if (colorModel == null) { colorModel = rasterManager.getDefaultCM(); } if (palette == null) { palette = rasterManager.getDefaultPalette(); } return !Utils.checkColorModels(colorModel, palette, actualCM); } }
cm = layout.getColorModel(null); sm = layout.getSampleModel(null);
/** * Create a new ImageLayout from the source image optionally overriding a ColorModel supplied via the layout. */ private static ImageLayout layoutHelper(RenderedImage source, ImageLayout layout) { // Create basic layout from the source. ImageLayout il = new ImageLayout(source); // If a layout containing a valid ColorModel field is supplied then // reset the ColorModel if it is compatible with the SampleModel. if(layout != null && layout.isValid(ImageLayout.COLOR_MODEL_MASK)) { ColorModel colorModel = layout.getColorModel(null); if(JDKWorkarounds.areCompatibleDataModels(source.getSampleModel(), colorModel)) { il.setColorModel(colorModel); } } return il; }
/** * Create a new ImageLayout from the source image optionally overriding a ColorModel supplied via the layout. */ private static ImageLayout layoutHelper(RenderedImage source, ImageLayout layout) { // Create basic layout from the source. ImageLayout il = new ImageLayout(source); // If a layout containing a valid ColorModel field is supplied then // reset the ColorModel if it is compatible with the SampleModel. if(layout != null && layout.isValid(ImageLayout.COLOR_MODEL_MASK)) { ColorModel colorModel = layout.getColorModel(null); if(JDKWorkarounds.areCompatibleDataModels(source.getSampleModel(), colorModel)) { il.setColorModel(colorModel); } } return il; }
private static ImageLayout layoutHelper(RenderedImage source, ImageLayout il, Map config) { ImageLayout layout = (il == null) ? new ImageLayout() : (ImageLayout) il.clone(); SampleModel sm = layout.getSampleModel(source); if (!ImageUtil.isBinary(sm)) { sm = new MultiPixelPackedSampleModel(DataBuffer.TYPE_BYTE, layout.getTileWidth(source), layout.getTileHeight(source), 1); layout.setSampleModel(sm); } ColorModel cm = layout.getColorModel(null); if (cm == null || !JDKWorkarounds.areCompatibleDataModels(sm, cm)) { layout.setColorModel(ImageUtil.getCompatibleColorModel(sm, config)); } return layout; }
private static ImageLayout layoutHelper(RenderedImage source, ImageLayout il, Map config) { ImageLayout layout = (il == null) ? new ImageLayout() : (ImageLayout) il.clone(); SampleModel sm = layout.getSampleModel(source); if (!ImageUtil.isBinary(sm)) { sm = new MultiPixelPackedSampleModel(DataBuffer.TYPE_BYTE, layout.getTileWidth(source), layout.getTileHeight(source), 1); layout.setSampleModel(sm); } ColorModel cm = layout.getColorModel(null); if (cm == null || !JDKWorkarounds.areCompatibleDataModels(sm, cm)) { layout.setColorModel(ImageUtil.getCompatibleColorModel(sm, config)); } return layout; }
if (layout.getColorModel(null) != null) { final ColorModel cm = ImageUtil.getCompatibleColorModel(sm, renderingHints); layout.setColorModel(cm);
ColorModel cm = il.getColorModel(null); if(cm != null && !JDKWorkarounds.areCompatibleDataModels(sm, cm)) {
reader = new GeoTiffReader(tif); ImageLayout layout = reader.getImageLayout(); ColorModel cm = layout.getColorModel(null); assertEquals(16, cm.getNumComponents()); SampleModel sm = layout.getSampleModel(null);
reader = new GeoTiffReader(tif); ImageLayout layout = reader.getImageLayout(); ColorModel cm = layout.getColorModel(null); assertEquals(3, cm.getNumComponents()); SampleModel sm = layout.getSampleModel(null);
reader = new GeoTiffReader(tif); ImageLayout layout = reader.getImageLayout(); ColorModel cm = layout.getColorModel(null); assertEquals(3, cm.getNumComponents()); SampleModel sm = layout.getSampleModel(null);
public void testLoadFloatImage() throws IOException { final ImageHeader imageHeader = ImageHeader.load( new InputStreamReader(ImageHeaderTest.class.getResourceAsStream("float-image.properties")), null, null); assertEquals("raw", imageHeader.getTileFormat()); final ImageLayout imageLayout = imageHeader.getImageLayout(); assertNotNull(imageLayout); assertEquals(1, imageLayout.getMinX(null)); assertEquals(-1, imageLayout.getMinY(null)); assertEquals(1280, imageLayout.getWidth(null)); assertEquals(1024, imageLayout.getHeight(null)); assertEquals(0, imageLayout.getTileGridXOffset(null)); assertEquals(6, imageLayout.getTileGridYOffset(null)); assertEquals(512, imageLayout.getTileWidth(null)); assertEquals(256, imageLayout.getTileHeight(null)); assertNull(imageLayout.getColorModel(null)); assertNotNull(imageLayout.getSampleModel(null)); assertEquals(512, imageLayout.getSampleModel(null).getWidth()); assertEquals(256, imageLayout.getSampleModel(null).getHeight()); assertEquals(1, imageLayout.getSampleModel(null).getNumBands()); assertEquals(4, imageLayout.getSampleModel(null).getDataType()); assertEquals(32, imageLayout.getSampleModel(null).getSampleSize()[0]); }
public void testLoadBitImage() throws IOException { final ImageHeader imageHeader = ImageHeader.load( new InputStreamReader(ImageHeaderTest.class.getResourceAsStream("bit-image.properties")), null, null); assertEquals("raw", imageHeader.getTileFormat()); final ImageLayout imageLayout = imageHeader.getImageLayout(); assertNotNull(imageLayout); assertEquals(1, imageLayout.getMinX(null)); assertEquals(-1, imageLayout.getMinY(null)); assertEquals(1280, imageLayout.getWidth(null)); assertEquals(1024, imageLayout.getHeight(null)); assertEquals(0, imageLayout.getTileGridXOffset(null)); assertEquals(6, imageLayout.getTileGridYOffset(null)); assertEquals(512, imageLayout.getTileWidth(null)); assertEquals(256, imageLayout.getTileHeight(null)); assertNull(imageLayout.getColorModel(null)); assertNotNull(imageLayout.getSampleModel(null)); assertEquals(512, imageLayout.getSampleModel(null).getWidth()); assertEquals(256, imageLayout.getSampleModel(null).getHeight()); assertEquals(1, imageLayout.getSampleModel(null).getNumBands()); assertEquals(0, imageLayout.getSampleModel(null).getDataType()); assertEquals(1, imageLayout.getSampleModel(null).getSampleSize()[0]); }
reader = new GeoTiffReader(tif); ImageLayout layout = reader.getImageLayout(); ColorModel cm = layout.getColorModel(null); assertEquals(3, cm.getNumComponents()); SampleModel sm = layout.getSampleModel(null);
assertEquals(tileWidth, imageHeader.getImageLayout().getTileWidth(null)); assertEquals(tileHeight, imageHeader.getImageLayout().getTileHeight(null)); assertNull(imageHeader.getImageLayout().getColorModel(null)); assertNotNull(imageHeader.getImageLayout().getSampleModel(null)); assertEquals(sampleModel.getNumBands(), imageHeader.getImageLayout().getSampleModel(null).getNumBands());
SampleModel sampleModel = layout.getSampleModel(null); assertEquals (2, sampleModel.getNumBands()); ColorModel colorModel = layout.getColorModel(null); assertEquals (2, colorModel.getNumComponents()); reader.dispose();
SampleModel sampleModel = layout.getSampleModel(null); assertEquals(2, sampleModel.getNumBands()); ColorModel colorModel = layout.getColorModel(null); assertEquals(2, colorModel.getNumComponents()); reader.dispose();