站长高三,更新会慢些。

用turtle画一个七巧板

计算机 雨啸青锋 1年前 (2019-08-26) 562次浏览 0个评论 扫描二维码

用turtle画一个七巧板

turtle海龟库是一个很流行的绘制图像的函数库,想象一个小乌龟,在一个横轴为x、纵轴为y的坐标系原点,(0,0)位置开始,它根据一组函数指令的控制,在这个平面坐标系中移动,从而在它爬行的路径上绘制了图形。

七巧板中,各个边长可以用勾股定理求到
勾股定理公式 a²+b²=c²

 

from math import sqrt
from turtle import color
from turtle import begin_fill
from turtle import left
from turtle import forward
from turtle import end_fill
from turtle import right
from turtle import exitonclick
from turtle import hideturtle

a=300

color("red")  # ①
begin_fill()
left(45)
forward(a)
left(135)
forward(sqrt(2*a*a))
left(135)
forward(a)
end_fill()


color("blue")  # 2
begin_fill()
right(90)
forward(a)
right(135)
forward(sqrt(2*a*a))
right(135)
forward(a)
end_fill()

color("orange")
color("orange")  #3
begin_fill()
left(90)
forward(a)
right(135)
forward((sqrt(2*a*a))/2)
right(135)
forward(a/2)
end_fill()

color("#9400D3")#4
begin_fill()
for i in range(4):
    left(90)
    forward(a/2)
end_fill()
left(90)
forward(a/2)
end_fill()

color("#CD00CD")  # 5
begin_fill()
forward(a/2)
left(135)
forward((sqrt(2*a*a))/2)
left(135)
forward(a/2)
end_fill()
left(90)
forward(a/2)
end_fill()


color("yellow")  # 6
begin_fill()
forward(a/2)
left(135)
forward((sqrt(2*a*a))/2)
left(45)
forward(a/2)
end_fill()

color("green")  #7
begin_fill()
forward(a/2)
right(135)
forward((sqrt(2*a*a))/2)
right(90)
forward((sqrt(2*a*a))/2)
end_fill()
hideturtle()
exitonclick()
喜欢 (4)
[]
分享 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址