static RenderedImage createImage(ProductSceneView view, boolean fullScene, Dimension dimension, boolean alphaChannel, boolean geoReferenced) { final int imageType = alphaChannel ? BufferedImage.TYPE_4BYTE_ABGR : BufferedImage.TYPE_3BYTE_BGR; final BufferedImage bufferedImage = new BufferedImage(dimension.width, dimension.height, imageType); final BufferedImageRendering imageRendering = createRendering(view, fullScene, geoReferenced, bufferedImage); if (!alphaChannel) { final Graphics2D graphics = imageRendering.getGraphics(); graphics.setColor(view.getLayerCanvas().getBackground()); graphics.fillRect(0, 0, dimension.width, dimension.height); } view.getRootLayer().render(imageRendering); return bufferedImage; }
static RenderedImage createImage(ProductSceneView view, boolean fullScene, Dimension dimension, boolean alphaChannel, boolean geoReferenced) { final int imageType = alphaChannel ? BufferedImage.TYPE_4BYTE_ABGR : BufferedImage.TYPE_3BYTE_BGR; final BufferedImage bufferedImage = new BufferedImage(dimension.width, dimension.height, imageType); final BufferedImageRendering imageRendering = createRendering(view, fullScene, geoReferenced, bufferedImage); if (!alphaChannel) { final Graphics2D graphics = imageRendering.getGraphics(); graphics.setColor(view.getLayerCanvas().getBackground()); graphics.fillRect(0, 0, dimension.width, dimension.height); } view.getRootLayer().render(imageRendering); return bufferedImage; }
private void setCurrentView(ProductSceneView newView) { if (currentView == newView) { return; } if (currentView != null) { currentView.removePixelPositionListener(pixelPosListener); removeMouseWheelListener(); if (timeSeries != null) { timeSeries.removeTimeSeriesListener(timeSeriesMatrixTSL); } } currentView = newView; if (isTimeSeriesView(currentView)) { currentView.addPixelPositionListener(pixelPosListener); timeSeries = TimeSeriesMapper.getInstance().getTimeSeries(currentView.getProduct()); timeSeries.addTimeSeriesListener(timeSeriesMatrixTSL); addMouseWheelListener(); final RasterDataNode raster = currentView.getRaster(); if (raster instanceof Band) { matrixModel.setBand((Band) raster); matrixModel.setMatrixSize((Integer) matrixSizeSpinner.getValue()); matrixCellRenderer.setInvalidColor(currentView.getLayerCanvas().getBackground()); updateDateLabel((Band) currentView.getRaster()); } } else { timeSeries = null; matrixModel.setMatrixSize(0); } }