示例#1
0
def build_karel4():
    """
    This function builds the fourth karel
    """
    add = 3
    head = GOval(80, 55, x=190 + 120 * add, y=167)
    head.filled = True
    head.color = 'black'
    head.fill_color = 'gray'
    window.add(head)
    hair1 = GLine(590, 167, 590, 161)
    hair2 = GLine(588, 168, 585, 162)
    hair3 = GLine(592, 168, 595, 162)
    hair4 = GLine(585, 168, 582, 162)
    hair5 = GLine(595, 168, 598, 162)
    window.add(hair1)
    window.add(hair2)
    window.add(hair3)
    window.add(hair4)
    window.add(hair5)
    r_eye = GOval(14, 14, x=212 + 120 * add, y=189)
    r_eye.filled = True
    r_eye.color = 'black'
    r_eye.fill_color = 'blue'
    window.add(r_eye)
    l_eye = GOval(14, 14, x=235 + 120 * add, y=189)
    l_eye.filled = True
    l_eye.color = 'black'
    l_eye.fill_color = 'blue'
    window.add(l_eye)
    hands = GRect(105, 45, x=177 + 120 * add, y=237)
    hands.filled = True
    hands.color = 'black'
    hands.fill_color = 'lime'
    window.add(hands)
    body_1 = GRect(60, 65, x=201 + 120 * add, y=223)
    body_1.filled = True
    body_1.color = 'black'
    body_1.fill_color ='blue'
    window.add(body_1)
    body_2 = GRect(80, 60, x=190 + 120 * add, y=230)
    body_2.filled = True
    body_2.color = 'black'
    body_2.fill_color = 'blue'
    window.add(body_2)
    r_foot = GOval(29, 24, x=190 + 120 * add, y=290)
    r_foot.filled = True
    r_foot.color = 'black'
    r_foot.fill_color = 'red'
    window.add(r_foot)
    l_foot = GOval(29, 24, x=241 + 120 * add, y=290)
    l_foot.filled = True
    l_foot.color = 'black'
    l_foot.fill_color = 'red'
    window.add(l_foot)
    label = GRect(20, 20, x=218+120*add, y=130)
    label.filled = True
    label.fill_color = 'forestgreen'
    label.color = 'forestgreen'
    window.add(label)
示例#2
0
def couldsOval(position_x,position_y):
    """
    The following code print out some cloud
    """
    for i in range(position_x,window.width,100):
        clouds = GOval(50,30,x=i,y=position_y+10)
        window.add(clouds)
        clouds.filled = True
        clouds.color = "Blue"
        clouds.fill_color = "Blue"
    for j in range(position_x+25,window.width,100):
        clouds = GOval(40,30,x=j,y=position_y)
        window.add(clouds)
        clouds.filled = True
        clouds.color = "Blue"
        clouds.fill_color = "Blue"
    for k in range(position_x+25,window.width,100):
        clouds = GOval(40,30,x=k,y=position_y+20)
        window.add(clouds)
        clouds.filled = True
        clouds.color = "Blue"
        clouds.fill_color = "Blue"
    for l in range(position_x-25,window.width,100):
        clouds = GOval(40,30,x=l,y=position_y)
        window.add(clouds)
        clouds.filled = True
        clouds.color = "Blue"
        clouds.fill_color = "Blue"
    for m in range(position_x-25,window.width,100):
        clouds = GOval(40,30,x=m,y=position_y+20)
        window.add(clouds)
        clouds.filled = True
        clouds.color = "Blue"
        clouds.fill_color = "Blue"
