在PImage的顶部添加形状

时间:2019-03-12 23:48:06

标签: processing

我目前正在制作与Microsoft Paint等类似的应用程序,尽管由于缺乏知识我遇到了一个小问题。

我目前正在尝试允许用户在已加载的图像(PImage)上绘制图像,例如:

ellipse(p.x,p.y,radius,radius);

这可以很好地工作,并且如果图像被加载然后单独放置,则所有椭圆都被绘制;但是,由于我不断使用draw()加载图像,就好像从未对用户制作椭圆。

有没有办法将此椭圆附加到背景PImage上,以便用户可见?只是在背景或其他物体上创建椭圆形?

很抱歉,这可能很简单,但是我无法通过给定的语言文档找到很多有关它的信息。任何帮助表示赞赏,谢谢。

1 个答案:

答案 0 :(得分:1)

有几种方法可以解决这个问题。

通过setup()函数只能绘制一次图像。

您可以将所有形状绘制到PGraphics上,这有点像可以绘制的图像。然后在绘制图像后将PGraphics绘制到屏幕上。 createGraphics()函数在这里可能会派上用场。

或者,您可以维护一个包含所有形状的数据结构,并对其进行迭代并在每帧中绘制它们。如果您要支持撤消按钮,这将很有用。