【初心者向け】Processing Pythonのrandom関数を使った作品作り方

※本サイトはアフィリエイト広告を使用しています
Processing python

前回の記事ではfor文を使用した繰り返しをして作品を作ってきました

↓↓↓前回の記事はこちら↓↓↓

【Processing python】for文を使った繰り返しで模様を描こう

for文による繰り返しをすることで、作品を作っていく幅が広がってきました

それでもまだ、パソコンならではの作品というまではいかないような気がしています

そこで今度は、ランダム関数を使用して少し幅を広げていきましょう

この記事はProcessingのPython設定で作成しております

Java設定だとエラーが出るので注意してください

インストールや設定変更については

私が作ったUdemy講座から無料で見れるようになりました

Processingインストールの講座プレビュー

視聴方法 ←見方がわからない方はこちら

Processing×Pythonが学べる講座

↓↓割引クーポンで安く学べる↓↓

割引クーポン発行

random関数とは

random()の中に数値を入力するとその中からランダムに一つ数値を実行する関数

では実際に関数を使用していきながらやっていきましょう

まずは一つ図形を作っていきます

説明のために一つ参考になる図形を作る

まずは丸い図形を作っていきます

コード作成

size(1000,1000)

ellipse(100, 100, 100, 100)

入力・実行

これにrandom()を使用して実行結果を見ていきます

random関数を使用

コードにrandom関数を組み入れて実行します

座標X,Yの部分をrandom(100)という数値に変更していきます

コード作成

size(1000,1000)

ellipse(random(1000), random(1000), 100, 100)

入力・実行

コードを4回実行してみました

すると結果は丸の位置がそれぞれ違うと思います

これがランダム関数の効果です

自分が考えても同じ場所に来ることがありませんでした(泣)

ただ、randomの内容は分かったが丸をランダムに出すだけでは面白くない

そこで、少し応用編ということでrandom関数を使っていろいろやってみます

プログラミングでは組み合わせが必要です

前回for文をを使った繰り返しの記事を書いたのでそれを使って少し作品を作っていきましょう

for文の使い方についての記事は以下を参照してください

応用編(丸を使って)

『random関数』×『for文』

まずは簡単に丸の図形をランダムに増やしていきます

コード作成

size(2100,1400)

background(255)

for i in range(2000):
    ellipse(random(2100), random(2100), 100, 100)

入力・実行

丸がぎっしり敷き詰められました

for文と違って、ランダムに丸を作る座標が決められているので、規則性はありません

少し味気ないので少し色を付けていきましょう

色を付けていく

fill関数を使って着色していきます

コード作成(RGBを使用)

 size(2100,1400)

background(255)

for i in range(2000):
    fill(0,random(255),random(255))
    ellipse(random(2100), random(2100), 100, 100)

入力・実行

コード作成(HSBを使用)

size(2100,1400)

background(255)

for i in range(2000):
    colorMode(HSB)
    fill(random(360),100,1000)
    ellipse(random(2100), random(2100), 100, 100)

入力・実行

色を付けていきましたが、色の付け方でも方法が違ってくるので表現内容が変わってきます。

色についてはこちらの記事を参考にしてください

応用編(線を使って)

ランダムを使って自分なりにいろいろやってみます

line()関数とグレースケールを使って作品作り

まずはline()関数を使って線を描いていきますが、一本だけでは面白くないのでfor文をを使って線を100本書きます

その線を一本ずつ、線の配色、長さ、太さ、場所をランダムで書いていくとどのようになるかやっていきます

コード作成

size(900,600)
for i in range(100):
    r = random(800)
    stroke(r/3)
    strokeWeight(r/10)
    line(0, 10*i, 100+r, i)

入力・実行

こんな感じで不思議な線の模様ができました

では、次は線の中の数値をいろいろ変更していきましょう

line()関数の中身を変えてみよう

コード作成

size(900,600)
for i in range(100):
    r = random(800)
    stroke(r/3)
    strokeWeight(r/10)
    line(r, r, r, r)

入力・実行

繰り返しをY座標①に加えるとホラー感

コード作成

size(900,600)
for i in range(100):
    r = random(800)
    stroke(r/3)
    strokeWeight(r/10)
    line(r, r+i, r, r)

入力・実行

ランダム関数のみにしてみる

ランダム関数をなくしてみるとよくわからないものができました

コード作成

size(900,600)
for i in range(100):
    r = random(800)
    rr = random(255)
    stroke(rr,30)
    strokeWeight(r)
    line(0, i, r, r)

入力・実行

ダダ
ダダ

この度Udemyで講座を作りました

【プログラミングxアート】直感的・視覚的に学ぶ Processing×Python 入門講座

ブログに書いてある内容を一つの講座にしています

☆☆☆作成した講座が気になる方は☆☆☆

こちらをクリック

\\\お得なクーポンが使えます///

まとめ

ランダム関数を使用するとパソコンならではの作品が出来上がる感じがあります。

ランダム関数を使用しながら、今後も様々な内容に今後も取り組んでいきます

ただ、ランダム関数を使用した感想は面白かったです。

もっとPythonをを学んでみたい方は以下のリンクから無料のカウンセリングを受けることができます

python特化型オンラインスクールの無料カウンセリング申し込み

実際に第三者よりカウンセリングを受けることでわかることも多いと思います

今後のプログラミングを学ぶ上で一つのきっかけになるかもしれませんので、よかったら試してみてください

コメント

タイトルとURLをコピーしました