/** Creates a {@link GridCoverage2D} for the specified file. */ private GridCoverage2D createCoverage(String filename) throws IOException { final File dataFile = new File(this.dataDirectory, filename); final RenderedImage image = readImage(dataFile); return createCoverage(String.valueOf(image.getProperty("name")), image); }
properties.put(name, pOriginal.getProperty(name));
/** * Gets a property from the property set of the {@linkplain #image}. If the property name is not * recognized, then {@link Image#UndefinedProperty} will be returned. This method do * <strong>not</strong> inherits properties from the image specified at {@linkplain * #ImageWorker(RenderedImage) construction time} - only properties generated by this class are * returned. */ private Object getComputedProperty(final String name) { final Object value = image.getProperty(name); return (value == inheritanceStopPoint.getProperty(name)) ? Image.UndefinedProperty : value; }
public Object getProperty(String name) { return adaptee.getProperty(name); }
GranuleLoadingResult( RenderedImage loadedImage, ROI footprint, URL granuleUrl, final boolean doFiltering, final PAMDataset pamDataset, GranuleDescriptor granuleDescriptor) { this.loadedImage = loadedImage; Object roi = loadedImage.getProperty("ROI"); if (roi instanceof ROI) { this.footprint = (ROI) roi; } this.granuleUrl = granuleUrl; this.doFiltering = doFiltering; this.pamDataset = pamDataset; this.granuleDescriptor = granuleDescriptor; } }
private Double getNoDataProperty(RenderedImage image) { if (image != null) { Object obj = image.getProperty(NoDataContainer.GC_NODATA); if (obj != null) { if (obj instanceof NoDataContainer) { return ((NoDataContainer) obj).getAsSingleValue(); } else if (obj instanceof Double) { return (Double) obj; } } } return null; }
/** * Returns the visible band in the specified {@link RenderedImage} or {@link PropertySource}. * This method fetch the {@code "GC_VisibleBand"} property. If this property is undefined, then * the visible band default to the first one. * * @param image The image for which to fetch the visible band, or {@code null}. * @return The visible band. */ public static int getVisibleBand(final Object image) { Object candidate = null; if (image instanceof RenderedImage) { candidate = ((RenderedImage) image).getProperty("GC_VisibleBand"); } else if (image instanceof PropertySource) { candidate = ((PropertySource) image).getProperty("GC_VisibleBand"); } if (candidate instanceof Integer) { return ((Integer) candidate).intValue(); } return 0; }
public Range extractNoDataProperty(final RenderedImage image) { Object property = image.getProperty(NoDataContainer.GC_NODATA); if (property != null) { if (property instanceof NoDataContainer) { return ((NoDataContainer) property).getAsRange(); } else if (property instanceof Double) { return RangeFactory.create((Double) property, (Double) property); } } return null; }
} else { prop = localImage.getProperty("roi");
private GridCoverage2D createCoverageFromElement( MosaicElement mosaicElement, GridCoverageFactory factory, ReferencedEnvelope submosaicBBOX) { RenderedImage image = mosaicElement.getSource(); Object roiProperty = image.getProperty("ROI"); if (!(roiProperty instanceof ROI)) { // need the ROI before warp, as the area of validity needs to be warped along, so // if missing add one now ROIGeometry roi = new ROIGeometry( JTS.toGeometry( new Envelope( image.getMinX(), image.getMinX() + image.getWidth(), image.getMinY(), image.getMinY() + image.getHeight()))); ImageWorker iw = new ImageWorker(image); iw.setROI(roi); image = iw.getRenderedImage(); roiProperty = roi; } // move the property at the coverage level too Map<String, Object> properties = new HashMap<>(); CoverageUtilities.setROIProperty(properties, (ROI) roiProperty); return factory.create("submosaic", image, submosaicBBOX, null, null, properties); }
Object roiObject = input.getProperty("ROI"); Object gcRoiObject = coverage.getProperty("GC_ROI"); if (!(roiObject instanceof ROI) && !(gcRoiObject instanceof ROI)) {
assertThat(image.getProperty("roi"), instanceOf(ROI.class));
} else { ImageWorker iw = new ImageWorker(image); final Object roi = image.getProperty("ROI"); if (roi instanceof ROI) { iw.setROI((ROI) roi);
@Test public void testReprojectGoogleMercator() throws Exception { CoordinateReferenceSystem googleMercator = CRS.decode("EPSG:3857"); ReferencedEnvelope mapExtent = new ReferencedEnvelope( -20037508.34, 20037508.34, -20037508.34, 20037508.34, googleMercator); Rectangle screenSize = new Rectangle(200, (int) (mapExtent.getHeight() / mapExtent.getWidth() * 200)); AffineTransform w2s = RendererUtilities.worldToScreenTransform(mapExtent, screenSize); GridCoverageRenderer renderer = new GridCoverageRenderer(googleMercator, mapExtent, screenSize, w2s); RasterSymbolizer rasterSymbolizer = new StyleBuilder().createRasterSymbolizer(); GridCoverage2D coverage = worldReader.read(null); RenderedImage image = renderer.renderImage( coverage, rasterSymbolizer, Interpolation.getInstance(Interpolation.INTERP_NEAREST), Color.RED, 256, 256); // always set ROI on reprojection assertThat(image.getProperty("roi"), instanceOf(ROI.class)); File reference = new File( "src/test/resources/org/geotools/renderer/lite/gridcoverage2d/googleMercator.png"); ImageAssert.assertEquals(reference, image, 0); }
Object property = src.getProperty("ROI"); if (property == null || property.equals(java.awt.Image.UndefinedProperty)
inputImage.getProperty( ImageReadDescriptor.PROPERTY_NAME_IMAGE_READER); } catch (NullPointerException npe) {
Object property = src.getProperty("ROI"); if (property == null || property.equals(java.awt.Image.UndefinedProperty)
(Classification) op.getProperty(ClassBreaksDescriptor.CLASSIFICATION_PROPERTY); (ZonalStats) op.getProperty(ZonalStatsDescriptor.ZONAL_STATS_PROPERTY); return new Results(stats, zonalStats);
ImageAssert.assertEquals(reference, image, 0); Object property = image.getProperty(GridCoverageRenderer.PARENT_COVERAGE_PROPERTY); assertNotNull(property); assertTrue(property instanceof GridCoverage2D);
: null; Object property = image.getProperty("ROI"); ROI overallROI = (property instanceof ROI) ? (ROI) property : null; return new MosaicElement(alphaBand, overallROI, image, mosaicElement.getPamDataset());