【作品No.35】画像の色を読み取って三角形で表示する【Processing 2025年2月16日】

【作品No.35】画像の色を読み取って三角形で表示する【Processing 2025年2月16日】
  • URLをコピーしました!

この記事を書いた人

クリエイティブコーダー Watataku のプロフィール写真
ワタタク(Watataku)

上達の研究家 / アーティスト

「才能」ではなく「発見」で描く。文系・36歳からの上達ハック。

  • ゼロから独学でクリエイティブコーディングに挑戦し、以下の実績を達成
    • 開始1年8ヶ月目までに公募6つに挑戦し、3つ入選(勝率50%)
      • KITTE大阪の18メートルあるAxCROSS大型スクリーン
      • 虎ノ門ヒルズステーションタワーB2F TOKYO NODE エントランスサイネージで展示
      • UN:O(東京大手町)にある会員限定のサテライトオフィスにて2作品常設展示
    • 開始1年9ヶ月目に、虎ノ門ヒルズ49階、地上250mのインフィニティプールへ作品提供・展示
  • 【上達の秘密】
目次

作品の画像とコード

【作品No.35】画像の色を読み取って三角形で表示する【Processing 2025年2月16日】

アニメーション。

// 参考にさせていただいたページとURL
// 第6回: 画像の分析・再合成 (画像データ、ピクセル、ラスタ画像)
// https://yoppa.org/geidai_media1_18/8916.html

PImage img;

void setup() {
  size(1000, 1000);
  img = loadImage("179, Landscape, Spain, Arcasal de fuan.jpg");
  img.resize(width, height); 
  background(0);
}

void draw() {
  noStroke();
  for (int i = 0; i < 10000; i++) {
    PVector location = new PVector(random(width), random(height));
    color col = img.get(int(location.x), int(location.y));
    fill(col, 127);
    float brightness = red(col) + green(col) + blue(col);
    float size = map(brightness, 0, 255 * 3, 0, 60); // サイズの最大値を60に設定
    drawTriangle(location.x, location.y, size);
  }

}

void drawTriangle(float x, float y, float s) {
  beginShape();
  vertex(x, y - s / 2);
  vertex(x - s / 2, y + s / 2);
  vertex(x + s / 2, y + s / 2);
  endShape(CLOSE);
}
ワタタク

それでは今日もレッツワクワクコーディング。

ワタタク(Watataku)
上達の研究家 / アーティスト
独学1年9ヶ月で虎ノ門ヒルズ49階、地上250mのインフィニティプールへ作品提供・展示

言葉×コード×手書き。三位一体の表現が成長する過程の記録

【発信】クリエイティブコーディング(2024.3~) / 絵(2025.11~) / モレスキン / 思考法 / 生き方

▼運営者について
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次