Crossin的编程教室

标题: Python绘制冬奥吉祥物“冰墩墩” [打印本页]

作者: crossin先生    时间: 2022-2-8 17:20
标题: Python绘制冬奥吉祥物“冰墩墩”
这两天,随着北京冬奥会的开幕,吉祥物“冰墩墩”可是火出了圈,多少人排长队都买不到。据说甚至有人把价格炒到了几千元。

就连昨天的“虎虎生威”文章下面,都有同学求冰墩墩


为了帮助大家早日实现“一户一墩”,Crossin连夜加班,肝出了这个:
Python版冰墩墩

话不多说,直接上效果
绘制过程:

成图:
bdd.png

说实话,这个没什么技术含量,就是硬“肝”,不断调整曲线细节。

用的是 Python 自带的 turtle 库。这个库之前介绍过很多次,就不再啰嗦了,历史文章里搜索“turtle”或“海龟作图”就能看到。

说个用 turtle 画图的小技巧:你可以通过
turtle.bgpic(r'bg.png')
这个语句把你要参考的图先绘制在窗口中,然后再对照着进行绘制调整,就方便许多了。
由于代码比较长,这里贴一小段供参考:

  1. # 爱心
  2. turtle.penup()
  3. turtle.goto(220, 115)
  4. turtle.pencolor("brown")
  5. turtle.pensize(1)
  6. turtle.fillcolor("brown")
  7. turtle.begin_fill()
  8. turtle.pendown()
  9. turtle.setheading(36)
  10. turtle.circle(-8, 180)
  11. turtle.circle(-60, 24)
  12. turtle.setheading(110)
  13. turtle.circle(-60, 24)
  14. turtle.circle(-8, 180)
  15. turtle.end_fill()

  16. # 五环
  17. turtle.penup()
  18. turtle.goto(-5, -170)
  19. turtle.pendown()
  20. turtle.pencolor("blue")
  21. turtle.circle(6)
  22. turtle.penup()
  23. turtle.goto(10, -170)
  24. turtle.pendown()
  25. turtle.pencolor("black")
  26. turtle.circle(6)
  27. turtle.penup()
  28. turtle.goto(25, -170)
  29. turtle.pendown()
  30. turtle.pencolor("brown")
  31. turtle.circle(6)
  32. turtle.penup()
  33. turtle.goto(2, -175)
  34. turtle.pendown()
  35. turtle.pencolor("lightgoldenrod")
  36. turtle.circle(6)
  37. turtle.penup()
  38. turtle.goto(16, -175)
  39. turtle.pendown()
  40. turtle.pencolor("green")
  41. turtle.circle(6)
  42. turtle.penup()

  43. turtle.pencolor("black")
  44. turtle.goto(-16, -160)
  45. turtle.write("BEIJING 2022", font=('Arial', 10, 'bold italic'))
  46. turtle.hideturtle()

  47. turtle.done()
复制代码
完整代码请在公众号“Crossin的编程教室”回复关键字:冰墩墩








欢迎光临 Crossin的编程教室 (https://bbs.crossincode.com/) Powered by Discuz! X2.5