/** * Update the view cache associated with this view. Also, shapshot * the per-screen parameters associated with all screens attached * to this view. */ final void updateViewCache() { synchronized(this) { viewCache.snapshot(); viewCache.computeDerivedData(); } // Just take the brute force approach and snapshot the // parameters for each screen attached to each canvas. We won't // worry about whether a screen is cached more than once. // Eventually, dirty bits will take care of this. synchronized (canvasList) { int i = canvases.size()-1; while (i>=0) { Screen3D scr = canvases.elementAt(i--).getScreen3D(); if (scr != null) scr.updateViewCache(); } } }
Screen3D s3d = c3d.getScreen3D() ;
Screen3D sOff = canvas3D.getScreen3D(); sOff.setSize(new Dimension(200, 200)); sOff.setPhysicalScreenWidth(1);
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; }
Screen3D screen = canvases[i].getScreen3D();
System.out.println("construct canvas"); final Screen3D sOn = onCanvas.getScreen3D(); final Screen3D sOff = offCanvas.getScreen3D(); sOff.setSize(sOn.getSize()); sOff.setPhysicalScreenWidth(sOn.getPhysicalScreenWidth());