[英]How do I draw recursive Sierpiński arrowhead curve using python turtle graphics on Visual Studio Code
Hi I am trying to draw a recursive Sierpiński arrowhead curve using turtle graphics in python on Visual Studio Code.嗨,我正在尝试在 Visual Studio Code 上使用 Python 中的海龟图形绘制递归谢尔宾斯基箭头曲线。 I can get the basic shape just fine but I can't seem to make it rotate correctly to form the sierpinski triangle.
我可以很好地获得基本形状,但似乎无法正确旋转以形成谢尔宾斯基三角形。 Here's my code:
这是我的代码:
from turtle import *
def arrowhead(level, length):
if level == 1:
rt(-60)
fd(length)
rt(60)
fd(length)
rt(60) #Basic shape for level 1
else:
arrowhead(level-1, length/2)
rt(60)
for i in range(3):
arrowhead(level-1, length/2)
lt(-60)
for i in range(3):
arrowhead(level-1, length/2)
rt(-60)
arrowhead(level-1, length/2)
lt(60)
arrowhead(level-1, length/2)
arrowhead(4, 400)
Try:尝试:
import turtle
def seg(level, step, angle):
if level>0:
seg(level-1, step/2, -angle)
T.rt(angle)
seg(level-1, step/2, angle)
T.rt(angle)
seg(level-1, step/2, -angle)
else:
T.fd(step)
# Main Code
turtle.bye()
T = turtle.Turtle()
T.speed(10)
d = 220
b = 300
for level in range(7):
T.penup()
T.setpos((d*int(level/3)-b, d*(level%3)-b)) # pick new starting point
T.setheading(0) # reset heading
T.pendown()
if level%2==1: # is level odd or even? if even than ...
T.lt(60)
seg(level, 200, 60)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.