/** * Gets all rasters of this view. * * @return all rasters of this view, array size is either 1 or 3 (RGB) */ public RasterDataNode[] getRasters() { return getSceneImage().getRasters(); }
/** * Gets the product raster of a single banded view. * * @return the product raster, or <code>null</code> if this is a 3-banded RGB view */ public RasterDataNode getRaster() { return getSceneImage().getRasters()[0]; }
/** * Gets the number of raster datasets. * * @return the number of raster datasets, always <code>1</code> for single banded palette images or <code>3</code> * for RGB images */ public int getNumRasters() { return getSceneImage().getRasters().length; }
/** * Gets the product raster with the specified index. * * @param index the zero-based product raster index * * @return the product raster with the given index */ public RasterDataNode getRaster(int index) { return getSceneImage().getRasters()[index]; }
public boolean isRGB() { return getSceneImage().getRasters().length >= 3; }
for (int i = 0; i < getSceneImage().getRasters().length; i++) { final RasterDataNode raster = getSceneImage().getRasters()[i]; if (raster instanceof RGBChannel) { RGBChannel rgbChannel = (RGBChannel) raster; rgbChannel.dispose(); getSceneImage().getRasters()[i] = null;
private Layer createBaseImageLayer() { final Layer layer; if (getRasters().length == 1) { final RasterImageLayerType type = LayerTypeRegistry.getLayerType(RasterImageLayerType.class); layer = type.createLayer(getRaster(), bandImageMultiLevelSource); } else { final RgbImageLayerType type = LayerTypeRegistry.getLayerType(RgbImageLayerType.class); layer = type.createLayer(getRasters(), bandImageMultiLevelSource); } layer.setName(getName()); layer.setVisible(true); layer.setId(ProductSceneView.BASE_IMAGE_LAYER_ID); setBaseImageLayerStyle(configuration, layer); return layer; }