Начальный коммит Изменения, которые будут включены в коммит: новый файл: 1_draw.py новый файл: eg.py
66 lines
1.8 KiB
Python
Executable File
66 lines
1.8 KiB
Python
Executable File
#!/bin/bash
|
||
|
||
# Проверка наличия Python и pygame
|
||
if ! command -v python3 &> /dev/null; then
|
||
echo "Ошибка: Python3 не установлен"
|
||
exit 1
|
||
fi
|
||
|
||
# Проверка наличия pygame
|
||
if ! python3 -c "import pygame" 2>/dev/null; then
|
||
echo "Ошибка: pygame не установлен"
|
||
echo "Установите его командой: pip install pygame"
|
||
exit 1
|
||
fi
|
||
|
||
# Создаем временный Python файл
|
||
TEMP_FILE=$(mktemp --suffix=.py)
|
||
|
||
# Записываем код во временный файл
|
||
cat > "$TEMP_FILE" << 'EOF'
|
||
import pygame
|
||
from pygame.draw import *
|
||
|
||
pygame.init()
|
||
|
||
FPS = 30
|
||
screen = pygame.display.set_mode((400, 400))
|
||
|
||
# Рисование фигур
|
||
rect(screen, (255, 0, 255), (100, 100, 200, 200))
|
||
rect(screen, (0, 0, 255), (100, 100, 200, 200), 5)
|
||
polygon(screen, (255, 255, 0), [(100,100), (200,50),
|
||
(300,100), (100,100)])
|
||
polygon(screen, (0, 0, 255), [(100,100), (200,50),
|
||
(300,100), (100,100)], 5)
|
||
circle(screen, (0, 255, 0), (200, 175), 50)
|
||
circle(screen, (255, 255, 255), (200, 175), 50, 5)
|
||
|
||
pygame.display.update()
|
||
clock = pygame.time.Clock()
|
||
finished = False
|
||
|
||
print("Рисование завершено. Нажмите любую клавишу для выхода...")
|
||
|
||
while not finished:
|
||
clock.tick(FPS)
|
||
for event in pygame.event.get():
|
||
if event.type == pygame.QUIT:
|
||
finished = True
|
||
elif event.type == pygame.KEYDOWN:
|
||
finished = True
|
||
elif event.type == pygame.MOUSEBUTTONDOWN:
|
||
finished = True
|
||
|
||
pygame.quit()
|
||
EOF
|
||
|
||
# Запускаем Python скрипт
|
||
echo "Запуск PyGame приложения..."
|
||
python3 "$TEMP_FILE"
|
||
|
||
# Удаляем временный файл
|
||
rm "$TEMP_FILE"
|
||
|
||
echo "Программа завершена"
|