Exemplo n.º 1
1
def main():
    points = [Point(x=230, y=450), Point(x=240, y=460), Point(x=230, y=470), Point(x=240, y=480)]
    polygon(point_list=points)
    points2 = [Point(p.x + 20, p.y + 20) for p in points]
    lines(point_list=points2, color=COLOR_DARK_ORANGE)
    line(start_point=Point(x=20, y=20), end_point=Point(x=40, y=300))
    square(left_bottom=Point(400, 300, ), side=100)
    rectangle(
        left_bottom=Point(x=200, y=200),
        right_top=Point(x=300, y=300),
        color=COLOR_DARK_GREEN
    )
    rectangle(
        left_bottom=Point(x=400, y=300),
        right_top=Point(x=300, y=400),
        color=COLOR_DARK_GREEN
    )
    sleep(2)
    clear_screen()
    vector(start=Point(x=230, y=260), angle=70, length=200, color=COLOR_PURPLE)
    for i in range(10):
        point = random_point()
        color = random_color()
        radius = random_number(20, 60)
        circle(center_position=point, radius=radius, color=color, width=0)
    sleep(2)
    clear_screen()
    for i in range(10):
        point = random_point()
        color = random_color()
        dx = random_number(30, 100)
        dy = random_number(30, 100)
        right_top = Point(x=point.x + dx, y=point.y + dy)
        ellipse(left_bottom=point, right_top=right_top, color=color)
    v3 = Vector(start_point=Point(0, 0), direction=45, length=50)
    for direction in range(0, 181, 20):
        v = Vector(start_point=Point(x=300, y=300), direction=direction, length=100)
        v.draw()
        v2 = Vector(start_point=v.end_point, direction=direction + 30, length=50)
        v2.draw(color=COLOR_GREEN)
        v2.add(v3)
        v2.draw(color=COLOR_ORANGE)
    snowflake(center=Point(), length=60, factor_b=0.2, factor_c=100)
    sleep(2)
    for k in range(2):
        y = 500
        for i in range(10):
            clear_screen()
            y -= 30
            for x in [100, 200, 300, 400, 500]:
                radius = random_number(30, 50)
                point = Point(x=x, y=y)
                snowflake(center=point, length=radius)
                mouse_point, mouse_buttons = get_mouse_state()
                print("mouse_state is {} + {}".format(mouse_point, mouse_buttons))
            if user_want_exit(sleep_time=0.1):
                break
        if user_want_exit(0):
            break
Exemplo n.º 2
0
def house():
    point_list_1 = []

    point_list_1.append(sd.get_point(230, 380))
    point_list_1.append(sd.get_point(475, 480))
    point_list_1.append(sd.get_point(720, 380))
    left_bot = sd.get_point(0, 0)
    right_top = sd.get_point(1200, 80)
    start_point = sd.get_point(250, 80)
    end_point = sd.get_point(700, 80)
    end_point_1 = sd.get_point(700, 380)

    sd.rectangle(left_bottom=left_bot, right_top=right_top, color=sd.COLOR_DARK_ORANGE, width=0)  # Земля

    v1 = sd.vector(start=start_point, angle=90, length=300, color=sd.COLOR_YELLOW, width=2)
    v2 = sd.vector(start=end_point, angle=90, length=300, color=sd.COLOR_YELLOW, width=2)
    v3 = sd.vector(start=end_point_1, angle=180, length=450, color=sd.COLOR_YELLOW, width=2)
    v4 = sd.vector(start=start_point, angle=0, length=450, color=sd.COLOR_YELLOW, width=2)

    wall(x_start=300, x_end=650, y_start=80, y_end=380, color=sd.COLOR_YELLOW)

    sd.square(left_bottom=sd.get_point(400, 145), side=150, color=sd.background_color, width=0)

    sd.square(left_bottom=sd.get_point(400, 145), side=150, color=sd.COLOR_YELLOW, width=2)

    sd.polygon(point_list=point_list_1, color=sd.COLOR_RED, width=0)
