gpt4 book ai didi

python - Turtle 迷你项目 - Udacity - Python - 围绕另一个形状绘制/移动一个形状

转载 作者:太空宇宙 更新时间:2023-11-03 16:24:24 25 4
gpt4 key购买 nike

我正在尝试制作一朵花,从其大致中心向整个圆周画出黄色线条。

我遇到的问题是绘制一条线,转到中心,然后再次绘制相同的长度,但比前一条线大 10 度。

我不知道如何做到这一点,这条线要么反复来回弹跳,要么绕着侧面旋转(例如当我制作一个尖形形状时)。

那么我如何让这条黄线回调,并逐渐羽化/让那个尖形形状不断地绘制完整的 360 度?

我想这是我的第一个“真正的”程序。我之前没有编程经验,并且才开始这样做几天。我在函数“draw_feather()”中使用的代码来自另一个站点,因为我不知道如何在圆中旋转三角形。

import turtle

def draw_fractal(ink):
for i in range(1,37):
ink.circle(50)
ink.right(10)


def draw_feather(ink):
while True:
ink.forward(200)
ink.left(170)
if abs(ink.pos()) < 1:
break

def draw_stem(ink):
ink.goto(1,-400)
ink.home()
ink.goto(5,-400)
ink.home()
ink.goto(3,-400)

def Draw():
window = turtle.Screen()
window.bgcolor =("White")

R = turtle.Turtle()
R.shape("circle")
R.color("Red")
R.setpos(4,3)
R.speed(100)

G = turtle.Turtle()
G.shape("circle")
G.color("Green")
G.setpos(3,3)
G.speed(100)

B = turtle.Turtle()
B.shape("circle")
B.color("Blue")
B.setpos(2,3)
B.speed(100)

Stem = turtle.Turtle()
Stem.shape("circle")
Stem.speed(100)

Feather = turtle.Turtle()
Feather.shape("circle")
Feather.speed(100)
Feather.color("Yellow")

draw_fractal(R)
draw_fractal(G)
draw_fractal(B)
draw_feather(Feather)
draw_stem(Stem)

window.exitonclick()

Draw()

最佳答案

下面是对您的代码进行的修改,以真正执行您所描述的操作:

import turtle

def draw_flower(ink):
ink.up()
ink.home()
for degrees in range(10, 370, 10):
ink.down()
ink.forward(200)
ink.up()
ink.home() # resets angle to 0 degrees
ink.left(degrees) # so absolute angle, not relative

def draw_stem(ink):
ink.goto(1, -400)
ink.home()
ink.goto(5, -400)
ink.home()
ink.goto(3, -400)

def Draw():
window = turtle.Screen()
window.bgcolor("white")

stem = turtle.Turtle()
stem.color("green")
stem.speed("fast")

draw_stem(stem)

flower = turtle.Turtle()
flower.color("yellow")
flower.speed("fastest")

draw_flower(flower)

Draw()

turtle.done()

只需转到屏幕中心,画一条黄线,重置到屏幕中心,稍微转动并重复即可。请注意,turtle.home() 方法会影响 turtle 的角度,因此我们必须对此进行调整:

enter image description here

另外,100 对于 turtle.speed() 来说没有任何意义,除了它大于 10 之外——使用符号参数来明确你的意图。

关于python - Turtle 迷你项目 - Udacity - Python - 围绕另一个形状绘制/移动一个形状,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38119618/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com