示例#3
0
def dinosaur():
    dinosaur_img = GOval(250, 400, x=25, y=540)
    dinosaur_img.filled = True
    dinosaur_img.fill_color = 'green'
    dinosaur_img.color = 'green'
    window.add(dinosaur_img)
    dinosaur_head_img = GOval(230, 300, x=100, y=600)
    dinosaur_head_img.filled = True
    dinosaur_head_img.fill_color = 'green'
    dinosaur_head_img.color = 'green'
    window.add(dinosaur_head_img)
    dinosaur_eye_img = GOval(30, 50, x=200, y=585)
    dinosaur_eye_img.filled = True
    dinosaur_eye_img.fill_color = 'lightgreen'
    dinosaur_eye_img.color = 'lightgreen'
    window.add(dinosaur_eye_img)
    dinosaur_eye1_img = GOval(15, 15, x=212, y=590)
    dinosaur_eye1_img.filled = True
    dinosaur_eye1_img.fill_color = 'black'
    dinosaur_eye1_img.color = 'black'
    window.add(dinosaur_eye1_img)
    dinosaur_eye1_img = GOval(5, 5, x=222, y=590)
    dinosaur_eye1_img.filled = True
    dinosaur_eye1_img.fill_color = 'white'
    dinosaur_eye1_img.color = 'black'
    window.add(dinosaur_eye1_img)
示例#4
0
def face(dx=0, dy=0, main_color='greenyellow', necklace_color='purple'):
    """
    Function: draw face
    Principle: use ellipse subtraction to create curved shape
    :param dx: x-axis displacement
    :param dy: y-axis displacement
    :param main_color: main color
    :param necklace_color: necklace color
    """
    face = GOval(350, 200, x=dx + 135, y=dy + 135)
    face.filled = True
    face.color = main_color
    face.fill_color = main_color
    window.add(face)

    necklace = GOval(300, 70, x=dx + 160, y=dy + 270)
    necklace.filled = True
    necklace.color = necklace_color
    necklace.fill_color = necklace_color
    window.add(necklace)

    necklace_x = GOval(330, 100, x=dx + 145, y=dy + 215)
    necklace_x.filled = True
    necklace_x.color = main_color
    necklace_x.fill_color = main_color
    window.add(necklace_x)
示例#5
0
def ear(dx=0, dy=0, main_color='greenyellow', back_color='white'):
    """
    Function: draw ears
    Principle: use ellipse subtraction to create curved shape
    :param dx: x-axis displacement
    :param dy: y-axis displacement
    :param back_color: background color
    :param main_color: main color
    """
    l_ear = GOval(80, 150, x=dx + 80, y=dy + 150)
    l_ear.filled = True
    l_ear.color = main_color
    l_ear.fill_color = main_color
    window.add(l_ear)

    l_ear_x = GOval(40, 140, x=dx + 70, y=dy + 155)
    l_ear_x.filled = True
    l_ear_x.color = back_color
    l_ear_x.fill_color = back_color
    window.add(l_ear_x)

    r_ear = GOval(80, 150, x=dx + 460, y=dy + 150)
    r_ear.filled = True
    r_ear.color = main_color
    r_ear.fill_color = main_color
    window.add(r_ear)

    r_ear_x = GOval(40, 140, x=dx + 510, y=dy + 155)
    r_ear_x.filled = True
    r_ear_x.color = back_color
    r_ear_x.fill_color = back_color
    window.add(r_ear_x)
示例#6
0
def mac_window():
    # create Mac window
    big_rect = GRect(750, 500, x=5, y=5)
    big_rect.color = 'lightgrey'
    # create tool bar
    small_rect = GRect(750, 18, x=5, y=5)
    small_rect.filled = True
    small_rect.color = 'lightgrey'
    small_rect.fill_color = 'gainsboro'
    # create close window button
    oval_1 = GOval(12, 12, x=7, y=7)
    oval_1.filled = True
    oval_1.color = 'tomato'
    oval_1.fill_color = 'tomato'
    # create minimize window button
    oval_2 = GOval(12, 12, x=27, y=7)
    oval_2.filled = True
    oval_2.color = 'gold'
    oval_2.fill_color = 'gold'
    # create maximize window button
    oval_3 = GOval(12, 12, x=47, y=7)
    oval_3.filled = True
    oval_3.color = 'limegreen'
    oval_3.fill_color = 'limegreen'

    window.add(big_rect)
    window.add(small_rect)
    window.add(oval_1)
    window.add(oval_2)
    window.add(oval_3)
