初めまして、ダダです
Processingを初めて約半年ぐらいがたちました
ブログの中で書いてあるような内容が少しずつ身についてきている感覚もあります
そんな私ですが最近少し悩んでいます、図形は書けるようになってきてロゴも作れるようになりました
図形の記事についてはこちらから
ロゴの記事についてはこちらから
しかーし
何かが物足りない、プログラミングだからできる作品を作ってみたい
どういうこと?
と思われる方も多いと思います
理由は簡単で、図形や線を描くことは別にプログラミングじゃなくてもできるよねってことです
せっかくプログラミングでやっているならプログラミングでできることをやってみたい
ということで今回はプログラミングの基礎にある
for文(繰り返し文)を使って以下のようなものを作っていきます

for文(繰り返し分)とは
Pythonでは指定した回数をや指定した中身をfor文で繰り返すことができます
for文コード
for i in range(10):
繰り返し処理
といった形になります
とは言っても少しわかりにくいと思うので実際に図形を使いながらやっていきます
一つ図形を作ろう
まずは丸い図形を作ります
size(1000,1000)
ellipse(100, 100, 100, 100)

この左上にある丸をfor文を使って増やしていきます
for文を使ってみよう増やしてみよう
コード入力
size(1000,1000)
for i in range(10):
ellipse(100*i, 100, 100, 100)
実行

10個増えました
最初の一個は見切れていますが理由があり、数字の指定を行うと0~始まるので最初の座標が0になるので見切れます
コードの説明
図で説明していくとこのようになります

繰り返す数を指定して変数へ代入します
その変数を使用して繰り返しを行っていきます
これが基本的な使い方です
では、ここから応用で模様やデザインを作成していきます
for文の応用
では、for文の使い方でどのようなものがあるかいろいろ試していこうと思います
繰り返しを繰り返す
丸を作るときには横にどんどん増えていきました
それをさらに縦に繰り返してさらに丸の数を増やしていきましょう
コード作成
size(1000,1000)
for i in range(11):
ellipse(100*i, 100, 100, 100)
for r in range(11):
ellipse(100*i, 100*r, 100, 100)
入力・実行

色を繰り返す
丸の数がかなり増えましたね
色がないので味気ないので色を付けてきます
その時に少し色にも繰り返しを使ってみます
コード作成
size(1000,1000)
for i in range(11):
fill(0, 0, 100+(i*10).80)
ellipse(100*i, 100, 100, 100)
for r in range(11):
ellipse(100*i, 100*r, 100, 100)
入力・実行

少しグラデーションっぽくなりましたね
最後に模様っぽくするために幅を狭くしていきます
模様っぽくしてみよう
丸の間隔を狭くしていくと若干模様っぽくなります
コード作成
size(1000,1000)
for i in range(11):
fill(0, 0, 100+(i*10),80)
ellipse(100/2*(i), 100/3, 100, 100)
for r in range(11):
ellipse(100/2*(i), 100/3*r, 100, 100)
入力・実行

ぎゅっとなって模様っぽくなったのですが、模様がない範囲が多いのでなんかもの足りませんよね
数を増やしてみます
range()の部分の数を変更していきました
11⇒33へ変更
コード作成
size(1000,1000)
for i in range(33):
fill(0, 0, 100+(i*10),80)
ellipse(100/2*(i), 100/3, 100, 100)
for r in range(33):
ellipse(100/2*(i), 100/3*r, 100, 100)
入力・実行

これで模様っぽくなりましたかね
少し応用していくと



こんな感じの作品も作ることができます

この度Udemyで講座を作りました
【プログラミングxアート】直感的・視覚的に学ぶ Processing×Python 入門講座
ブログに書いてある内容を一つの講座にしています
まとめ
パソコンは繰り返し行う作業が得意なようです
図形を少しずらして繰り返すだけでも、模様のようになり作品ができると思います
これは自分で書いていこうと思うとなかなか骨が折れる作業ではないでしょうか?
こんな感じでできる作品は素敵だなーっと思うのでいろいろ試していきたいです
もっとPythonをを学んでみたい方は以下のリンクから無料のカウンセリングを受けることができます
python特化型オンラインスクールの無料カウンセリング申し込み
実際に第三者よりカウンセリングを受けることでわかることも多いと思います
今後のプログラミングを学ぶ上で一つのきっかけになるかもしれませんので、よかったら試してみてください
コメント