鱼C论坛

 找回密码
 立即注册
查看: 2523|回复: 2

[已解决]python表白画玫瑰花

[复制链接]
发表于 2021-2-25 09:29:33 | 显示全部楼层 |阅读模式
10鱼币
求问有没有大佬知道怎么样用turtle画一朵比较好看的玫瑰花,网上的玫瑰花全是一样的
最佳答案
2021-2-25 09:29:34
本帖最后由 yayc_zcyd 于 2021-2-25 14:56 编辑

  1. import turtle as t
  2. # 定义一个曲线绘制函数
  3. def DegreeCurve(n, r, d=1):
  4.     for i in range(n):
  5.         t.left(d)
  6.         t.circle(r, abs(d))
  7. # 初始位置设定
  8. s = 0.2 # size
  9. t.setup(450*5*s, 750*5*s)
  10. t.pencolor("black")
  11. t.fillcolor("red")
  12. t.speed(100)
  13. t.penup()
  14. t.goto(0, 900*s)
  15. t.pendown()
  16. # 绘制花朵形状
  17. t.begin_fill()
  18. t.circle(200*s,30)
  19. DegreeCurve(60, 50*s)
  20. t.circle(200*s,30)
  21. DegreeCurve(4, 100*s)
  22. t.circle(200*s,50)
  23. DegreeCurve(50, 50*s)
  24. t.circle(350*s,65)
  25. DegreeCurve(40, 70*s)
  26. t.circle(150*s,50)
  27. DegreeCurve(20, 50*s, -1)
  28. t.circle(400*s,60)
  29. DegreeCurve(18, 50*s)
  30. t.fd(250*s)
  31. t.right(150)
  32. t.circle(-500*s,12)
  33. t.left(140)
  34. t.circle(550*s,110)
  35. t.left(27)
  36. t.circle(650*s,100)
  37. t.left(130)
  38. t.circle(-300*s,20)
  39. t.right(123)
  40. t.circle(220*s,57)
  41. t.end_fill()
  42. # 绘制花枝形状
  43. t.left(120)
  44. t.fd(280*s)
  45. t.left(115)
  46. t.circle(300*s,33)
  47. t.left(180)
  48. t.circle(-300*s,33)
  49. DegreeCurve(70, 225*s, -1)
  50. t.circle(350*s,104)
  51. t.left(90)
  52. t.circle(200*s,105)
  53. t.circle(-500*s,63)
  54. t.penup()
  55. t.goto(170*s,-30*s)
  56. t.pendown()
  57. t.left(160)
  58. DegreeCurve(20, 2500*s)
  59. DegreeCurve(220, 250*s, -1)
  60. # 绘制一个绿色叶子
  61. t.fillcolor('green')
  62. t.penup()
  63. t.goto(670*s,-180*s)
  64. t.pendown()
  65. t.right(140)
  66. t.begin_fill()
  67. t.circle(300*s,120)
  68. t.left(60)
  69. t.circle(300*s,120)
  70. t.end_fill()
  71. t.penup()
  72. t.goto(180*s,-550*s)
  73. t.pendown()
  74. t.right(85)
  75. t.circle(600*s,40)
  76. # 绘制另一个绿色叶子
  77. t.penup()
  78. t.goto(-150*s,-1000*s)
  79. t.pendown()
  80. t.begin_fill()
  81. t.rt(120)
  82. t.circle(300*s,115)
  83. t.left(75)
  84. t.circle(300*s,100)
  85. t.end_fill()
  86. t.penup()
  87. t.goto(430*s,-1070*s)
  88. t.pendown()
  89. t.right(30)
  90. t.circle(-600*s,35)
  91. t.done()
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-2-25 09:29:34 | 显示全部楼层    本楼为最佳答案   
本帖最后由 yayc_zcyd 于 2021-2-25 14:56 编辑

  1. import turtle as t
  2. # 定义一个曲线绘制函数
  3. def DegreeCurve(n, r, d=1):
  4.     for i in range(n):
  5.         t.left(d)
  6.         t.circle(r, abs(d))
  7. # 初始位置设定
  8. s = 0.2 # size
  9. t.setup(450*5*s, 750*5*s)
  10. t.pencolor("black")
  11. t.fillcolor("red")
  12. t.speed(100)
  13. t.penup()
  14. t.goto(0, 900*s)
  15. t.pendown()
  16. # 绘制花朵形状
  17. t.begin_fill()
  18. t.circle(200*s,30)
  19. DegreeCurve(60, 50*s)
  20. t.circle(200*s,30)
  21. DegreeCurve(4, 100*s)
  22. t.circle(200*s,50)
  23. DegreeCurve(50, 50*s)
  24. t.circle(350*s,65)
  25. DegreeCurve(40, 70*s)
  26. t.circle(150*s,50)
  27. DegreeCurve(20, 50*s, -1)
  28. t.circle(400*s,60)
  29. DegreeCurve(18, 50*s)
  30. t.fd(250*s)
  31. t.right(150)
  32. t.circle(-500*s,12)
  33. t.left(140)
  34. t.circle(550*s,110)
  35. t.left(27)
  36. t.circle(650*s,100)
  37. t.left(130)
  38. t.circle(-300*s,20)
  39. t.right(123)
  40. t.circle(220*s,57)
  41. t.end_fill()
  42. # 绘制花枝形状
  43. t.left(120)
  44. t.fd(280*s)
  45. t.left(115)
  46. t.circle(300*s,33)
  47. t.left(180)
  48. t.circle(-300*s,33)
  49. DegreeCurve(70, 225*s, -1)
  50. t.circle(350*s,104)
  51. t.left(90)
  52. t.circle(200*s,105)
  53. t.circle(-500*s,63)
  54. t.penup()
  55. t.goto(170*s,-30*s)
  56. t.pendown()
  57. t.left(160)
  58. DegreeCurve(20, 2500*s)
  59. DegreeCurve(220, 250*s, -1)
  60. # 绘制一个绿色叶子
  61. t.fillcolor('green')
  62. t.penup()
  63. t.goto(670*s,-180*s)
  64. t.pendown()
  65. t.right(140)
  66. t.begin_fill()
  67. t.circle(300*s,120)
  68. t.left(60)
  69. t.circle(300*s,120)
  70. t.end_fill()
  71. t.penup()
  72. t.goto(180*s,-550*s)
  73. t.pendown()
  74. t.right(85)
  75. t.circle(600*s,40)
  76. # 绘制另一个绿色叶子
  77. t.penup()
  78. t.goto(-150*s,-1000*s)
  79. t.pendown()
  80. t.begin_fill()
  81. t.rt(120)
  82. t.circle(300*s,115)
  83. t.left(75)
  84. t.circle(300*s,100)
  85. t.end_fill()
  86. t.penup()
  87. t.goto(430*s,-1070*s)
  88. t.pendown()
  89. t.right(30)
  90. t.circle(-600*s,35)
  91. t.done()
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-2-25 11:25:54 | 显示全部楼层
自己找个图片计算坐标试试
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-30 18:21

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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