public DisplayPanel(DrawComponent dc) { super(); this.dc = dc; // setDebug(false, true); dc.clearBounds(); Rectangle dcBounds = new Rectangle(dc.getBounds()); AffineTransform at = new AffineTransform(); at.translate(-dcBounds.x, -dcBounds.y); if (debugBounds) { logger.debug("init dcBounds " + dcBounds); // $NON-NLS-1$ logger.debug("translateX = " + (-dcBounds.x)); // $NON-NLS-1$ logger.debug("translateY = " + (-dcBounds.y)); // $NON-NLS-1$ } dc.transform(at); dc.clearBounds(); if (debugBounds) logger.debug("translated dcBounds = " + dc.getBounds()); // $NON-NLS-1$ dcBounds = GeomUtil.translateToOriginAndAdjustSize(dc.getBounds()); // dcBounds = GeomUtil.translateToOrigin(dc.getBounds()); if (debugBounds) logger.debug("translateToOriginAndAdjustSize dcBounds = " + dcBounds); // $NON-NLS-1$ setBackground(bgColor); renderingHintsManager.setRenderMode(RenderingHintsManager.RENDER_MODE_QUALITY); init(dcBounds); }