Beispiel #1
0
def main():
    sd.set_screen_size(600, 700)
    zero_screen()
    first_screen()
    sd.sleep(2)
    sd.clear_screen()
    second_screen()
    sd.sleep(2)
    sd.clear_screen()
    third_screen()
    sd.sleep(2)
    snowfall()
Beispiel #2
0
# -*- coding: utf-8 -*-

import simple_draw as sd

# Шаг 1: Реализовать падение снежинки через класс. Внести в методы:
#  - создание снежинки с нужными параметрами
#  - отработку изменений координат
#  - отрисовку
sd.set_screen_size(1200, 600)


class Snowflake:
    def __init__(self):

        self.lenght = sd.random_number(10, 70)
        self.center_point = sd.get_point(sd.random_number(100, 400),
                                         sd.random_number(500, 600))

    def clear_previous_picture(self):
        sd.snowflake(center=self.center_point,
                     length=self.lenght,
                     color=sd.background_color)

    def move(self):
        self.center_point = sd.get_point(
            self.center_point.x + sd.randint(2, 10),
            self.center_point.y - sd.randint(2, 10))

    def draw(self):
        sd.snowflake(center=self.center_point,
                     length=self.lenght,
Beispiel #3
0
# -*- coding: utf-8 -*-
import simple_draw as sd
from old_lesson.rainbow import rainbow
from old_lesson.tree import tree
from old_lesson.snowfall import snowfall, snowdrift
from old_lesson.wall import wall

sd.set_screen_size(width=1400, height=780)

rainbow_point = [500, 0]
rainbow(rainbow_point, 950)

tree_point = sd.get_point(1200, 0)
tree(point=tree_point, angle=90, length=90, delta=30)
tree_point = sd.get_point(1120, 250)
tree(point=tree_point, angle=90, length=70, delta=30)
tree_point = sd.get_point(1150, 400)
tree(point=tree_point, angle=90, length=55, delta=30)

point_rectangle = sd.get_point(370, 0)
point_rectangle_2 = sd.get_point(820, 420)
sd.rectangle(point_rectangle,
             point_rectangle_2,
             color=sd.COLOR_YELLOW,
             width=1)
wall()

point_triangle = sd.get_point(350, 420)
v1 = sd.get_vector(start_point=point_triangle, angle=0, length=490, width=3)
v1.draw()
point_triangle_2 = v1.end_point
Beispiel #4
0
# -*- coding: utf-8 -*-

# (цикл for)
import simple_draw as sd

# Нарисовать стену из кирпичей. Размер кирпича - 100х50
# Использовать вложенные циклы for
brick_width, brick_height = 60, 20
width = 600
height = 600

sd.set_screen_size(width + 200, height + 200)
start_line_x = 0

for horizontal_line in range(start_line_x, height, brick_height):
    start_line_point = sd.get_point(start_line_x, horizontal_line)
    end_line_point = sd.get_point(width, horizontal_line)
    sd.line(start_line_point, end_line_point)

    if (horizontal_line + brick_height) % (brick_height * 2):
        x_shift = brick_width / 2
    else:
        x_shift = 0

    for vertical_line in range(0, width, brick_width):
        start_line_point = sd.get_point(vertical_line + x_shift,
                                        horizontal_line)
        end_line_point = sd.get_point(vertical_line + x_shift,
                                      horizontal_line + brick_height)
        sd.line(start_line_point, end_line_point)
Beispiel #5
0
#  - дерева
#  - смайлика
#  - снежинок
# Функции по модулям разместить по тематике. Название пакета и модулей - по смыслу.
# Создать модуль с функцией отрисовки кирпичного дома с широким окном и крышей.

# С помощью созданного пакета нарисовать эпохальное полотно "Утро в деревне".
# На картине должны быть:
#  - кирпичный дом, в окошке - смайлик.
#  - слева от дома - сугроб (предположим что это ранняя весна)
#  - справа от дома - дерево (можно несколько)
#  - справа в небе - радуга, слева - солнце (весна же!)
# пример см. lesson_005/results/04_painting.jpg
# Приправить своей фантазией по вкусу (коты? коровы? люди? трактор? что придумается)
import simple_draw as sd
sd.set_screen_size(1500, 800)

from drawing_tools import rainbow, wall, smile, tree, snowball

# радуга
rainbow.rainbow(x = 600, y = 100, radius = 950)

# дом с кирпичной стеной
left_x = 700
left_y = 100
right_x = 1100
right_y = 550
sd.rectangle(sd.get_point(left_x, left_y), sd.get_point(right_x, right_y), sd.COLOR_ORANGE, 1)
wall.wall(left_x, left_y, right_x, right_y)

# крыша
# Создать модуль с функцией отрисовки кирпичного дома с широким окном и крышей.


import simple_draw as sd
from lesson_005.drawing_functions.wall_with_a_window import draw_wall_with_a_window
from lesson_005.drawing_functions.triangle import triangle_2


def draw_house_with_a_roof(house_width_range, house_height_range):
    draw_wall_with_a_window(house_width_range, house_height_range)
    triangle_2(sd.get_point((house_width_range[0] - 50), (house_height_range[-1])), 0,
               length=((house_width_range[-1] + 50) - house_width_range[0]), color=(255, 255, 102))


if __name__ == '__main__':
    sd.set_screen_size(1600, 1000)
    house_width_range = range(400, 900)
    house_height_range = range(100, 500)
    draw_house_with_a_roof(house_width_range, house_height_range)

    sd.pause()
Beispiel #7
0
    for y in house_height_range[::brick_height]:
        row += 1
        shift_x = 0 if row % 2 else brick_width // 2
        for x in house_width_range[::brick_width]:
            x -= shift_x
            sd.rectangle(sd.get_point(x, y),
                         sd.get_point(x + brick_width, y + brick_height),
                         color=color,
                         width=3)
    sd.rectangle(
        (sd.get_point(house_width_range[0] - 50, house_height_range[0])),
        (sd.get_point(house_width_range[-1], house_height_range[-1])),
        color=color,
        width=3)
    sd.rectangle((sd.get_point(house_width_range[0] + 100,
                               house_height_range[0] + 100)),
                 (sd.get_point(house_width_range[-1] - 100,
                               house_height_range[-1] - 100)),
                 color=(204, 255, 255),
                 width=0)


if __name__ == "__main__":
    print("I am not being imported")
    sd.set_screen_size(1600, 900)
    house_width_range = range(300, 900)
    house_height_range = range(100, 600)
    draw_wall_with_a_window(house_width_range, house_height_range)

    sd.pause()