plasma.pde

来自「This is processing for java examples.」· PDE 代码 · 共 61 行

PDE
61
字号
/** * Plasma Demo Effect * by luis2048.  *  * Cycles of changing colours warped to give an illusion  * of liquid, organic movement.Colors are the sum of sine  * functions and various formulas. Based on formula by Robert Klep.  */int pixelSize=2;PGraphics pg;void setup(){  size(640, 360);  // Create buffered image for plasma effect  pg = createGraphics(160, 90, P2D);  colorMode(HSB);  noSmooth();}void draw(){  float  xc = 25;  // Enable this to control the speed of animation regardless of CPU power  // int timeDisplacement = millis()/30;  // This runs plasma as fast as your computer can handle  int timeDisplacement = frameCount;  // No need to do this math for every pixel  float calculation1 = sin( radians(timeDisplacement * 0.61655617));  float calculation2 = sin( radians(timeDisplacement * -3.6352262));    // Output into a buffered image for reuse  pg.beginDraw();  pg.loadPixels();  // Plasma algorithm  for (int x = 0; x < pg.width; x++, xc += pixelSize)  {    float  yc    = 25;    float s1 = 128 + 128 * sin(radians(xc) * calculation1 );    for (int y = 0; y < pg.height; y++, yc += pixelSize)    {      float s2 = 128 + 128 * sin(radians(yc) * calculation2 );      float s3 = 128 + 128 * sin(radians((xc + yc + timeDisplacement * 5) / 2));        float s  = (s1+ s2 + s3) / 3;      pg.pixels[x+y*pg.width] = color(s, 255 - s / 2.0, 255);    }  }     pg.updatePixels();  pg.endDraw();  // display the results  image(pg,0,0,width,height); }

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?