17 - 一道练习题
本帖最后由 不二如是 于 2022-12-27 19:21 编辑请按照下面的要求画出上面示例图:
将一个圆移动到左上角,然后将其他元素挨着该圆形依次向右排成一行,这些元素都需要对齐于圆形对象的上边沿。
提示:
可以自己一个一个拼,也可以循环
期待你的答案。
我们先创建第一个圆,并且将其位置设置到左上角 UL:
circle = Circle().to_corner(UL, buff=1)
然后创建一个对象数组:
mobs =
元素顺序依次向右排成一行。
因为要求元素要对齐于圆形对象的上边沿,所以通过循环来统一设定就好:
for i in range(len(mobs)-1):
mobs.next_to(mobs, RIGHT, aligned_edge=UP)
最后将 mobs 添加到屏幕上:
self.add(*mobs)
搞定!
答案源码: 有点不懂{:10_277:} zhangjinxuan 发表于 2022-12-24 19:56
有点不懂
我的答案是:运用 turtle 模块画出来。
import turtle
def move(t, distance = 0):
t.penup()
t.goto(origin + distance, 0)
t.pendown()
size = 300
screen = turtle.Screen()
origin = size / 2 - screen.window_width() / 2
t = turtle.Turtle()
move(t)
r = size / 6
t.circle(-r)
move(t, 80)
for i in range(4):
t.forward(size / 3)
t.right(90)
move(t, 250)
for n, i in enumerate(range(5)):
t.right(72 + bool(n) * 72)
t.forward(size / 8)
t.left(72)
t.forward(size / 8)
t.setheading(0)
move(t, 350)
t.setheading(-60)
for i in range(3):
t.forward(size / 3.5)
t.right(120)
t.setheading(0)
move(t, 450)
t.circle(-r)
t.setheading(0)
move(t, 560)
for n, i in enumerate(range(5)):
t.right(72 + bool(n) * 72)
t.forward(size / 8)
t.left(72)
t.forward(size / 8)
turtle.done()
至於背景颜色和形状的颜色我没有写(因为太懒了{:10_280:} )
结果: 傻眼貓咪 发表于 2022-12-24 21:40
我的答案是:运用 turtle 模块画出来。
至於背景颜色和形状的颜色我没有写(因为太懒了 )
...
编程题,我**以为是什么思维题,没看板块{:10_282:} 我的答案是:一脸茫然 zhangjinxuan 发表于 2022-12-24 19:56
有点不懂
我的答案是: 傻眼貓咪 发表于 2022-12-24 21:40
我的答案是:运用 turtle 模块画出来。
至於背景颜色和形状的颜色我没有写(因为太懒了 )
...
不错,最好还是用 Manim 我的答案是:万物之源
print("Hello, world!")
页:
[1]