【p5.js】genuary2025.1.19 Op Art.【作品No.22】

【p5.js】genuary2025.1.19 Op Art.【作品No.22】
  • URLをコピーしました!

この記事を書いた人

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

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

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

目次

作品の画像とコード

【p5.js】genuary2025.1.19 Op Art.【作品No.22】

アニメーション。

function setup() {
  createCanvas(800, 800);
  noFill();
  textSize(300);
  textAlign(CENTER, CENTER);
}

function draw() {
  background(255);

  fill(0);
  text("OP", width / 2, height / 2 - 140);
  text("ART", width / 2, height / 2 + 140);

  translate(width / 2, height / 2);

  strokeWeight(3);
  drawPattern();
}

function drawPattern() {
  var w = width - 100;
  var h = height - 100;

  for (var i = -w / 2; i < w / 2; i += 10) {
    for (var j = -h / 2; j < h / 2; j += 10) {
      strokeWeight(2 + (i + j) % 4); 
      stroke(random(255), random(255), random(255));
      line(i, j, i + 5, j + 5); 
    }
  }
}

剰余演算子を使用

太さが変わる理由は、strokeWeight(2 + (i + j) % 4); という行にあります。この行では、線の太さを 2 + (i + j) % 4 で設定しています。具体的には、以下のように計算されます:

  1. ij の値を足し合わせます。
  2. その合計に対して 4 を割った余り(% は剰余演算子)を求めます。
  3. その結果に 2 を足して、線の太さとして設定します。

例えば、i = 10j = 20 の場合:

  • i + j = 30
  • 30 % 4 = 2
  • 2 + 2 = 4

このようにして、線の太さが 2 から 5 まで変化。線がランダムに太くなったり細くなったりする効果が生まれます。

この処理により、視覚的に興味深いパターンが作られ、Op Artの特徴である動きや振動感を表現している。

作った感想

OP ARTのことを知りました。

いろんな表現があるんですね。

ワタタク

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

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

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

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

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