gainer mini + processingでLEDアレイを加算するプログラムを作成しました。

少し前にフィジカルコンピューティングに興味を持ったので、自分への投資だ!と思ってgainer miniを買って電子回路を組んでました。

flashやprocessing,ruby,python等からもLEDを光らせたり、マトリクスLEDで文字列を表示する事等が出来るので、webアプリケーション+αの分野で注目しています。


『機械はどれだけ人間に近づけるのか』
〜第2回 チームラボアルゴリズムコンテスト〜
http://www.team-lab.com/news/index.php?itemid=469

このアルゴリズムコンテストもウェブアプリケーションだけではなく、gainer等を使用したフィジカルコンピューティングがエントリーされたら面白いなあと思いました。


下記がブログタイトルのサンプルコードです。
gainer miniに付属しているボタンを押す毎にLEDアレイの数字が+1します。

/**
 * Japanese Design 
 * by Camelmasa. 
 * 
 * camelmasa's technology Blog http://d.hatena.ne.jp/camelmasa/
 * camelmasa's technology Blog(English):http://camelmasa.com/
 */
import processing.gainer.*;

Gainer gainer;

int[] figure = { 63, 12, 91, 94, 108, 118, 119, 28, 127, 124 };
int i=0;
int s=1;

void setup(){
  size(200,200);
  background(0);
  gainer = new Gainer(this, Gainer.MODE6);
}

void draw(){
  if(gainer.buttonPressed){
    gainer.digitalOutput(figure[i]);
    s=0;
  } else if(s == 0) {
    if(i > 8){
      i = 0;
    } else {
      i++;
    }
    s=1;
  }
}


追記

ソースを少し変更して、動画で保存しました。




/**
 * Japanese Design 
 * by Camelmasa. 
 * 
 * camelmasa's technology Blog http://d.hatena.ne.jp/camelmasa/
 * camelmasa's technology Blog(English):http://camelmasa.com/
 */
import processing.gainer.*;

Gainer gainer;

int[] figure = { 63, 12, 91, 94, 108, 118, 119, 28, 127, 124 };
int i=0;
int s=0;

void setup(){
  gainer = new Gainer(this, Gainer.MODE6);
  gainer.digitalOutput(figure[i]);
}

void draw(){
  if(gainer.buttonPressed){
    gainer.digitalOutput(figure[i]);
    s=0;
  } else if(s == 0) {
    if(i > 8){
      i = 0;
    } else {
      i++;
    }
    s=1;
  }
}

初めてYouTubeに動画をアップロードしました!簡単ですねー。



[PR]Spreeの情報を集めています。

ECを持ちたい方、仕事でECを使いたい方向けのコミュニティサイトです。
このサイトでは世界で最も使用されているECの1つであるSpreeについての情報を提供しています。
http://spreecommerce.jp/