Math Adventures with Python
An Illustrated Guide to Exploring Math with Code
楽天ブックス(Kobo)
紀伊国屋書店(Kinoppy)
開発環境
- macOS Mojave - Apple (OS)
- Emacs (Text Editor)
- Windows 10 Pro (OS)
- Visual Studio Code (Text Editor)
- Python 3.7 (プログラミング言語)
- Processing 3 (プログラミング言語、統合開発環境、グラフィック機能)
Math Adventures with Python: An Illustrated Guide to Exploring Math with Code (Peter Farrell(著)、No Starch Press)のPART 2(RIDING INTO MATH TERRITORY)、5(TRANSFORMING SHAPES WITH GEOMETRY)、EXERCISE 5-2(RAINBOW TRIANGLES)の解答を求めてみる。
コード
Python 3
def setup():
size(600, 600)
rectMode(CENTER)
t = 0
def draw():
global t
background(255)
translate(width / 2, height / 2)
rotate(radians(t))
angle = 90 / 6.0
for i in range(90):
if i < angle:
stroke(255, 255 * i / angle, 0)
elif i < angle * 2:
stroke(255 - 255 * (i - angle) / angle, 255, 0)
elif i < angle * 3:
stroke(0, 255, 255 * (i - angle * 2) / angle)
elif i < angle * 4:
stroke(0, 255 - 255 * (i - angle * 3) / angle, 255)
elif i < angle * 5:
stroke(255 * (i - angle * 4) / angle, 0, 255)
else:
stroke(255, 0, 255 - 255 * (i - angle * 5) / angle)
rotate(radians(360 / 90))
pushMatrix()
translate(200, 0)
rotate(radians(t + 2 * i * 360 / 90))
tri(100)
popMatrix()
t += 0.5
def tri(length):
noFill()
triangle(0, -length,
-length * sqrt(3) / 2, length / 2,
length * sqrt(3) / 2, length / 2)
せっかくだからffmpegとImageMagickを利用して動画をGIF形式の画像にしてみた。

0 コメント:
コメントを投稿