示例#7
0
def build_karel1():
    """
    This function builds the first karel
    """
    head = GOval(80, 55, x=190, y=167)
    head.filled = True
    head.color = 'black'
    head.fill_color = 'gray'
    window.add(head)
    r_eye = GRect(13, 13, x=212, y=189)
    r_eye.filled = True
    r_eye.color = 'black'
    r_eye.fill_color = 'blue'
    window.add(r_eye)
    l_eye = GRect(13, 13, x=235, y=189)
    l_eye.filled = True
    l_eye.color = 'black'
    l_eye.fill_color = 'blue'
    window.add(l_eye)
    r_eyeb = GLine(212, 185, 225, 185)
    window.add(r_eyeb)
    l_eyeb = GLine(235, 185, 248, 185)
    window.add(l_eyeb)
    hands = GRect(105, 45, x=177, y=237)
    hands.filled = True
    hands.color = 'black'
    hands.fill_color = 'lime'
    window.add(hands)
    body_1 = GRect(60, 65, x=201, y=223)
    body_1.filled = True
    body_1.color = 'black'
    body_1.fill_color = 'blue'
    window.add(body_1)
    body_2 = GRect(80, 60, x=190, y=230)
    body_2.filled = True
    body_2.color = 'black'
    body_2.fill_color = 'blue'
    window.add(body_2)
    r_foot = GOval(29, 24, x=190, y=290)
    r_foot.filled = True
    r_foot.color = 'black'
    r_foot.fill_color = 'red'
    window.add(r_foot)
    l_foot = GOval(29, 24, x=241, y=290)
    l_foot.filled = True
    l_foot.color = 'black'
    l_foot.fill_color = 'red'
    window.add(l_foot)
    label = GPolygon()
    label.add_vertex((230, 130))
    label.add_vertex((218, 150))
    label.add_vertex((242, 150))
    label.filled = True
    label.fill_color = 'firebrick'
    label.color = 'firebrick'
    window.add(label)
示例#8
0
def draw(mouse):
    stroke = GOval(SIZE, SIZE, x=mouse.x - SIZE / 2, y=mouse.y - SIZE / 2)
    stroke.filled = True
    if mouse.x >= window.width / 2:
        stroke.color = 'red'
        stroke.fill_color = 'red'
    else:
        stroke.color = 'blue'
        stroke.fill_color = 'blue'
    window.add(stroke)
