/** * Gets the product raster of a single banded view. * * @return the product raster, in case of a 3-banded RGB view it returns the first raster. * * @see #isRGB() */ public RasterDataNode getRaster() { return getSceneImage().getRasters()[0]; }
/** * 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 number of raster datasets. * * @return the number of raster datasets, always {@code 1} for single banded palette images or {@code 3} * 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 String getSceneName() { return getSceneImage().getName(); }
private Layer getNoDataLayer(boolean create) { return getSceneImage().getNoDataLayer(create); }
private Layer getGcpLayer(boolean create) { return getSceneImage().getGcpLayer(create); }
public boolean isRGB() { return getSceneImage().getRasters().length >= 3; }
private GraticuleLayer getGraticuleLayer(boolean create) { return getSceneImage().getGraticuleLayer(create); }
private Layer getPinLayer(boolean create) { return getSceneImage().getPinLayer(create); }
public ImageInfo getImageInfo() { return getSceneImage().getImageInfo(); }
public void setRasters(RasterDataNode[] rasters) { getSceneImage().setRasters(rasters); }
public ImageLayer getBaseImageLayer() { return getSceneImage().getBaseImageLayer(); }
public Layer getVectorDataCollectionLayer(boolean create) { return getSceneImage().getVectorDataCollectionLayer(create); }
private Layer getMaskCollectionLayer(boolean create) { return getSceneImage().getMaskCollectionLayer(create); }
/** * Creates a new scene image for an existing view. * * @param raster The product raster. * @param view An existing view. */ public ProductSceneImage(RasterDataNode raster, ProductSceneView view) { this(raster.getDisplayName(), new RasterDataNode[]{raster}, view.getSceneImage().getConfiguration()); coloredBandImageMultiLevelSource = view.getSceneImage().getColoredBandImageMultiLevelSource(); initRootLayer(); }
public void disposeLayers() { getSceneImage().getRootLayer().dispose(); }
public void setImageInfo(ImageInfo imageInfo) { final ImageInfo oldImageInfo = getImageInfo(); getSceneImage().setImageInfo(imageInfo); updateImage(); firePropertyChange(PROPERTY_NAME_IMAGE_INFO, oldImageInfo, imageInfo); }
public void productSceneViewSelected(@NonNull ProductSceneView selectedSceneView) { selectedSceneView.addPropertyChangeListener(ProductSceneView.PROPERTY_NAME_IMAGE_INFO, this.imageInfoChangeListener); BrightnessContrastData brightnessContrastData = this.visibleProductScenes.get(selectedSceneView); if (brightnessContrastData == null) { RasterDataNode[] rasterDataNodes = selectedSceneView.getSceneImage().getRasters(); ImageInfo initialImageInfo = selectedSceneView.getImageInfo().clone(); brightnessContrastData = new BrightnessContrastData(initialImageInfo); for (int i=0; i<rasterDataNodes.length; i++) { ImageInfo nodeImageInfo = rasterDataNodes[i].getImageInfo().clone(); brightnessContrastData.putImageInfo(rasterDataNodes[i], nodeImageInfo); } this.visibleProductScenes.put(selectedSceneView, brightnessContrastData); } RGBChannelDef initialRGBChannelDef = brightnessContrastData.getInitialImageInfo().getRgbChannelDef(); boolean enableSaturationPanel = (initialRGBChannelDef != null); this.saturationPanel.setEnabled(enableSaturationPanel); refreshSliderValues(brightnessContrastData); }
public void testDispose() { final ProductSceneView view = new ProductSceneView(new ProductSceneImage(r, new DefaultPropertyMap(), ProgressMonitor.NULL)); view.dispose(); assertNull(view.getSceneImage()); }