鱼C论坛

 找回密码
 立即注册
查看: 4062|回复: 7

[技术交流] 17 - 一道练习题

[复制链接]
发表于 2022-12-24 18:45:10 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 不二如是 于 2022-12-27 19:21 编辑

Solution_ManimCE_v0.17.1.png

请按照下面的要求画出上面示例图:

将一个圆移动到左上角,然后将其他元素挨着该圆形依次向右排成一行,这些元素都需要对齐于圆形对象的上边沿。

提示:

可以自己一个一个拼,也可以循环

期待你的答案。

我们先创建第一个圆,并且将其位置设置到左上角 UL:

  1. circle = Circle().to_corner(UL, buff=1)
复制代码

然后创建一个对象数组:

  1. mobs = [circle, Square(), Star(), Triangle(), Circle(), Star()]
复制代码

元素顺序依次向右排成一行。

因为要求元素要对齐于圆形对象的上边沿,所以通过循环来统一设定就好:

  1.         for i in range(len(mobs)-1):
  2.             mobs[i+1].next_to(mobs[i], RIGHT, aligned_edge=UP)
复制代码

最后将 mobs 添加到屏幕上:

  1. self.add(*mobs)
复制代码

搞定!

答案源码: 19.py.zip (395 Bytes, 下载次数: 1)

本帖被以下淘专辑推荐:

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2022-12-24 19:56:52 | 显示全部楼层
有点不懂
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-12-24 21:40:50 | 显示全部楼层

我的答案是:运用 turtle 模块画出来。
  1. import turtle

  2. def move(t, distance = 0):
  3.     t.penup()
  4.     t.goto(origin + distance, 0)
  5.     t.pendown()

  6. size = 300
  7. screen = turtle.Screen()
  8. origin = size / 2 - screen.window_width() / 2
  9. t = turtle.Turtle()

  10. move(t)
  11. r = size / 6
  12. t.circle(-r)

  13. move(t, 80)
  14. for i in range(4):
  15.     t.forward(size / 3)
  16.     t.right(90)

  17. move(t, 250)
  18. for n, i in enumerate(range(5)):
  19.     t.right(72 + bool(n) * 72)
  20.     t.forward(size / 8)
  21.     t.left(72)
  22.     t.forward(size / 8)
  23. t.setheading(0)

  24. move(t, 350)
  25. t.setheading(-60)
  26. for i in range(3):
  27.     t.forward(size / 3.5)
  28.     t.right(120)

  29. t.setheading(0)
  30. move(t, 450)
  31. t.circle(-r)

  32. t.setheading(0)
  33. move(t, 560)
  34. for n, i in enumerate(range(5)):
  35.     t.right(72 + bool(n) * 72)
  36.     t.forward(size / 8)
  37.     t.left(72)
  38.     t.forward(size / 8)

  39. turtle.done()
复制代码

至於背景颜色和形状的颜色我没有写(因为太懒了
结果: 结果.jpg
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-12-25 09:02:53 | 显示全部楼层
傻眼貓咪 发表于 2022-12-24 21:40
我的答案是:运用 turtle 模块画出来。

至於背景颜色和形状的颜色我没有写(因为太懒了 )
...

编程题,我**以为是什么思维题,没看板块
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-12-25 09:25:31 | 显示全部楼层
我的答案是:一脸茫然
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-12-25 11:24:46 | 显示全部楼层

我的答案是:
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-12-27 19:17:05 | 显示全部楼层
傻眼貓咪 发表于 2022-12-24 21:40
我的答案是:运用 turtle 模块画出来。

至於背景颜色和形状的颜色我没有写(因为太懒了 )
...

不错,最好还是用 Manim
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2022-12-27 19:21:13 | 显示全部楼层
我的答案是:万物之源
  1. print("Hello, world!")
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-4-25 09:12

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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