Pythonのturtleでコッホ曲線を描く方法
Pythonにはturtle タートルグラフィックス というライブラリがあります。
これを使ってコッホ曲線を描く方法についてまとめます。
前半にkochという関数を書きました。
引数は線の長さと深さとします。再帰的に呼び出しています。
後半で描画しています。
speedで描画速度を指定します。ここをゼロにしておかないと遅くてイライラします。
書き始めを中心から左に300ピクセル移動してから描画させます。
depthを変えることでコッホ曲線の複雑さが変わります。
from turtle import*
def koch(length, depth):
if depth == 0:
forward(length)
else:
koch(length / 3, depth - 1)
left(60)
koch(length / 3, depth - 1)
right(120)
koch(length / 3, depth - 1)
left(60)
koch(length / 3, depth - 1)
length = 600
depth = 4
speed(0)
penup()
goto(-300, 0)
pendown()
koch(length, depth)
done()
def koch(length, depth):
if depth == 0:
forward(length)
else:
koch(length / 3, depth - 1)
left(60)
koch(length / 3, depth - 1)
right(120)
koch(length / 3, depth - 1)
left(60)
koch(length / 3, depth - 1)
length = 600
depth = 4
speed(0)
penup()
goto(-300, 0)
pendown()
koch(length, depth)
done()
depth=1
depth=2
depth=3
depth=4
[ 2023年1月16日 | カテゴリー: Python | タグ: Turtle ]
« JavaScriptでありえない日付をチェック | 静岡旅行(2023年1月) »
コメントを残す