Python源码示例:turtle.fd()

示例1
def run_instruction(t):
    if t.data == 'change_color':
        turtle.color(*t.children)   # We just pass the color names as-is

    elif t.data == 'movement':
        name, number = t.children
        { 'f': turtle.fd,
          'b': turtle.bk,
          'l': turtle.lt,
          'r': turtle.rt, }[name](int(number))

    elif t.data == 'repeat':
        count, block = t.children
        for i in range(int(count)):
            run_instruction(block)

    elif t.data == 'fill':
        turtle.begin_fill()
        run_instruction(t.children[0])
        turtle.end_fill()

    elif t.data == 'code_block':
        for cmd in t.children:
            run_instruction(cmd)
    else:
        raise SyntaxError('Unknown instruction: %s' % t.data) 
示例2
def body():
    '''
    身体
    '''
    t.color("red", (255, 99, 71))
    t.pu()
    t.seth(90)
    t.fd(-20)
    t.seth(0)
    t.fd(-78)
    t.pd()
    t.begin_fill()
    t.seth(-130)
    t.circle(100, 10)
    t.circle(300, 30)
    t.seth(0)
    t.fd(230)
    t.seth(90)
    t.circle(300, 30)
    t.circle(100, 3)
    t.color((255, 155, 192), (255, 100, 100))
    t.seth(-135)
    t.circle(-80, 63)
    t.circle(-150, 24)
    t.end_fill() 
示例3
def tail():
    '''
    尾巴
    '''
    t.pensize(4)
    t.color((255, 155, 192))
    t.pu()
    t.seth(90)
    t.fd(70)
    t.seth(0)
    t.fd(95)
    t.pd()
    t.seth(0)
    t.circle(70, 20)
    t.circle(10, 330)
    t.circle(70, 30) 
示例4
def head():
    '''
    头
    '''
    t.color((255, 155, 192), "pink")
    t.pu()
    t.seth(90)
    t.fd(41)
    t.seth(0)
    t.fd(0)
    t.pd()
    t.begin_fill()
    t.seth(180)
    t.circle(300, -30)  # 顺时针画一个半径为300,圆心角为30°的园
    t.circle(100, -60)
    t.circle(80, -100)
    t.circle(150, -20)
    t.circle(60, -95)
    t.seth(161)
    t.circle(-300, 15)
    t.pu()
    t.goto(-100, 100)
    t.pd()
    t.seth(-30)
    a = 0.4
    for i in range(60):
        if 0 <= i < 30 or 60 <= i < 90:
            a = a + 0.08
            t.lt(3)  # 向左转3度
            t.fd(a)  # 向前走a的步长
        else:
            a = a - 0.08
            t.lt(3)
            t.fd(a)
    t.end_fill() 
示例5
def ear():
    '''
    耳朵
    '''
    t.color((255, 155, 192), "pink")
    t.pu()
    t.seth(90)
    t.fd(-7)
    t.seth(0)
    t.fd(70)
    t.pd()
    t.begin_fill()
    t.seth(100)
    t.circle(-50, 50)
    t.circle(-10, 120)
    t.circle(-50, 54)
    t.end_fill()
    t.pu()
    t.seth(90)
    t.fd(-12)
    t.seth(0)
    t.fd(30)
    t.pd()
    t.begin_fill()
    t.seth(100)
    t.circle(-50, 50)
    t.circle(-10, 120)
    t.circle(-50, 56)
    t.end_fill() 
示例6
def blusher():
    '''
    腮
    '''
    t.color((255, 155, 192))
    t.pu()
    t.seth(90)
    t.fd(-95)
    t.seth(0)
    t.fd(65)
    t.pd()
    t.begin_fill()
    t.circle(30)
    t.end_fill() 
示例7
def hand():
    '''
    手
    '''
    t.color((255, 155, 192))
    t.pu()
    t.seth(90)
    t.fd(-40)
    t.seth(0)
    t.fd(-27)
    t.pd()
    t.seth(-160)
    t.circle(300, 15)
    t.pu()
    t.seth(90)
    t.fd(15)
    t.seth(0)
    t.fd(0)
    t.pd()
    t.seth(-10)
    t.circle(-20, 90)
    t.pu()
    t.seth(90)
    t.fd(30)
    t.seth(0)
    t.fd(237)
    t.pd()
    t.seth(-20)
    t.circle(-300, 15)
    t.pu()
    t.seth(90)
    t.fd(20)
    t.seth(0)
    t.fd(0)
    t.pd()
    t.seth(-170)
    t.circle(20, 90) 
