eqs

Processingなどで絵やアニメーション描いたり,旅先で写真撮ってます. 技術ブロ…

eqs

Processingなどで絵やアニメーション描いたり,旅先で写真撮ってます. 技術ブログ:https://eqseqs.hatenablog.com/ GitHub: eqs

マガジン

  • Generative Art

    絵です

  • 写真

    写真です

最近の記事

Generative Art #15

final int N = 100;final int MAX_TRIAL = 1000;int[] nPetalsList;Flower[] flowerList;void setup() { size(800, 800); nPetalsList = new int[] {3, 4, 5, 6}; initFlowerList(); noLoop();}void initFlowerList() { flowerList = new Flower[200]; fo

    • Generative Art #14

      前作をベースにクローバーっぽくした final int N = 100;final int MAX_TRIAL = 1000;int[] nPetalsList;Flower[] flowerList;void setup() { size(800, 800); nPetalsList = new int[] {3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 4, 4, 5}; initFlowerList(

      • Generative Art #13

        前に描いた花の絵の派生.Generative artはコードの微修正だけで全然違う雰囲気の絵にできるので忙しい中でも続けやすいと思った.でもそろそろ新しいアルゴリズムのネタがほしい…. final int N = 100;final int MAX_TRIAL = 1000;int[] nPetalsList;Flower[] flowerList;void setup() { size(800, 800); nPetalsList = new int[] {6, 8, 1

        • OpenCVにあるノンフォトリアリスティックレンダリングの関数で遊ぶ

          ノンフォトリアリスティックレンダリング (Non-Photorealistic Renderring: NPR) とは写実的でない画像を生成する技術の総称.写真のように情景をありのまま記録して伝えるのではなく,ユーザの介入を通して情景の一部を強調したり,表現を変えて伝えるのに使用する. 応用例としては,水彩画やペン画のような描画手法をコンピュータでシミュレーションしたり,3DCGから陰影や色を消して形状の情報だけを残すといった情報伝達の目的などがある. OpenCVでも

        Generative Art #15

        マガジン

        • Generative Art
          13本
        • 写真
          3本

        記事

          Generative Art #12

          絵のストック放出.以前の再帰分割絵に図形を追加しつつ赤色のアクセントを入れた.白・黒・赤の配色は見てて飽きない. AbstractShape[] shapeList;void setup() { size(800, 800); background(0); rectMode(CENTER); shapeList = new AbstractShape[] { new RectShape(), new HeartShape(), new DiceShape()

          Generative Art #12

          Generative Art #11

          ほったらかしにしてた下書きを放出.以前投稿した花の絵のコードをちょい改変したもの. final int N = 100;final int MAX_TRIAL = 1000;int[] nPetalsList;Flower[] flowerList;void setup() { size(800, 800); nPetalsList = new int[] {3, 4, 5, 6}; initFlowerList(); noLoop();}void initFlowerLi

          Generative Art #11

          Generative Art #10

          前に描いたサイコロ絵のカラフル版.こんな色のサイコロを見たことあったような無かったような…. int N_SEPARATION = 2;int[] di;int[] dj;color[][] dicePalettes;void setup() { size(800, 800); dicePalettes = new color[][] { {color(255), color(0), color(255, 0, 0)}, {color(0x19, 0x00, 0x

          Generative Art #10

          Generative Art #9

          花っぽい絵を描きたかったときの作品.Processingだと下記のように三角関数とvertexを使うことで円を描けるけど,rを定数でなくtの関数にすることで,形を崩した円を描ける.作品では r(t) = A sin^2(t) にすることで花びらっぽくしてる. x = r * cos(t);y = r * sin(t);vertex(x, y); 後半の3枚はパレットを変えたもの.和風っぽい感じに仕上がった. final int N = 100;final int MAX

          Generative Art #9

          Generative Art #8

          原色赤でどかーんとやりたかった.パレットを変えたものも作ってみた.夜中に見ると目に悪い…. 星を描くのに参考にしたのは以下の記事.意外とシンプルな方法でいいかんじの星が描ける. 星の敷き詰めは以前の記事の流用.アルゴリズムは円を適当に生成して既存のものと重なってないか総当たりで調べて,重なってないなら残す,重なってたら生成しなおしをひたすら繰り返すもの.適当に考えたものなのでもっと効率のいいやり方があるのかもしれない. final int MAX_TRIAL = 100

          Generative Art #8

          Generative Art #7

          今回は動物にしたかったので,icooon-monoさんの素材使った絵.前のサイコロの記事のときよりも大きい絵と小さい絵が混在しやすいように調整をかけてみた. ProcessingはSVGを読み込めるのが便利.Inkscapeとかで自前で書くのも良さそう. int N_SEPARATION = 2;int[] di;int[] dj;color[][] palettes;color[] palette;PShape[] shapes;void setup() { size(

          Generative Art #7

          Generative Art #6

          さいころを並べた.角の丸い四角の描き方をそこそこシンプルに定式化できたので,再帰分割に組み込みやすかった.以前の作品 ( Generative Art #3 ) ではひとつの再帰呼び出しで4分割だけだったけど.9分割や16分割もいけるようになった. 高専にいたとき,高専プロコンっていう大会に参加してたのだけど,2013年の旭川大会がサイコロを枠の中に並べて通信を行う競技だったので,なんとなくそれを思い出した. int N_SEPARATION = 2;int[] di;i

          Generative Art #6

          Generative Art #5

          星使った絵が描きたくなって,円が重ならないように敷き詰めるアルゴリズム使って星を敷き詰めた.この手の反復計算をp5.jsで書くとめっちゃ重くなるのでProcessingだと雑に書きやすくてよい. final int MAX_TRIAL = 1000;int[] nVerticesList;Star[] starList;color[] palette;void setup() { size(800, 800); nVerticesList = new int[] {5, 8

          Generative Art #5

          Generative Art #4

          描き溜めた絵をちょっとずつ放出.今回はGenerative Art #3 の派生.白黒だけでなんかやってみたかった.Javaは関数をインスタンスみたいに使えないのが不便. AbstractShape[] shapeList;void setup() { size(800, 800); background(0); rectMode(CENTER); shapeList = new AbstractShape[] { (AbstractShape)(new RectS

          Generative Art #4

          Generative Art #3

          前にOpenProcessingに投稿したもの ( https://www.openprocessing.org/sketch/704431 ) を使いまわしつつ,ちょいアレンジ.回転やスケール加えるだけでも違った雰囲気になる. void setup() { size(800, 800); background(0); rectMode(CENTER); drawPattern();}void draw() { }void drawPattern() { float s

          Generative Art #3

          Generative Art #2

          スピログラフをProcessingで描きたい!と思って色々がんばった.狙い通りの動きになるように設計しているのに,成果物をみると「そんなのも描けるの?!」と驚かされる.自分で書いたコードなんだけど. int[] nPointsList;float[] freqList;float[] radiusList;color[] palette;final int BUFF_SIZE = 65536;MyPoint[] prev;MyPoint[] curr;int cursor;

          Generative Art #2

          Generative Art #1

          久しくGenerative Artから離れていたので,リハビリがてら絵を描いてみた.p5.jsとProcessingのどちらを使うか迷ったけど,実行速度がそこそこ出て複雑なことをしやすいProcessingにした. GitHub使うのもなんだかめんどうくさいので,生成物とコードを雑にnoteに載せていく感じでゆるーーーく続けていきたい. int N_TILE = 16;int N = 1024;color[][] palettes;void setup() { size(

          Generative Art #1