public SelectionRenderer(Canvas mainCanvas) { setOpaque(false); VBoxLayout layout = new VBoxLayout(this, VBoxLayout.LINE_AXIS); setLayout(layout); imageType = new BufferedImageType(); imageType.setMainCanvas(mainCanvas); imageType.setValueOptions("width=320;height=240"); imageType.setValueName(""); add(imageType); setImage(); }
public void setImage() { BufferedImage image = ImageUtils.createCompatibleImage(300, 300); Graphics2D g2 = image.createGraphics(); g2.setColor(Color.green); float thickness = 5; g2.setStroke(new BasicStroke(thickness)); int centerX = image.getWidth() / 2; int centerY = image.getHeight() / 2; int x = (int) (centerX + thickness / 2 - 30); int y = (int) (centerY + thickness / 2 - 30); int width = (int) (2 * 30 - thickness / 2 - 1); int height = (int) (2 * 30 - thickness / 2 - 1); g2.drawOval(x, y, width, height); g2.dispose(); imageType.setValue(image); }