public MprView(ImageViewerEventManager<DicomImageElement> eventManager) { super(eventManager); this.sliceOrientation = SliceOrientation.AXIAL; infoLayer.setDisplayPreferencesValue(LayerAnnotation.PRELOADING_BAR, false); // Remove PR and KO buttons getViewButtons().clear(); }
for (ViewCanvas<ImageElement> v : views) { LayerAnnotation layer = v.getInfoLayer(); if (layer != null && layer.setDisplayPreferencesValue(selObject.toString(), selected)) { v.getJComponent().repaint();
public ExportImage(ViewCanvas<E> view2d) { super(view2d.getEventManager(), null); this.view2d = view2d; // Remove OpEventListener to avoid reseting some parameters when setting the series this.imageLayer.removeEventListener(imageLayer.getDisplayOpManager()); setFont(FontTools.getFont8()); this.infoLayer = view2d.getInfoLayer().getLayerCopy(this); infoLayer.setVisible(view2d.getInfoLayer().getVisible()); infoLayer.setShowBottomScale(false); // For exporting view, remove Pixel value, Preloading bar, Key Object infoLayer.setDisplayPreferencesValue(LayerAnnotation.PIXEL, false); infoLayer.setDisplayPreferencesValue(LayerAnnotation.PRELOADING_BAR, false); // Copy image operations from view2d SimpleOpManager operations = imageLayer.getDisplayOpManager(); for (ImageOpNode op : view2d.getImageLayer().getDisplayOpManager().getOperations()) { operations.addImageOperationAction(op.copy()); } // Copy the current values of image operations view2d.copyActionWState(actionsInView); setPreferredSize(new Dimension(1024, 1024)); ViewModel model = view2d.getViewModel(); Rectangle2D canvas = new Rectangle2D.Double(0, 0, view2d.getJComponent().getWidth(), view2d.getJComponent().getHeight()); actionsInView.put("origin.image.bound", canvas); //$NON-NLS-1$ actionsInView.put("origin.zoom", view2d.getActionValue(ActionW.ZOOM.cmd())); //$NON-NLS-1$ actionsInView.put("origin.center.offset", new Point2D.Double(model.getModelOffsetX(), model.getModelOffsetY())); //$NON-NLS-1$ // Do not use setSeries() because the view will be reset this.series = view2d.getSeries(); setImage(view2d.getImage()); }
LayerAnnotation layer = v.getInfoLayer(); if (layer != null) { if (layer.setDisplayPreferencesValue(selObject.toString(), selected)) { v.getJComponent().repaint();
if (layer != null) { layer.setVisible(true); if (layer.setDisplayPreferencesValue(LayerAnnotation.MIN_ANNOTATIONS, true)) { v.getJComponent().repaint();
private static RenderedImage createComponentImage(DefaultView2d canvas) { BufferedImage img = new BufferedImage(canvas.getWidth(), canvas.getHeight(), BufferedImage.TYPE_INT_BGR); ExportImage<ImageElement> exportImage = new ExportImage<>(canvas); try { exportImage.getInfoLayer().setDisplayPreferencesValue(LayerAnnotation.ANONYM_ANNOTATIONS, true); exportImage.getInfoLayer().setBorder(3); Graphics2D g = img.createGraphics(); if (g != null) { ViewModel originViewModel = canvas.getViewModel(); ViewModel viewModel = exportImage.getViewModel(); final Rectangle modelArea = exportImage.getImageBounds(exportImage.getImage()); ((DefaultViewModel) viewModel).adjustMinViewScaleFromImage(modelArea.width, modelArea.height); viewModel.setModelArea(originViewModel.getModelArea()); viewModel.setModelOffset(originViewModel.getModelOffsetX(), originViewModel.getModelOffsetY(), originViewModel.getViewScale()); exportImage.setBounds(canvas.getX(), canvas.getY(), canvas.getWidth(), canvas.getHeight()); boolean wasBuffered = ImagePrint.disableDoubleBuffering(exportImage); exportImage.zoom(originViewModel.getViewScale()); exportImage.draw(g); ImagePrint.restoreDoubleBuffering(exportImage, wasBuffered); g.dispose(); } } finally { exportImage.disposeView(); } return img; }