рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдореВрд╡рд┐рдВрдЧ рдкрд┐рдХреНрдЪрд░реНрд╕ рдмрдирд╛рдПрдВ

рдЫрд╡рд┐

Habr├й рдкрд░ рдПрдХ рдЖрд▓реЗрдЦ рд╣реИ рдХрд┐ Microsoft рд╕реЗ рдореБрдлреНрдд рдХрд╛рд░реНрдпрдХреНрд░рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рд┐рдиреЗрдорд╛рдШрд░реЛрдВ рдХреЛ рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рдПред рдореБрдЭреЗ рдЗрд╕ рд╡рд┐рд╖рдп рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рдереА рдФрд░ рдореИрдВрдиреЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдВрдЧ рднрд╛рд╖рд╛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдЫреЛрдЯрд╛ рд╕реНрдХреЗрдЪ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рдХрд┐рд╕ рддрд░рд╣ рдХреА рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рднрд╛рд╖рд╛ рдпрд╣рд╛рдВ рдкрдврд╝реА рдЬрд╛ рд╕рдХрддреА рд╣реИ ред рдЗрд╕ рддрд░рд╣ рдХреА рдЪрд▓рддреА рд╣реБрдИ рддрд╕реНрд╡реАрд░реЗрдВ рдХрдИ рджрд╕рд┐рдпреЛрдВ рдлрд╝реНрд░реЗрдореЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реЛрддреА рд╣реИрдВ, рдЬрд┐рд╕рдореЗрдВ рдЕрдзрд┐рдХрд╛рдВрд╢ рдкрд┐рдХреНрд╕реЗрд▓ рдкрд╛рд░рджрд░реНрд╢реА рд╣реЛрддреЗ рд╣реИрдВред рд╕рднреА рдЫрд╡рд┐рдпреЛрдВ рдореЗрдВ, рдХреЗрд╡рд▓ рдПрдХ рдЪрд▓рддреА рд╡рд╕реНрддреБ рд╡рд╛рд▓реЗ рдХреНрд╖реЗрддреНрд░ рдЕрдкрд╛рд░рджрд░реНрд╢реА рд░рд╣рддреЗ рд╣реИрдВред рдкрд╣рд▓рд╛ рдлреНрд░реЗрдо рдкреВрд░реНрдг рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ рдкреГрд╖реНрдарднреВрдорд┐ рд╣реИред

рд╡рд╛рдВрдЫрд┐рдд рдПрдиреАрдореЗрд╢рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкреНрд░рддреНрдпреЗрдХ рдлреНрд░реЗрдо рдХреЗ рдЕрд▓реНрдлрд╛ рдЪреИрдирд▓ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдЪрд┐рддреНрд░реЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ, рдореИрдВрдиреЗ рдореЛрдордмрддреНрддреА рд╢реЙрдЯреНрд╕ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдиреЗ рдХреЗ рдмрд╛рдж, рд╕реНрдХреНрд░реАрди рдкрд░ рдХреЗрд╡рд▓ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдмреИрдХрдЧреНрд░рд╛рдЙрдВрдб рдлреНрд░реЗрдо рджрд┐рдЦрд╛рдИ рджреЗрдЧрд╛ред рдЙрд╕ рдЪрд┐рддреНрд░ рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВ рдЬрд╣рд╛рдБ рдЖрдк рдПрдиреАрдореЗрд╢рди рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдПрдиреАрдореЗрд╢рди рдХреЛ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрд╕ рдХреА рджрдмрд╛рдПрдВред "рдЖрдЙрдЯ" рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реНрдХреЗрдЪ рдХреЗ рд╕рд╛рде рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА, рдЗрд╕рдореЗрдВ рдЖрдЙрдЯрдкреБрдЯ рдПрдиреАрдореЗрд╢рди рдХреЗ рдлреНрд░реЗрдо рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдЕрдЧрд▓рд╛, рдЬрд┐рдореНрдк рдХреЛ рд▓реЛрдб рдХрд░реЗрдВ, рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдЫрд╡рд┐рдпреЛрдВ рдХреЛ рдкрд░рддреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдЦреЛрд▓реЗрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдПрдиреАрдореЗрд╢рди рдХреЗ рд░реВрдк рдореЗрдВ рдЬреАрдЖрдИрдПрдл рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╕рд╣реЗрдЬреЗрдВред рдпрд╣рд╛рдБ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЗ рд▓рд┐рдП рд╕реЛрд░реНрд╕ рдХреЛрдб рд╣реИред

