我在背景图像上绘制一个透明的渲染图像,然后显示在JPanel上。
我需要在缩放和旋转后获取渲染图像的边界。 所以,下次我打电话给重绘它可以 渲染图像的剪辑。
有什么想法吗?谢谢你的帮助。
@Override public void paintComponent(java.awt.Graphics g)
{
if(g != null)
{
g.drawImage(backgroundImage, 0, 0, getWidth(), getHeight(), null);
Graphics2D g2 = (Graphics2D)g.create();
double cx = sprite.getWidth() / 2.0;
double cy = sprite.getHeight() / 2.0;
AffineTransform at = AffineTransform.getTranslateInstance(xPos, yPos);
at.concatenate(AffineTransform.getScaleInstance(scale, scale));
at.rotate(theta, cx, cy);
g2.drawRenderedImage(sprite, at);
//get width and height of rendered image here?
g2.dispose();
}
答案 0 :(得分:0)
像
这样的东西Rectangle resizedBounds = at.createTransformedShape(sprite.getBounds()).getBounds();