I'm working on a type of image editor which includes snapping to other elements as a feature. The snapping works by using the image width and height.

However, after an AffineTransform.rotate() the image width and height are no longer the actual bounds of the rendered image and thus the snapping fails.

What's the best way of determining the width and height of the rectangular area that encompasses the rotated image?

有帮助吗?

解决方案

For int:

affineTransform.createTransformedShape(new Rectangle(width, height))
        .getBounds();

For double:

affineTransform.createTransformedShape(
        new Rectangle2D.Double(width, height)).getBounds2D();
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top