Exemplo n.º 3
0
def first_screen():
    points = [
        sd.Point(x=230, y=450),
        sd.Point(x=240, y=460),
        sd.Point(x=230, y=470),
        sd.Point(x=240, y=480),
    ]
    sd.polygon(point_list=points)
    points2 = [sd.Point(p.x + 20, p.y + 20) for p in points]
    sd.lines(point_list=points2, color=sd.COLOR_DARK_ORANGE, width=2)
    sd.line(start_point=sd.Point(x=20, y=20),
            end_point=sd.Point(x=40, y=300),
            width=2)
    sd.square(left_bottom=sd.Point(
        400,
        300,
    ), side=100, width=2)
    sd.rectangle(
        left_bottom=sd.Point(x=200, y=200),
        right_top=sd.Point(x=300, y=300),
        color=sd.COLOR_DARK_GREEN,
        width=2,
    )
    sd.rectangle(
        left_bottom=sd.Point(x=400, y=300),
        right_top=sd.Point(x=300, y=400),
        color=sd.COLOR_DARK_GREEN,
        width=2,
    )
    if TAKE_SNAPSHOTS:
        sd.take_snapshot(path=SNAPSHOTS_PATH)
Exemplo n.º 4
0
def window():
    sd.square(left_bottom=point_frame_window,
              side=110,
              color=sd.COLOR_ORANGE,
              width=5)
    sd.square(left_bottom=point_window,
              side=100,
              color=sd.COLOR_WHITE,
              width=0)
Exemplo n.º 5
0
def sun(counter):
    if counter % 3:
        sun_clear = sd.get_point(000, 600)
        sd.square(sun_clear, side=220, color=sd.background_color, width=0)
        sun1()

    else:
        sun_clear = sd.get_point(000, 600)
        sd.square(sun_clear, side=220, color=sd.background_color, width=0)
        sun2()
Exemplo n.º 6
0
def window_and_roof():

    points_for_roof = [
        sd.Point(350, 250),
        sd.Point(750, 250),
        sd.Point(550, 330)
    ]
    sd.lines(points_for_roof, width=0, closed=True)
    sd.rectangle(sd.Point(500, 110), sd.Point(600, 210), width=0)
    sd.polygon(points_for_roof, color=sd.COLOR_RED, width=0)
    sd.square(sd.Point(500, 110), 100, color=sd.COLOR_BLACK, width=4)
Exemplo n.º 7
0
def house():
    # рисуем дом с окном, без крыши, раскрашиваем в кирпич
    house_x = 220
    house_y = 10
    ground_start_x = 0
    ground_start_y = 0
    ground_finish_x = 1200
    ground_finish_y = 50

    start_house_point = sd.get_point(house_x, house_y)
    start_ground_point = sd.get_point(ground_start_x, ground_start_y)
    finish_ground_point = sd.get_point(ground_finish_x, ground_finish_y)
    sd.rectangle(start_ground_point,
                 finish_ground_point,
                 sd.COLOR_GREEN,
                 width=0)
    sd.square(left_bottom=start_house_point,
              side=350,
              color=sd.COLOR_DARK_ORANGE,
              width=0)
    sd.square(left_bottom=start_house_point,
              side=350,
              color=sd.COLOR_WHITE,
              width=2)

    def draw_briks(start, finish):
        for house_x in range(start, finish, 50):
            start_point = sd.get_point(house_x, house_y)
            end_point = sd.get_point(house_x + 50, house_y + 25)
            sd.rectangle(start_point, end_point, color=sd.COLOR_WHITE, width=2)

    for row, house_y in enumerate(range(10, 350, 25)):
        if row % 2 != 0:
            draw_briks(220, 570)
        else:
            draw_briks(245, 545)

    window_x = 300
    window_y = 85

    start_window_point = sd.get_point(window_x, window_y)
    sd.square(left_bottom=start_window_point,
              side=200,
              color=sd.COLOR_BLUE,
              width=0)
    sd.square(left_bottom=start_window_point,
              side=200,
              color=sd.COLOR_WHITE,
              width=2)

    # рисуем треугольную крышу дома
    roof_point = (sd.get_point(220,
                               360), sd.get_point(570,
                                                  360), sd.get_point(395, 500))
    sd.polygon(roof_point, color=sd.COLOR_DARK_RED, width=0)
