public PlanarImage getGeophysicalImage(RasterDataNode rasterDataNode, int level) { return getLevelImage(rasterDataNode.getGeophysicalImage(), level); }
private static PlanarImage createTargetImage(RasterDataNode rdn) { return rdn.getGeophysicalImage(); }
public static MultiLevelImage createMaskedGeophysicalImage(final RasterDataNode node, Number maskValue) { MultiLevelImage varImage = node.getGeophysicalImage(); if (node.getValidPixelExpression() != null) { varImage = replaceInvalidValuesByNaN(node, varImage, node.getValidMaskImage(), maskValue); } else if (node.isNoDataValueSet() && node.isNoDataValueUsed() && Double.compare(maskValue.doubleValue(), node.getGeophysicalNoDataValue()) != 0) { varImage = replaceNoDataValueByNaN(node, varImage, node.getGeophysicalNoDataValue(), maskValue); } return varImage; }
/** * Gets a geo-physical sample value at the given pixel coordinate as {@code float} value. * <p/> * <i>Note: This method does not belong to the public API. * It has been added by Norman (2011-08-09) in order to perform performance tests.</i> * * @param x pixel X coordinate * @param y pixel Y coordinate * @return The geo-physical sample value. */ public float getSampleFloat(int x, int y) { final PlanarImage image = getGeophysicalImage(); int tx = image.XToTileX(x); int ty = image.YToTileY(y); Raster tile = image.getTile(tx, ty); return tile.getSampleFloat(x, y, 0); }
/** * Gets a geo-physical sample value at the given pixel coordinate as {@code int} value. * <p/> * <i>Note: This method does not belong to the public API. * It has been added by Norman (2011-08-09) in order to perform performance tests.</i> * * @param x pixel X coordinate * @param y pixel Y coordinate * @return The geo-physical sample value. */ public int getSampleInt(int x, int y) { final PlanarImage image = getGeophysicalImage(); int tx = image.XToTileX(x); int ty = image.YToTileY(y); Raster tile = image.getTile(tx, ty); return tile.getSample(x, y, 0); }
static double getValue(RasterDataNode raster, int pixelX, int pixelY, int currentLevel) { final RenderedImage image = raster.getGeophysicalImage().getImage(currentLevel); final Rectangle pixelRect = new Rectangle(pixelX, pixelY, 1, 1); final Raster data = image.getData(pixelRect); final MultiLevelImage validMaskImage = raster.getValidMaskImage(); Raster validMaskData = null; if (validMaskImage != null) { final RenderedImage validMask = validMaskImage.getImage(currentLevel); validMaskData = validMask.getData(pixelRect); } final double value; if (validMaskData == null || validMaskData.getSample(pixelX, pixelY, 0) > 0) { value = data.getSampleDouble(pixelX, pixelY, 0); } else { value = Double.NaN; } return value; } }
@Override protected void renderLayer(Rendering rendering) { final MultiLevelImage winduMLI = windu.getGeophysicalImage(); final MultiLevelImage windvMLI = windv.getGeophysicalImage(); final Viewport vp = rendering.getViewport(); final int level = ImageLayer.getLevel(winduMLI.getModel(), vp);
intHistogram = filteredRasters[0].getGeophysicalImage().getSampleModel().getDataType() < DataBuffer.TYPE_FLOAT;
public void accumulate(RasterDataNode raster1, RasterDataNode raster2, RenderedImage roiImage, Shape roiShape, byte[] pixelValues, ProgressMonitor pm) { PlanarImage dataImage = raster1.getGeophysicalImage(); RenderedImage dataImage1 = raster1.getGeophysicalImage(); RenderedImage dataImage2 = raster2.getGeophysicalImage(); final SampleModel dataSampleModel1 = dataImage1.getSampleModel(); checkSampleModelForOneBand(dataSampleModel1);
if (sourceRaster.isScalingApplied()) { targetDataType = sourceRaster.getGeophysicalDataType(); sourceImage = sourceRaster.getGeophysicalImage(); } else { targetDataType = sourceRaster.getDataType();