我需要編寫的函數,使得在龜平行線和採用下列四個參數:繪製平行線與龜
- 龜
- 長度,即每行的長度
- 代表,即行數來繪製
- 分離,也就是平行線之間的距離
到目前爲止我得到這個:
import turtle as t
def parallelLines(length, reps, separation):
t.fd(length)
t.penup()
t.goto(0, separation)
for i in reps:
return i
我需要編寫的函數,使得在龜平行線和採用下列四個參數:繪製平行線與龜
到目前爲止我得到這個:
import turtle as t
def parallelLines(length, reps, separation):
t.fd(length)
t.penup()
t.goto(0, separation)
for i in reps:
return i
您已經回答了自己的問題:
繪製的第一行X長度,再往下從 是第一線Y長度開始移動,並重復,直到我有但是許多代表我 需要
這翻譯成代碼是這樣:
goto start position
for _ in reps:
pen down
move length to the right
pen up
move length to the left
move separation to the bottom
現在你只需要填寫正確的調用你的烏龜API。
我建議改爲:
def parallel():
turtle.forward(length)
turtle.rt(90)
turtle.pu()
turtle.forward(distanceyouwantbetweenthem)
turtle.rt(90)
turtle.forward(length)
至今都是不完整的,不正確的和/或破給出的答案。我在下面有一個使用聲明的API並繪製平行線。
的OP沒有明確在線條應該出現相對於烏龜的位置,所以我與龜是在兩個維度中心點去:
import turtle
STAMP_SIZE = 20
def parallelLines(my_turtle, length, reps, separation):
separation += 1 # consider how separation 1 & 0 differ
my_stamp = my_turtle.clone()
my_stamp.shape('square')
my_stamp.shapesize(1/STAMP_SIZE, length/STAMP_SIZE, 0)
my_stamp.tilt(-90)
my_stamp.penup()
my_stamp.left(90)
my_stamp.backward((reps - 1) * separation/2)
for _ in range(reps):
my_stamp.stamp()
my_stamp.forward(separation)
my_stamp.hideturtle()
turtle.pencolor('navy')
parallelLines(turtle.getturtle(), 250, 15, 25)
turtle.hideturtle()
turtle.exitonclick()
好了,你可以想想如何'在現實生活中做到這一點?暫時忽略Python。 – Ryan
你會如何做它作爲一隻烏龜,因爲你的線條是非常直的,你的轉身是完全準確的? – Ryan
繪製第一行X的長度,然後從第一行Y的長度開始向下移動並重復,直到我有我需要的許多代表 –