Exemplo n.º 8
0
def house():
    # roof
    point_list = [sd.get_point(350, 237), sd.get_point(695, 237), sd.get_point(520, 338), sd.get_point(350, 238)]
    sd.polygon(point_list=point_list, color=sd.COLOR_DARK_ORANGE, width=0)
    # window
    window_point = sd.get_point(465, 72)
    sd.square(left_bottom=window_point, side=110, color=sd.COLOR_WHITE, width=0)
    # outside walls
    square_point = sd.get_point(400, -5)
    sd.square(left_bottom=square_point, side=240, color=sd.COLOR_WHITE, width=1)
    # wall
    brick_x = 40
    brick_y = 20

    for row, y in enumerate(range(0, 220, 18)):
        x0 = 400 if row % 2 == 0 else 420
        for x in range(x0, 620, 40):
            left_bottom = sd.get_point(x, y)
            right_top = sd.get_point(x + brick_x, y + brick_y)
            sd.rectangle(left_bottom, right_top, color=sd.COLOR_WHITE, width=1)
Exemplo n.º 9
0
def house(color, start_x, start_y, side_y_size, side_x_size, brick_x_size,
          brick_y_size, width):
    import simple_draw as sd
    from village import wall

    # вызываем стену

    wall.wall(color=color,
              start_x=start_x,
              start_y=start_y,
              side_y_size=side_y_size,
              side_x_size=side_x_size,
              brick_x_size=brick_x_size,
              brick_y_size=brick_y_size,
              width=width)

    house_length = wall.wall_length[0]
    end_y_wall = wall.wall_length[1]

    # рисуем крышу
    point_1 = sd.get_point(x=start_x, y=end_y_wall + brick_y_size)
    point_2 = sd.get_point(x=start_x + house_length * .3,
                           y=side_y_size + +brick_y_size * 3)
    point_3 = sd.get_point(x=house_length, y=end_y_wall + brick_y_size)
    point_list = [point_1, point_2, point_3]
    sd.polygon(point_list=point_list, color=sd.COLOR_DARK_RED, width=0)

    # рисуем окно
    window_point = sd.get_point(x=side_x_size / 1.5, y=side_y_size / 2)
    sd.square(left_bottom=window_point,
              side=side_y_size / 3,
              color=sd.COLOR_WHITE,
              width=0)

    # рисуем землю
    point_1 = sd.get_point(x=0, y=0)
    point_2 = sd.get_point(x=0, y=100)
    point_3 = sd.get_point(x=sd.resolution[0], y=100)
    point_4 = sd.get_point(x=sd.resolution[0], y=0)
    point_list = [point_1, point_2, point_3, point_4]
    sd.polygon(point_list=point_list, color=sd.COLOR_DARK_ORANGE, width=0)
Exemplo n.º 10
0
def house():
    left_bottom = sd.get_point(375, 0)
    sd.square(left_bottom, side=350, color=sd.COLOR_DARK_RED, width=0)

    for row, y in enumerate(range(0, 350, 25)):
        x0 = 0 if row % 2 else -25  # Как вам такой приём? :)
        x1 = x0 + 400
        for x in range(x1, 700, 50):
            point1 = sd.get_point(x, y)
            point2 = sd.get_point(x + 50, y + 25)
            brick = sd.rectangle(point1,
                                 point2,
                                 width=1,
                                 color=(127, 127, 127))

    left_bottom = sd.get_point(475, 125)
    sd.square(left_bottom, side=150, color=sd.COLOR_BLACK, width=0)

    point1 = sd.get_point(350, 350)
    point2 = sd.get_point(550, 450)
    point3 = sd.get_point(750, 350)
    point_list = point1, point2, point3
    sd.polygon(point_list, color=sd.COLOR_DARK_ORANGE, width=0)
coord_x = 300
coord_y = 100
start_point = sd.get_point(coord_x - 3, coord_y)
paint_wall.square(start_point=start_point,
                  angle=0,
                  length=211,
                  color=color_home)
paint_wall.wall(coord_x=coord_x, coord_y=coord_y, height=201)
start_point = sd.get_point(coord_x - 1, coord_y + 211)
paint_wall.triangle(start_point=start_point,
                    angle=0,
                    length=211,
                    color=color_home)
