気まぐれ更新

processingを触ってみた

久々更新になります。

今日は授業の補助の関係でProcessingを使うことになったので、自分で簡単な図形描画のプログラムを書いてみました。

Processingとは

Processing(プロセシング)は、キャセイ・レアス(英語版)(Casey Reas)とベンジャミン・フライ(英語版)(Benjamin Fry)によるオープンソースプロジェクトであり、かつてはMITメディアラボで開発されていた。電子アートとビジュアルデザインのためのプログラミング言語であり、統合開発環境である。 視覚的なフィードバックが即座に得られるため、初心者がプログラミングを学習するのに適しており、電子スケッチブックの基盤としても利用できる。Java を単純化し、グラフィック機能に特化した言語といえる。

wikipediaより引用してきましたが、要はJavaをベースにした図形描画に特化したオープンソースプロジェクトです。

今回は、大きさと座標と色をランダムに50個表示してはクリアするという動作を繰り返すプログラムを書いてみました。

https://gyazo.com/b35fcc6898f927d28730ac5830b66443


int counter = 0;

void setup(){
  size(500, 500);
  frameRate(10);
  background(255);
  noStroke(); 
  smooth();
}

void draw(){
   fill(color(
      random(256), random(256), random(256), 60));
   int rand = (int)random(3);
   switch(rand){
     case 0:
       float ex = random(500);
       float ey = random(500);
       float r = random(100);
       ellipse(ex,ey,r,r);
       break;
     case 1:
       float tx1 = random(500);
       float ty1 = random(500);
       float tx2 = random(500);
       float ty2 = random(500);
       float tx3 = random(500);
       float ty3 = random(500);
       triangle(tx1, ty1, tx2, ty2, tx3, ty3);
       break;
     case 2:
       float rx = random(500);
       float ry = random(500);
       int w = (int)random(100);
       int h = (int)random(100);
       rect(rx, ry, w, h);
       break;
   }
   counter++;
   if(counter > 50){
     background(255);
     counter = 0;
   }
           
}

ハードと組み合わせると面白いかも