Загрузка данных


from turtle import *

# --- 1. НАСТРОЙКА ОКНА И ЧЕРЕПАШКИ (без слова screen) ---
setup(width=800, height=600)
title("Пример оформления: Рисовалка")
bgcolor("#dce8d4")  # Светло-зеленый фон, как на картинке

t = Turtle()
t.hideturtle() # Скрываем саму черепашку, будем рисовать только интерфейс
t.speed(0)     # Максимальная скорость отрисовки интерфейса
t.penup()

# --- 2. ФУНКЦИИ ДЛЯ РИСОВАНИЯ ЭЛЕМЕНТОВ ---

def move(x, y):
    """Перемещение пера без рисования"""
    t.penup()
    t.goto(x, y)
    t.pendown()

def draw_rect(x, y, width, height, color):
    """Рисует прямоугольник"""
    move(x, y)
    t.color(color)
    t.begin_fill()
    for _ in range(2):
        t.forward(width)
        t.left(90)
        t.forward(height)
        t.left(90)
    t.end_fill()

def draw_text(x, y, text, size=12, color="black"):
    """Пишет текст в нужном месте"""
    move(x, y)
    t.color(color)
    t.write(text, align="left", font=("Arial", size, "normal"))

def draw_circle(x, y, radius, color):
    """Рисует круг (для кнопок ширины пера)"""
    move(x, y - radius)
    t.color(color)
    t.begin_fill()
    t.circle(radius)
    t.end_fill()

# --- 3. РИСУЕМ ИНТЕРФЕЙС (слева направо) ---

# 3.1. Текст слева: "Возможность выбирать цветовую тему"
draw_text(-350, 20, "Возможность", 16)
draw_text(-350, -5, "выбирать", 16)
draw_text(-350, -30, "цветовую тему", 16)

# 3.2. Центральный блок (Сам холст для рисования)
# Рисуем рамку холста
move(-150, 180)
t.color("#888888")
t.pensize(1)
for _ in range(2):
    t.forward(300)
    t.right(90)
    t.forward(350)
    t.right(90)

# Пояснение сверху (как на картинке)
draw_text(-150, 200, "Перемещение вверх, вниз, вправо, влево с помощью стрелок", 9, "#555555")

# 3.3. Палитра цветов (Над холстом)
colors = ["#d05a38", "#d99d3d", "#d6c24d", "#8ca348", "#7ba87a", "#8b6d82", "#a36173"]
letters = ["R", "O", "Y", "G", "L", "B", "V"]
start_x = -130

for i in range(len(colors)):
    draw_rect(start_x + (i * 25), 170, 20, 20, colors[i])
    draw_text(start_x + (i * 25) + 5, 150, letters[i], 8, "#555555")

# Подпись "Фон" и переключатель
draw_text(-150, 110, "Фон", 9, "#555555")
draw_rect(-150, 80, 25, 25, "#6b4c3a")
draw_text(-150, 60, "D", 10, "#555555")

# 3.4. Блок справа: "Возможность изменять ширину пера"
draw_text(180, 30, "Возможность", 14)
draw_text(180, 5, "изменять", 14)
draw_text(180, -20, "ширину пера", 14)

# Рисуем шкалу с кружками (Ширина пера)
pen_widths = [2, 4, 6, 9, 12]
start_y = 60
for i in range(len(pen_widths)):
    radius = pen_widths[i]
    draw_circle(280, start_y - (i * 35), radius, "#555555")
    draw_text(310, start_y - (i * 35) - 5, str(i + 1), 10, "#555555")

# --- 4. ЗАВЕРШЕНИЕ ---
# Оставляем окно открытым (вместо screen.mainloop())
done()