鱼C论坛

 找回密码
 立即注册
查看: 1443|回复: 1

[作品展示] Turtle模块-画美国国旗

[复制链接]
发表于 2018-7-18 21:29:54 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
Python的第一次尝试

  1. p = input('请输入国旗高度')  # 国旗尺寸
  2. p = float(p)

  3. a = 1.9  # 国旗一些重要数值
  4. b = 1.0

  5. c = 1.9*2/5
  6. d = 7/13

  7. e = c/12
  8. f = d/10

  9. k = 0.0616
  10. l = 1/13
  11. m = 0.37

  12. import turtle as t   #相当于宏定义

  13. t.setup(width=a*p, height=b*p)  # 设置画布大小
  14. t.pencolor(0.698,0.132,0.203)  # 设置颜色1
  15. t.fillcolor(0.698,0.132,0.203)  # 设置颜色2
  16. t.speed(10)  # 设置画笔速度

  17. for n1 in range(0,7):  # 画红色条纹
  18.     t.penup()       #移动时不绘制图形,提起笔,用于另起一个地方绘制时用
  19.     t.goto(-0.5*a*p,0.5*b*p-n1*2*l*p)  #移动位置
  20.     t.begin_fill()       #准备开始填充图形
  21.     for n2 in range(2):  
  22.         t.forward(a*p)
  23.         t.right(90)
  24.         t.forward(l*p)
  25.         t.right(90)
  26.     t.end_fill()

  27. t.penup()  # 画蓝色方块
  28. t.goto(-0.5*a*p,0.5*b*p)
  29. t.pencolor(0.234,0.233,0.430)
  30. t.fillcolor(0.234,0.233,0.430)
  31. t.begin_fill()
  32. for n3 in range(2):
  33.     t.forward(c*p)
  34.     t.right(90)
  35.     t.forward(d*p)
  36.     t.right(90)
  37. t.end_fill()

  38. for i in range(1,10):  # 画星星
  39.     if i%2 != 0:
  40.         for j in range(1,7):
  41.             t.penup()
  42.             t.goto(-0.5*a*p+(2*j-1)*e*p,0.5*b*p-i*f*p+k*p/2)
  43.             t.pencolor(1,1,1)
  44.             t.fillcolor(1,1,1)
  45.             t.begin_fill()
  46.             t.right(90-18)
  47.             t.forward(m*k*p)
  48.             t.left(180-108)
  49.             t.forward(m*k*p)
  50.             for q in range(4):
  51.                 t.right(180-36)
  52.                 t.forward(m*k*p)
  53.                 t.left(180-108)
  54.                 t.forward(m*k*p)
  55.             t.end_fill()
  56.             t.right(90-18)
  57.     else:
  58.         for j in range(1,6):
  59.             t.penup()
  60.             t.goto(-0.5*a*p+2*j*e*p,0.5*b*p-i*f*p+k*p/2)   
  61.             t.pencolor(1,1,1)
  62.             t.fillcolor(1,1,1)
  63.             t.begin_fill()
  64.             t.right(90-18)
  65.             t.forward(m*k*p)
  66.             t.left(180-108)
  67.             t.forward(m*k*p)
  68.             for q in range(4):
  69.                 t.right(180-36)
  70.                 t.forward(m*k*p)
  71.                 t.left(180-108)
  72.                 t.forward(m*k*p)
  73.             t.end_fill()
  74.             t.right(90-18)

  75. t.hideturtle()
复制代码

效果图
Usa_Flag.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-7-19 11:30:07 | 显示全部楼层
膜拜大神,顺便问一下turtle怎么画弧。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-3-29 05:15

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表