我创建了一个GUI应用程序(使用Netbeans),它演示了四个仿射变换即。翻译,旋转,剪切,缩放。现在应用程序工作,如果我在图像上应用一个变换,比如旋转,然后选择另一个变换,图像将重置为其原始状态。
我的问题是:如何转换已经转换过的图像? 例如:如果我旋转图像然后如果我想缩放相同的旋转图像,我现在无法这样做。当我选择另一个转换时,图像会重置为原始状态。
我已经提供了一个RESET按钮,以防用户决定转到图像的原始状态。
我发现的一种方法是将变换后的图像存储在BufferedImage对象中,并将其用于其他变换中作为输入BufferedImage。
但我发现它占用了大量的内存,而且经常出现了错误的错误。它可能是由于使用了getShearInstance()
和getTranslateInstance()
等具有性能问题的方法。
该计划的源代码位于 HERE
考虑到它的大尺寸,我没有在这里写。对不起,Coud没有创建SSCE。