start_point = sd.get_point(coord_x + 51, coord_y + 51)
sd.square(left_bottom=start_point,
          side=103,
          color=sd.background_color,
          width=0)
paint_wall.square(start_point=start_point,
                  angle=0,
                  length=101,
                  color=color_home)
paint_smile.smile(x=coord_x + 101,
                  y=coord_y + 101,
                  size=0.5,
                  color=sd.COLOR_CYAN)

# - справа от дома - дерево
root_point = sd.get_point(900, 30)
paint_fractal.draw_branches_v2(start_point=root_point, angle=90, length=100)

#  - справа в небе - радуга, слева - солнце (весна же!)
Exemplo n.º 12
0
def sky(start_y):
    color = (216, 243, 246)
    point = sd.get_point(x=0, y=start_y)
    sd.square(left_bottom=point, side=1200, color=color, width=0)
Exemplo n.º 13
0
def window(start_x, length, height):
    point = sd.get_point(start_x + (length / 3), height / 4)
    sd.square(left_bottom=point,
              side=length / 3,
              color=sd.COLOR_WHITE,
              width=0)
Exemplo n.º 14
0
        end_point=sd.get_point(902, 421),
        color=sd.COLOR_DARK_RED,
        width=2)

# top of house
sd.line(start_point=sd.get_point(300, 420),
        end_point=sd.get_point(900, 420),
        color=sd.COLOR_RED,
        width=3)

# roof
sd.line(start_point=sd.get_point(300, 420),
        end_point=sd.get_point(600, 620),
        color=sd.COLOR_RED,
        width=3)
sd.line(start_point=sd.get_point(600, 620),
        end_point=sd.get_point(900, 420),
        color=sd.COLOR_RED,
        width=3)
# window
sd.square(left_bottom=sd.get_point(543, 152),
          side=116,
          color=sd.COLOR_RED,
          width=6)
sd.square(left_bottom=sd.get_point(543, 152),
          side=116,
          color=sd.COLOR_ORANGE,
          width=0)

# sd.pause()
Exemplo n.º 15
0
def square(left_bottom, side, color, width):
    sd.square(left_bottom=left_bottom, side=side, color=color, width=width)
Exemplo n.º 16
0
def cell(x, y):
    cell_point = sd.get_point(x, y)
    sd.square(left_bottom=cell_point,
              side=side,
              color=color,
              width=filling_cell)
Exemplo n.º 17
0
def frame():
    sd.square(left_bottom=sd.get_point(x=side * 2, y=side),
              side=side * 8,
              color=sd.COLOR_WHITE,
              width=4)
Exemplo n.º 18
0
def draw_window(start_point, length):
    sd.square(left_bottom=start_point,
              side=length,
              width=0,
              color=sd.background_color)
    sd.square(left_bottom=start_point, side=length, width=1)
# визуализировать функцию f(n) на плоскости c шагом 10
# вычислить остаток от целочисленного деления на 7 и отобразить цветом из набора
# 0 -> COLOR_DARK_RED
# 1 -> COLOR_DARK_ORANGE
# 2 -> COLOR_DARK_YELLOW
# 3 -> COLOR_DARK_GREEN
# 4 -> COLOR_DARK_CYAN
# 5 -> COLOR_DARK_BLUE
# 6 -> COLOR_DARK_PURPLE

# остаток от деления: 5 % 2 -> 1

from simple_draw import square, end, COLOR_DARK_PURPLE, Point


def f(x, y):
    return x / (y - 1)


for x in range(0, 600, 10):
    for y in range(0, 600, 10):
        z = f(x, y)
        color = ...
        square(left_bottom=Point(x, y), side=10, color=color)

# ++ попробовать другие функции x+y, x*y, x**2 + y**2, etc

# ++ с разным шагом

end()
Exemplo n.º 20
0
def tree():
    tree_clear = sd.get_point(700, 0)
    sd.square(tree_clear, side=550, color=sd.background_color, width=0)
    root_point = sd.get_point(900, 30)
    color = sd.COLOR_DARK_YELLOW
    draw_bunches(start_point=root_point, angle=90, length=80, color=color)