p5.jsでスライダー付きパターンを作る方法

皆さまごきげんよう。こちらも東京アラートが解除され、ようやく日常を取り戻しつつある今日この頃ですが、メディアを開けば何かと不安を掻き立てられるニュースで満ち満ちております。

しかし私はこのコロナ自粛で、コロナ後の生き方を考える時間を得たと思っております。今後リモートワークはデフォルトになり、5GでVR、ARが普及すれば遠隔での作業や接客なども可能になるでしょう。ヴァーチャルな世界では仕事は世界中で探せますし、年齢でやりたいことを諦めなくたっていいんです!そう考えると未来はワクワクでいっぱいです♪ 禍を転じて福と為す。この、時代の転換点を注視してまいりましょう。

さて、前置きが長くなりましたが今回はp5でジオメトリックパターンを作ってみましたよ。

左上にスライダーを設置して値の変更を簡単に出来るようにしてみました。

ちょっと小さくて見にくいんですけど、上からval(カーブの振り幅)、H(色相)、S(彩度)、B(明度)の値になりますので、それぞれ動かしてみてください。(CODEPENのロゴをクリックするとCODEPENのサイトに飛びますので、色々いじってみてください。)

See the Pen p5.js-sin-cosWave-pattern by kowalski k (@polkadotsandsky) on CodePen.

p5.jsでのスライダーの作り方

では、スライダー作成のポイントを色の部分を使って説名しますね♪

カラーモードは今回はHSB(HSL)Hue/Saturation/Brightness (or Lightness)にしました。

  • カラーモードを定義する 3行目
  • スライダーを定義する 20〜22行目
  • スライダーの値の範囲と初期値を設定する 6行目
  • スライダーの位置を設定する 7行目
  • スライダーの幅を設定する 8行目
  • スライダーの項目名を表示する 26〜28行目
  • backgroundの引数に変数を入れる 24行目

        ↓ ↓ ↓

function setup() {
  createCanvas(windowWidth, windowHeight);
  colorMode(HSB);
  
  // create sliders
  hSlider = createSlider(0, 360, 50);
  hSlider.position(20, 40);
  hSlider.style('width', '80px');
  
  sSlider = createSlider(0, 100, 50);
  sSlider.position(20, 70);
  sSlider.style('width', '80px');
  
  bSlider = createSlider(0, 100, 100);
  bSlider.position(20, 100);
  bSlider.style('width', '80px');
}

function draw(){
  var h = hSlider.value();
  var s = sSlider.value();
  var b = bSlider.value();
  
  background(h,s,b);
  
  text('H', 5, 50);
  text('S', 5, 80);
  text('B', 5, 110);
}

他にもsin・cosの波の高さを変えるスライダーを作ってみたり、stroke(線)を図形に変更してみたり、工夫次第で色んなパターンが作れそうです。

p5で作ったパターンで、オリジナルグッズを作ってみるのもいいですね!ジェネラティブ・アートTシャツなんていかがですか?(笑)

それでは皆さんもプログラミングで素敵なアートライフを〜(^^)/

コメントを残す