// Zurbaganin // 2012 int nFrames =15; //   PImage[] imgs = new PImage[nFrames]; //   PImage brush=new PImage (63, 63, RGB);//      - void setup() { background(255); createBrush();//     - size(1024, 768, P3D);//   frameRate(25); //   for (int k = 0; k < imgs.length; k++) { String imgName = nf(k, 2) + ".png";//      imgs[k] = loadImage(imgName);//    imgs[k].format=ARGB;//   32-  } nullAlpha();////      } void draw() { int frame = frameCount % (nFrames);//           image(imgs[frame], 0, 0);//     } void createBrush() //      { for (int i = 0; i < brush.height; i++) { for (int j = 0; j < brush.width; j++) { float gr; float a=dist(brush.width/2, brush.height/2, j, i); gr=92*(1-a/dist(brush.width/4, brush.height/4, 0, 0)); brush.pixels[i*brush.width+j]=color(gr); } } } void mousePressed() //    . //         { if (mouseButton == LEFT) { for (int k = 1; k < imgs.length; k++) { for (int i = 0; i < brush.height; i++) { for (int j = 0; j < brush.width; j++) { int i1=mouseY-brush.height/2+i; int j1=mouseX-brush.height/2+j; float r=(int)red(imgs[k].pixels[i1*imgs[k].width+j1]); float g=(int)green(imgs[k].pixels[i1*imgs[k].width+j1]); float b=(int)blue(imgs[k].pixels[i1*imgs[k].width+j1]); float a=(int)alpha(imgs[k].pixels[i1*imgs[k].width+j1]); a=a+(int)red(brush.pixels[i*brush.width+j]); if (a>255) { a=255; } // float a=255; imgs[k].pixels[i1*imgs[k].width+j1]=color(r, g, b, a); } } } } } void nullAlpha()//      { for (int k = 1; k < imgs.length; k++) { for (int i = 0; i < imgs[k].height; i++) { for (int j = 0; j < imgs[k].width; j++) { float r=(int)red(imgs[k].pixels[i*imgs[k].width+j]); float g=(int)green(imgs[k].pixels[i*imgs[k].width+j]); float b=(int)blue(imgs[k].pixels[i*imgs[k].width+j]); float a=(int)alpha(imgs[k].pixels[i*imgs[k].width+j]); a=0;//     imgs[k].pixels[i*imgs[k].width+j]=color(r, g, b, a); } } } } void keyPressed() { if (key == 's' || key == 'S') {//      for (int k = 1; k < imgs.length; k++) { for (int i = 0; i < imgs[k].height; i++) { for (int j = 0; j < imgs[k].width; j++) { float r, g, b; float a=(int)alpha(imgs[k].pixels[i*imgs[k].width+j]); if (a==0) { r=(int)red(imgs[0].pixels[i*imgs[0].width+j]); g=(int)green(imgs[0].pixels[i*imgs[0].width+j]); b=(int)blue(imgs[0].pixels[i*imgs[0].width+j]); } else { r=(int)red(imgs[k].pixels[i*imgs[k].width+j]); g=(int)green(imgs[k].pixels[i*imgs[k].width+j]); b=(int)blue(imgs[k].pixels[i*imgs[k].width+j]); } a=255; // float a=255; imgs[k].pixels[i*imgs[k].width+j]=color(r, g, b, a); } } } for (int k = 0; k < imgs.length; k++) { imgs[k].save("/out/"+nf(k, 6)+".png"); } } } 


рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХреЛ рдареАрдХ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕реНрд░реЛрдд рдЫрд╡рд┐рдпреЛрдВ рдХреЛ 1024x768 рдкрд┐рдХреНрд╕реЗрд▓ рдХреЗ рдкреАрдПрдирдЬреА рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╕реНрдХреЗрдЪ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд▓реЗ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП: "01.png, 02.png ... **ред Png"ред NFrames рдкреИрд░рд╛рдореАрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреЛрдб рдореЗрдВ рдЕрдкрдиреА рдлрд╝реНрд░реЗрдореЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░реЗрдВред

рдпрд╣ рд╡реАрдбрд┐рдпреЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИред
рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг - рдореБрдлреНрдд рд╕реЙрдлреНрдЯрд╡реЗрдпрд░, рд╕реНрдерд╛рдкрдирд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рд▓рд┐рдирдХреНрд╕ рдФрд░ рд╡рд┐рдВрдбреЛрдЬ рдХреЗ рддрд╣рдд рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

Source: https://habr.com/ru/post/In140411/


All Articles