示例8
def foot():
    '''
    脚
    '''
    t.pensize(10)
    t.color((240, 128, 128))
    t.pu()
    t.seth(90)
    t.fd(-75)
    t.seth(0)
    t.fd(-180)
    t.pd()
    t.seth(-90)
    t.fd(40)
    t.seth(-180)
    t.color("black")
    t.pensize(15)
    t.fd(20)
    t.pensize(10)
    t.color((240, 128, 128))
    t.pu()
    t.seth(90)
    t.fd(40)
    t.seth(0)
    t.fd(90)
    t.pd()
    t.seth(-90)
    t.fd(40)
    t.seth(-180)
    t.color("black")
    t.pensize(15)
    t.fd(20) 
示例9
def arc(sa, ea, x, y, r):  # start angle,end angle,circle center,radius
    turtle.penup()
    turtle.goto(x, y)
    turtle.setheading(0)
    turtle.left(sa)
    turtle.fd(r)
    turtle.pendown()
    turtle.left(90)
    turtle.circle(r, (ea - sa))
    return turtle.position() 
示例10
def draw_1(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1) 
示例11
def draw_2(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_2(length, level-1)
        turtle.left(60)
        draw_2(length, level-1)
        turtle.right(180-60)
        draw_2(length, level-1)
        turtle.left(60)
        draw_2(length, level-1) 
示例12
def draw_1(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1) 
示例13
def draw_2(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_2(length, level-1)
        turtle.left(60)
        draw_2(length, level-1)
        turtle.right(180-60)
        draw_2(length, level-1)
        turtle.left(60)
        draw_2(length, level-1) 
示例14
def draw_1(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1) 
示例15
def draw_1(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1) 
示例16
def draw_2(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_2(length, level-1)
        turtle.left(60)
        draw_2(length, level-1)
        turtle.right(180-60)
        draw_2(length, level-1)
        turtle.left(60)
        draw_2(length, level-1) 
示例17
def draw_1(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1) 
示例18
def draw_2(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_2(length, level-1)
        turtle.left(60)
        draw_2(length, level-1)
        turtle.right(180-60)
        draw_2(length, level-1)
        turtle.left(60)
        draw_2(length, level-1) 
示例19
def draw_1(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1) 
示例20
def draw_1(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1) 
示例21
def draw_2(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_2(length, level-1)
        turtle.left(60)
        draw_2(length, level-1)
        turtle.right(180-60)
        draw_2(length, level-1)
        turtle.left(60)
        draw_2(length, level-1) 
示例22
def draw_1(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1) 
示例23
def draw_2(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_2(length, level-1)
        turtle.left(60)
        draw_2(length, level-1)
        turtle.right(180-60)
        draw_2(length, level-1)
        turtle.left(60)
        draw_2(length, level-1) 
示例24
def draw_1(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1) 
示例25
def draw_1(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1) 
示例26
def draw_2(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_2(length, level-1)
        turtle.left(60)
        draw_2(length, level-1)
        turtle.right(180-60)
        draw_2(length, level-1)
        turtle.left(60)
        draw_2(length, level-1) 
示例27
def draw_1(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.right(90)
        draw_1(length, level-1)
        turtle.left(90)
        draw_1(length, level-1) 
示例28
def draw_2(length, level):
    if level < 1:
        turtle.fd(length)
    else:
        length = length/3
        
        draw_2(length, level-1)
        turtle.left(60)
        draw_2(length, level-1)
        turtle.right(180-60)
        draw_2(length, level-1)
        turtle.left(60)
        draw_2(length, level-1) 
示例29
def horizontal(dx):  # 做到相对横坐标为dx的水平线
    te.seth(0)
    te.pendown()
    te.fd(dx)
    te.penup() 
示例30
def vertical(dy):  # 做到相对纵坐标为dy的垂直线
    te.seth(-90)
    te.pendown()
    te.fd(dy)
    te.penup()
    te.seth(0)