我是新來的龜圖形在Python中,我遇到了一些特定問題的問題。我正試圖生成一個使用循環從圓圈中心繪製隨機鋸齒線的while
星形。如何使用Python中的龜圖形生成隨機星?
每行應有250的距離。我在循環內使用penup
pendown
和setpos
命令來繪製這些隨機行,並且每行應該是隨機顏色。
這裏就是我希望能產生一個想法:random star
下面的代碼我到目前爲止:
# tg_random_star.py
from random import randrange
from turtle import *
MAX_ANGLE = 30
def jaggedLine(turtle, pieces, pieceLength):
for i in range(pieces):
turtle.forward(pieceLength)
r = randrange(-MAX_ANGLE, MAX_ANGLE + 1)
turtle.right(r)
def jumpToCenter(turtle):
turtle.penup()
turtle.setpos(0, 0)
turtle.pendown()
def randomColor(turtle):
turtle.colormode(255)
r = randrange(255) # red component of color
g = randrange(255) # green component
b = randrange(255) # blue component
turtle.pencolor(r, g, b)
def main():
colormode(255)
t = Turtle()
jaggedLine(t, 10, 30)
jumpToCenter(t)
jaggedLine(t, 10, 30)
if __name__ == "__main__":
main()
目前,它產生2行,但turtle.pencolor(r, g, b)
和colormode(255)
唐」因爲兩條線都是黑色的,所以似乎工作正常。任何想法爲什麼這些線不是顏色?
與其使用for i in range(pieces)
繪製基於段數的線條,我怎樣才能使用while
循環繪製每個距離爲250的鋸齒線?換句話說,我希望每條線在距離中心畫一條新線之前的距離爲250。
(也許我可以用xcor
和方法來尋找烏龜的位置,然後計算使用的距離公式的距離?)
def distance(p0, p1):
return math.sqrt((p0[0] - p1[0])**2 + (p0[1] - p1[1])**2)`
任何幫助或解釋,將不勝感激,謝謝。