int stageWidth_int = 566; int stageHeight_int = 400; int warmNum_int = 20; float setting_v; float setting_raRange; Warm[] warms_ar = new Warm[20]; void setup(){ size(566,400); loop(); for(int i=0; iwidth)? 0: x; y = (y<0)? height: y; y = (y>height)? 0: y; ra = ra*0.9 + random(-raRange,raRange); rv = rv * 0.99 + ra; r += rv; stroke(color(colR, colG, colB)); //point(x,y); draw(); } void setV(float v){ this.v = v; } void setRARange(float rar){ this.raRange = rar; } void setPos(float x, float y){ this.x = x; this.y = y; } void draw(){ /* for(int xx=-1; xx<1; xx++){ for(int yy=-1; yy<1; yy++){ float d = dist(0,0,xx,yy); if(d!=0){ addPixel(int(x+xx), int(y+yy), color(colR/d, colG/d, colB/d)); } } }*/ addPixel(int(x), int(y), color(colR, colG, colB)); } //additive color method() void addPixel(int x, int y, color col){ if (x<0 || x>width-1) return; if (y<0 || y>height-1) return; color crntCol = get(x, y); int crntr = crntCol>>16 &0xff; int crntg = crntCol>>8 &0xff; int crntb = crntCol &0xff; int newr = col>>16 &0xff; int newg = col>>8 &0xff; int newb = col&0xff; int setr = int(constrain((crntr + newr)*0.8, 0, 255)); int setg = int(constrain((crntb + newb)*0.8, 0, 255)); int setb = int(constrain((crntg + newg)*0.8, 0, 255)); set(x,y, color(setr,setg,setb)); //pixels[5] = color(255,255,255); } }