我只是试着用blendMode(差)使圆增长和反转;但是半径是不变的。
int radius = 15;
int radius2 = 15;
size(500, 500);
PGraphics pg = createGraphics(500, 500);
pg.beginDraw();
pg.background(255);
pg.blendMode(DIFFERENCE);
pg.fill(255);
pg.noStroke();
pg.ellipse(width/2, height/2, radius, radius);
pg.ellipse(width/2.25, height/2.25, radius2, radius2);
pg.ellipse(width/2.25, height/1.8, radius2, radius2);
pg.ellipse(width/1.8, height/2.25, radius2, radius2);
pg.ellipse(width/1.8, height/1.8, radius2, radius2);
radius++;
pg.endDraw();
background(255);
image(pg, 0, 0);发布于 2014-09-23 13:33:36
来自:https://github.com/processing/processing/wiki/Troubleshooting
如果你的代码有方法(不仅仅是在静态模式下)或者需要运行一段时间,那么它必须有一个
()方法,否则什么都不会发生。例如,如果没有绘图(),此代码将在setup()方法之后停止。
就这样。您需要将代码包装在draw()函数中。
这里有一个漂亮的“按钮”
int radius = 15;
int radius2 = 15;
PGraphics pg ;
void setup() {
size(500, 500);
pg = createGraphics(500, 500);
}
void draw() {
pg.beginDraw();
pg.background(255);
pg.blendMode(DIFFERENCE);
pg.fill(255);
pg.noStroke();
pg.ellipse(width/2, height/2, radius, radius);
pg.ellipse(width/2.25, height/2.25, radius2, radius2);
pg.ellipse(width/2.25, height/1.8, radius2, radius2);
pg.ellipse(width/1.8, height/2.25, radius2, radius2);
pg.ellipse(width/1.8, height/1.8, radius2, radius2);
radius++;
pg.endDraw();
background(255);
image(pg, 0, 0);
}https://stackoverflow.com/questions/25980453
复制相似问题