【作品No.26】リサジュー曲線たち【p5.js 2025年1月26日】

【作品No.26】リサジュー曲線たち【p5.js 2025年1月26日】
  • URLをコピーしました!

この記事を書いた人

ワタタク(Watataku)
  • クリエイティブコーダー / アーティスト
  • 「人の心に寄り添う、機能するアート」を探究しています
  • アートとテクノロジーが、社会や個人のウェルビーイングにどう貢献できるかに、関心があります

目次

作品の画像とコード

【作品No.26】リサジュー曲線たち【p5.js 2025年1月26日】
// 普及版 ジェネラティブ・アート Processingによる実践ガイド
// 124Pの数式を関数に投げ入れてみて(後略)という言葉を実践して作成

let a = 5;
let b = 4;
let delta = Math.PI / 4; //2の数値も好き
let noiseOffsetX = 1000; //0の数値も好き
let noiseOffsetY = 1000;

function setup() {
  createCanvas(600, 600);
  background(255);
  stroke(0);
  noFill();
  
  let numCurves = 10;
  let spacing = width / numCurves;
  
  for (let i = 0; i < numCurves; i++) {
    for (let j = 0; j < numCurves; j++) {
      let xOffset = i * spacing;
      let yOffset = j * spacing;
      drawLissajousCurve(xOffset, yOffset, spacing / 2);
    }
  }
}

function drawLissajousCurve(xOffset, yOffset, size) {
  push();
  translate(xOffset + size, yOffset + size);
  beginShape();
  for (let t = 0; t <= TWO_PI; t += 0.01) {
    let x = size * cos(a * t + delta) * noise(noiseOffsetX);
    let y = size * sin(b * t) * noise(noiseOffsetY);
    vertex(x, y);
    noiseOffsetX += 0.01;
    noiseOffsetY += 0.01;
  }
  endShape();
  pop();
}

作った感想

リサジュー曲線とノイズと繰り返しを組み合わせた表現。

けっこう好きですね。

色をつけてみたりしたんですけど、最近POPな作品をつくることが多かったのでシンプルに白黒でやってみました。

今回の作品をつくるきっかけになった[普及版]ジェネラティブ・アートの本の表紙も白黒の作品でしたし、そこに合わせてもみました。

ワタタク

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

ワタタク(Watataku)
クリエイティブコーダー/アーティスト
AIと共に、「人の心に寄り添う、機能するアート」を探究しています。

ここは、その思索と創造の全記録を記す、思考の実験室(アトリエ)です。

僕の創作の源泉は、人生経験そのものです。
不当な出来事や、精神的な支配の中で、私の心は何度も粉々に砕け散りました。しかし、その一つ一つの破片をどのようにすれば鮮やかな絵の具にできるかを考え、ゆっくり心のパレットに色を整えていきました。その、長い、長い、自身との対話の果てに「人の役に立つアートを作りたい」という考え方にたどり着きました。

かつて、僕の武器は、アコースティックギター弾き語りと、カメラでした。
オリジナルソングの演奏でお客様投票1位となった「物語の力」。
世界20カ国の旅で培った、多様な「視点」。

今、僕は、それら全ての経験を、「コード」という、新しい言語で、世界に問いかけています。

このブログでは、作品の制作過程や、日々の発見、そして、僕自身の上達の軌跡を記録していきます。

僕の旅が、あなたの日常を、ほんの少しでも豊かにするための、光になることを願って。

クリエイティブコーディングロード運営者 ワタタク
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次