示例#9
0
def draw(event):
    if event.x > window.width // 2:
        stroke = GOval(SIZE, SIZE)
        stroke.color = 'black'
        stroke.filled = True
        stroke.fill_color = stroke.color
    else:
        stroke = GOval(SIZE, SIZE)
        stroke.color = 'blue'
        stroke.filled = True
        stroke.fill_color = stroke.color
    for i in range(2):
        window.add(stroke, event.x + SIZE // 2, event.y + SIZE // 2)
示例#10
0
def build_karel3():
    """
    This function builds the third karel
    """
    add = 2
    head = GOval(80, 55, x=190 + 120 * add, y=167)
    head.filled = True
    head.color = 'black'
    head.fill_color = 'gray'
    window.add(head)
    r_eye = GRect(13, 13, x=212 + 120 * add, y=189)
    r_eye.filled = True
    r_eye.color = 'black'
    r_eye.fill_color = 'blue'
    window.add(r_eye)
    l_eye = GRect(13, 13, x=235 + 120 * add, y=189)
    l_eye.filled = True
    l_eye.color = 'black'
    l_eye.fill_color = 'blue'
    window.add(l_eye)
    hands = GRect(105, 45, x=177 + 120 * add, y=237)
    hands.filled = True
    hands.color = 'black'
    hands.fill_color = 'lime'
    window.add(hands)
    body_1 = GRect(60, 65, x=201 + 120 * add, y=223)
    body_1.filled = True
    body_1.color = 'black'
    body_1.fill_color = 'blue'
    window.add(body_1)
    body_2 = GRect(80, 60, x=190 + 120 * add, y=230)
    body_2.filled = True
    body_2.color = 'black'
    body_2.fill_color = 'blue'
    window.add(body_2)
    r_foot = GOval(29, 24, x=190 + 120 * add, y=290)
    r_foot.filled = True
    r_foot.color = 'black'
    r_foot.fill_color = 'red'
    window.add(r_foot)
    l_foot = GOval(29, 24, x=241 + 120 * add, y=290)
    l_foot.filled = True
    l_foot.color = 'black'
    l_foot.fill_color = 'red'
    window.add(l_foot)
    label = GOval(22, 22, x=218+120*add, y=130)
    label.filled = True
    label.fill_color = 'goldenrod'
    label.color = 'goldenrod'
    window.add(label)
示例#11
0
def add_rainbow(window):
    """This function add a rainbow to the window"""

    # initial setting for the rainbow
    size_ini_cir = 600
    x_cir = WINDOW_WIDTH * 0.5
    y_cir = WINDOW_HEIGHT * 0.85
    int_cir = 50

    # plot the concentric circles
    for i in range(len(RAINBOW_COLOR_LIST)):
        size_cir = size_ini_cir - int_cir * i
        circle = GOval(size_cir,
                       size_cir,
                       x=x_cir - size_cir / 2,
                       y=y_cir - size_cir / 2)
        circle.filled = True
        circle.color = RAINBOW_COLOR_LIST[i]
        circle.fill_color = RAINBOW_COLOR_LIST[i]
        window.add(circle)

    # block the lower part of the circles by overlaying a box
    rect = GRect(size_ini_cir,
                 size_ini_cir / 2,
                 x=x_cir - size_ini_cir / 2,
                 y=y_cir)
    rect.filled = True
    rect.color = RAINBOW_COLOR_LIST[-1]
    rect.fill_color = RAINBOW_COLOR_LIST[-1]
    window.add(rect)
示例#12
0
def build_blocks():
    """
    This function builds the blocks of the drawing
    """
    block_1 = GRect(375, 80, x=20, y=330)
    block_1.filled = True
    block_1.color = 'firebrick'
    block_1.fill_color = 'firebrick'
    window.add(block_1)
    block_2 = GRect(375, 80, x=405, y=330)
    block_2.filled = True
    block_2.color = 'steelblue'
    block_2.fill_color = 'steelblue'
    window.add(block_2)
    block_3 = GRect(375, 80, x=20, y=420)
    block_3.filled = True
    block_3.color = 'goldenrod'
    block_3.fill_color = 'goldenrod'
    window.add(block_3)
    block_4 = GRect(375, 80, x=405, y=420)
    block_4.filled = True
    block_4.color = 'forestgreen'
    block_4.fill_color = 'forestgreen'
    window.add(block_4)
    block_5 = GRect(60, 40, x=720, y=120)
    block_5.filled = True
    block_5.color = 'dodgerblue'
    block_5.fill_color = 'dodgerblue'
    window.add(block_5)
    circle_1 = GOval(90, 90, x=20, y=170)
    circle_1.filled = True
    circle_1.color = 'blueviolet'
    circle_1.fill_color = 'blueviolet'
    window.add(circle_1)
    def fire_work(self):
        """
        This method creates a firework animation.
        """

        # Numbers of the firework
        for i in range(10):
            f_x = random.randint(self.window.width // 8,
                                 self.window.width * 7 // 8)
            f_y = random.randint(self.window.height // 10,
                                 self.window.height * 9 // 10)
            size = random.randint(4, 7)

            # The size of the firework
            for j in range(size):
                fire = GOval(10 + 20 * j,
                             10 + 20 * j,
                             x=f_x - 10 * j,
                             y=f_y - 10 * j)

                # Choose color randomly
                fire.color = self.choose_color()
                self.window.add(fire)
                pause(100)

                self.window.remove(fire)

            pause(500)
示例#14
0
def eiffel_tower_bottom():
    """
    This function will draw the eiffel tower's bottom on the canvas.
    """
    bottom = GRect(398, 100, x=401, y=705)
    bottom.filled = True
    bottom.fill_color = 'gray'
    bottom.color = 'gray'
    window.add(bottom)
    for i in range(20):
        rect = GRect(90-(i*5), 10, x=401, y=700+i*5)
        rect.filled=True
        rect.fill_color = 'white'
        rect.color = 'white'
        window.add(rect)
    for i in range(20):
        rect = GRect(90-(i*5), 10, x=709+i*5, y=700+i*5)
        rect.filled = True
        rect.fill_color = 'white'
        rect.color = 'white'
        window.add(rect)
    arch = GOval(150, 150, x=523, y=730)
    arch.filled = True
    arch.fill_color = 'white'
    arch.color = 'white'
    window.add(arch)
示例#15
0
    def breed(self):
        """
        This method create three circle and one rectangle to compose a cloud shape.
        Every time the cloud shape will be displayed in random position of window.
        """
        dx = random.randint(10, window.width - 10)
        dy = random.randint(10, window.height - 10)

        rect = GRect(70, 30)
        rect.color = 'mintcream'
        rect.filled = True
        rect.fill_color = 'mintcream'
        self.list.append(rect)

        for i in range(3):
            circle = GOval(60, 60)
            circle.color = 'mintcream'
            circle.filled = True
            circle.fill_color = 'mintcream'
            self.list.append(circle)

        window.add(self.list[0], window.width + 45 + dx, 55 + dy)
        window.add(self.list[1], window.width + 10 + dx, 25 + dy)
        window.add(self.list[2], window.width + 45 + dx, 0 + dy)
        window.add(self.list[3], window.width + 80 + dx, 25 + dy)
示例#16
0
def arch_triomphe_body():
    """
    This function will draw the body part of the
    Arch de Triomphe.
    """
    body = GRect(280,280, x=860, y=520)
    body.filled = True
    body.fill_color = 'white'
    body.color = 'white'
    window.add(body)
    arch = GOval(170,290,x=915,y=610)
    arch.filled = True
    arch.fill_color = 'red'
    arch.color = 'red'
    window.add(arch)
    middle_line = GRect(280, 15, x=860, y=660)
    middle_line.filled = True
    middle_line.fill_color = 'red'
    middle_line.color = 'red'
    window.add(middle_line)
    upper_line = GRect(280, 15, x=860, y=600)
    upper_line.filled = True
    upper_line.fill_color = 'red'
    upper_line.color = 'red'
    window.add(upper_line)
    top_line = GRect(280, 20, x=860, y=550)
    top_line.filled = True
    top_line.fill_color = 'red'
    top_line.color = 'red'
    window.add(top_line)
示例#17
0
def activate(event):
    if mouse_lock == 0:
        ball_bouncing()
    else:
        nothing = GOval(5, 5)
        nothing.color = 'white'
        window.add(nothing, event.x, event.y)
示例#18
0
def button(dx=0, dy=0):
    """
    Function: draw button
    Principle: use ellipse subtraction to create curved shape
    :param dx: x-axis displacement
    :param dy: y-axis displacement
    """
    l_button = GOval(100, 40, x=dx + 40, y=dy + 175)
    l_button.filled = True
    l_button.color = 'gray'
    l_button.fill_color = 'gray'
    window.add(l_button)

    u_button = GOval(100, 40, x=dx + 40, y=dy + 168)
    u_button.filled = True
    u_button.color = 'red'
    u_button.fill_color = 'red'
    window.add(u_button)
示例#19
0
def arch_triomphe_deco():
    """
    This function will add the deco part on the Arch de Triomphe.
    """
    # middle circle part
    middle_circle = GOval(60, 60, x=970, y=580)
    middle_circle.filled = True
    middle_circle.fill_color = 'white'
    middle_circle.color = 'white'
    window.add(middle_circle)
    middle_circle_inside = GOval(40, 40, x=980, y=590)
    middle_circle_inside.filled = True
    middle_circle_inside.fill_color = 'red'
    middle_circle_inside.color = 'red'
    window.add(middle_circle_inside)
    # dots on the roof
    for i in range(9):
        small_dot = GOval(15,15, x=875+(i*30), y=528)
        small_dot.filled = True
        small_dot.fill_color = 'red'
        small_dot.color = 'red'
        window.add(small_dot)
    # small squares on the pillar
    for i in range(2):
        small_square = GRect(20, 20, x=890+(i*200), y=630)
        small_square.filled = True
        small_square.fill_color = 'red'
        small_square.color = 'red'
        window.add(small_square)
    # ovals on the pillar
    for i in range(2):
        small_oval = GOval(20,50, x=875+(i*230), y=690)
        small_oval.filled = True
        small_oval.fill_color = 'red'
        small_oval.color = 'red'
        window.add(small_oval)
    # lines on the pillar
    for i in range(2):
        small_line = GRect(30, 5, x=870 + (i * 230), y=750)
        small_line.filled = True
        small_line.fill_color = 'red'
        small_line.color = 'red'
        window.add(small_line)
示例#20
0
def draw_circle(r, g, b, x, y):
    """
    draw a circle and add to window on given (x, y), painting with given color.
    """
    circle = GOval(PIXEL_SIZE, PIXEL_SIZE)
    circle.filled = True
    circle.fill_color = (r, g, b)
    circle.color = (r, g, b)
    window.add(circle, x, y)
    update_x_y_boundary(x, y)
示例#21
0
def smile(dx=0, dy=0, main_color='greenyellow'):
    """
    Function: draw smile
    Principle: use ellipse subtraction to create curved shape
    :param dx: x-axis displacement
    :param dy: y-axis displacement
    :param main_color: main color
    """
    smile_line = GOval(220, 70, x=dx + 200, y=dy + 230)
    smile_line.filled = True
    smile_line.color = 'black'
    smile_line.fill_color = 'black'
    window.add(smile_line)

    smile_x = GOval(220, 67, x=dx + 200, y=dy + 230)
    smile_x.filled = True
    smile_x.color = main_color
    smile_x.fill_color = main_color
    window.add(smile_x)
示例#22
0
def top(dx=0, dy=0, main_color='greenyellow'):
    """
    Function: draw top
    Principle: use ellipse subtraction to create curved shape
    :param dx: x-axis displacement
    :param dy: y-axis displacement
    :param main_color: main color
    """
    pillar = GOval(30, 200, x=dx + 295, y=dy + 50)
    pillar.filled = True
    pillar.color = main_color
    pillar.fill_color = main_color
    window.add(pillar)

    ball = GOval(40, 40, x=dx + 290, y=dy + 40)
    ball.filled = True
    ball.color = main_color
    ball.fill_color = main_color
    window.add(ball)
示例#23
0
 def tie_fighter_hull(self):
     size = self.brick_smaller()
     hull = GOval(size * 6, size * 6)
     hull.filled = True
     hull.fill_color = "grey"
     hull.color = "grey"
     self.window.add(hull,
                     x=self.window_width / 2 - hull.width / 2,
                     y=self.window_height / 2 - hull.height / 2 - 400)
     return hull
示例#24
0
def build_a_ball():
    """
    This function creates a ball with GOval
    :return: object, ball
    """
    ball = GOval(SIZE, SIZE, x=START_X, y=START_Y)
    ball.filled = True
    ball.fill_color = 'lightpink'
    ball.color = 'lightpink'
    return ball
示例#25
0
def ryan():
    r_face = GOval(200, 175)
    window.add(r_face, x=100, y=150)
    r_face.color = 'peru'
    r_face.fill_color = 'peru'
    r_l_ear = GOval(50, 55)
    window.add(r_l_ear, x=93, y=165)
    r_l_ear.color = 'peru'
    r_l_ear.fill_color = 'peru'
    r_r_ear = GOval(50, 55)
    window.add(r_r_ear, x=253, y=165)
    r_r_ear.color = 'peru'
    r_r_ear.fill_color = 'peru'

    r_l_brow = GRect(35, 5)
    window.add(r_l_brow, x=140, y=210)
    r_l_brow.filled = 1
    r_r_brow = GRect(35, 5)
    window.add(r_r_brow, x=225, y=210)
    r_r_brow.filled = 1
    r_l_eye = GOval(12, 12)
    window.add(r_l_eye, x=150, y=230)
    r_l_eye.filled = 1
    r_r_eye = GOval(12, 12)
    window.add(r_r_eye, x=235, y=230)
    r_r_eye.filled = 1

    r_nose1 = GOval(35, 30)
    r_nose1.color = 'ivory'
    r_nose1.filled = True
    r_nose1.fill_color = 'ivory'
    window.add(r_nose1, x=173, y=250)
    r_nose2 = GOval(35, 30)
    r_nose2.color = 'ivory'
    r_nose2.filled = True
    r_nose2.fill_color = 'ivory'
    window.add(r_nose2, x=197, y=250)
    r_nose3 = GOval(20, 15)
    r_nose3.filled = True
    window.add(r_nose3, x=193, y=245)
    ryan_name = GLabel('RYAN')
    ryan_name.font = 'Verdana-30-bold'
    window.add(ryan_name, x=155, y=380)
示例#26
0
 def tie_fighter_hull_window2(self):
     size = self.brick_smaller()
     hull_window2 = GOval(size * 2, size * 2)
     hull_window2.filled = True
     hull_window2.color = "wheat"
     self.window.add(hull_window2,
                     x=self.window_width / 2 - hull_window2.width / 2,
                     y=self.window_height / 2 - hull_window2.height / 2 -
                     400)
     return hull_window2
示例#27
0
 def ball(self):
     # Center a filled ball in the graphical window.
     b = GOval(self.ball_radius * 2, self.ball_radius * 2)
     # draw the ball
     b.filled = True
     b.fill_color = "blue"
     b.color = "blue"
     self.window.add(b,
                     x=self.window_width / 2 - self.ball_radius,
                     y=self.window_height / 2 - self.ball_radius)
     return b
示例#28
0
def hole_puncher(event):
    global count, x, y, hole
    count += 1
    if count % 2 == 1:
        hole = GOval(SIZE, SIZE, x=event.x - SIZE/2, y=event.y - SIZE/2)
        hole.color = 'black'
        window.add(hole)
    else:
        line = GLine(hole.x, hole.y, event.x, event.y)
        window.add(line)
        window.remove(hole)
示例#29
0
def rescue_light():
    #color database
    light_color = ["dimgrey", "lightgrey", "gainsboro", "whitesmoke"]

    light_beam = GPolygon()
    light_beam.color = "darkgrey"
    polygon_helper(light_beam, "darkgrey", (920, 350), (1300, 650), (1255, 250))
    bat_icon_background = GOval(385, 300, x = 870, y = 100)
    bat_icon_background.color = "darkgrey"
    obj_fill_color_add(bat_icon_background, "darkgrey")
    # gradually brighten the beam
    pause(1000)
    for s in light_color:
        light_beam.color = s
        light_beam.fill_color = s
        bat_icon_background.color = s
        bat_icon_background.fill_color = s
        pause(800)
    #batman icon in light
    bat_icon = GImage("batman.jpeg")
    window.add(bat_icon, bat_icon_background.x + 60, bat_icon_background.y + 45)
示例#30
0
def up(window):
    """
    :param window: window
    """
    head = GOval(200, 200)
    head.filled = True
    window.add(head,
               x=window.width / 2 - head.width / 2,
               y=window.height / 2 - head.height / 2)
    ear1 = GOval(100, 100)
    ear1.filled = True
    window.add(ear1, x=head.x - ear1.width / 2, y=head.y - ear1.height / 2)
    ear2 = GOval(100, 100)
    ear2.filled = True
    window.add(ear2,
               x=head.x + (head.width - ear2.width / 2),
               y=head.y - ear2.height / 2)
    heads1 = GOval(head.width // 2.5,
                   head.height - 80,
                   x=window.width / 2 - 70,
                   y=window.height / 2 - 70)
    heads1.filled = True
    window.add(heads1)
    heads1.fill_color = 'Moccasin'
    heads2 = GOval(head.width // 2.5,
                   head.height - 80,
                   x=window.width / 2 - 10,
                   y=window.height / 2 - 70)
    heads2.filled = True
    heads2.color = 'Moccasin'
    window.add(heads2)
    heads2.fill_color = 'Moccasin'
    mouth = GOval(head.width - 20,
                  70,
                  x=window.width / 2 - 90,
                  y=window.height / 2 + 10)
    mouth.filled = True
    window.add(mouth)
    mouth.color = 'Moccasin'
    mouth.fill_color = 'Moccasin'