处理 - 将多个图像旋转不同的量

Processing - rotate multiple images by different amounts

我正在使用 Processing 的 rotate 函数。

我有一个基本图像,然后使用 image() 我在上面叠加了两个更小的图像。

我想将 image1 旋转 x 度,将 image2 旋转 y 度,但 rotate 似乎只能同时旋转两者。

有办法解决这个问题吗?我想到了添加+旋转图像 1,保存文件,然后在新文件之上添加+旋转图像 2,但更喜欢更有效的方法。

您绝对可以将图像旋转不同的量,而无需执行保存任何文件的额外步骤。

第一步:首先,你需要translate()到图片的中心。如果它们的大小都相同,那很容易,否则在绘制每张图像之前,您必须 translate() 到每个中心。

第 2 步: 然后 rotate() 无论您想要多少图像。

第 3 步:最后,绘制图像。

对每个图像重复该过程,它应该可以正常工作。但请记住 translate()rotate() 调用堆栈,因此如果您调用 rotate(10) 然后调用 rotate(15),这就像调用 rotate(25)。为避免这种情况,您可以使用 pushMatrix()popMatrix() 函数。一如既往,the Processing reference 是你最好的朋友。

如果您仍然遇到困难,请 post 和 MCVE 我们将从那里开始。祝你好运。