/** * Moves the view back (i.e. in the z-direction of the image plate) to the * specified distance. * * @param distance */ public void zoomTo(final double distance) { zDir.set(0, 0, 1); zDir.scale(distance); zoomXform.set(zDir); zoomTG.setTransform(zoomXform); univ.getViewer().getView().setBackClipDistance(5 * distance); univ.getViewer().getView().setFrontClipDistance(5 * distance / 100); transformChanged(BehaviorCallback.TRANSLATE, zoomXform); }
private Canvas3D getOffScreenCanvas() { if (offScreenCanvas3D != null) return offScreenCanvas3D; final GraphicsConfigTemplate3D templ = new GraphicsConfigTemplate3D(); templ.setDoubleBuffer(GraphicsConfigTemplate.UNNECESSARY); final GraphicsConfiguration gc = GraphicsEnvironment.getLocalGraphicsEnvironment() .getDefaultScreenDevice().getBestConfiguration(templ); offScreenCanvas3D = new Canvas3D(gc, true); final Screen3D sOn = canvas3D.getScreen3D(); final Screen3D sOff = offScreenCanvas3D.getScreen3D(); sOff.setSize(sOn.getSize()); sOff.setPhysicalScreenWidth(sOn.getPhysicalScreenWidth()); sOff.setPhysicalScreenHeight(sOn.getPhysicalScreenHeight()); universe.getViewer().getView().addCanvas3D(offScreenCanvas3D); return offScreenCanvas3D; }
sOff.setPhysicalScreenWidth(sOn.getPhysicalScreenWidth()); sOff.setPhysicalScreenHeight(sOn.getPhysicalScreenHeight()); getViewer().getView().addCanvas3D(offCanvas); bImage = offCanvas.getOffScreenBuffer().getImage(); getViewer().getView().removeCanvas3D(offCanvas); return new ImagePlus("Snapshot", bImage);
universe.getViewer().getView().removeCanvas3D(offScreenCanvas3D); offScreenCanvas3D = null; System.err.println("Java3D error: "
getViewer().getView().setProjectionPolicy(UniverseSettings.projection);