Skip to content

Все мы любим ascii-(псевдо)графику... Так почему бы не сделать отрисовку геометрических фигур именно ей?! В README.md, там есть 256-цветные символы в консоли, обработка событий мыши, столкновения и еще пара фич...

Notifications You must be signed in to change notification settings

DaniinXorchenabo/coursework1

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

79 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Coursework 1

Представляет из себя консольное приложение с псевдографикой (ascii-символы). Предназначено для рисования фигур по точкам. Координаты фигур задаются в коде.

Фигуры перемещаются и поворачиваются со случайной скоростью. Пользователь может (если это поддерживает консоль) перетаскивать фигуру мышкой. При наложении одной фигуры на другую происходит образование новой фигуры.

Run

Install dependencies

Для запуска приложения необходимо предварительно установить Python >= 3.6, добавить путь к интерпретатору Python в переменную среды PATH, установить пакетный менеджер pip и выполнить установку зависимостей:

cd coursework1/production
pip install -r requirements.txt

Run app

После чего можно запустить приложение

.../coursework1/production> main.exe

Demonstration of the work

Геометрическиефигуры двигаются с случайно заданной начальной скоростью и случайно заданной скоростью поворота. При столкновении со стенками консоли они отталкиваются. При этом, если угол фигуры столкнулся со стенкой, то фигура поворачивается не вогруг своего геометрического центра (как это происходит во все остальное время), а вокруг точки сопрокосновения с границей консоли. Это сделано для того, чтобы фигура за счет поворота не выходила за границы консоли.

17-06-2021.132350.mp4

Пользователь может перемещать фигуры мышкой. Для этого необходимо поместить курсор внутрь фигуры, зажать левую кнопку мыши и, не отжимая левой кнопки, повести курсор мыши в место, в которое необходимо переместить фигуру.

При наложении одной фигуры на другую происходит склеивание фигур. т.е. несколько простых фигур объединяются в одну сложную фигуру, которая имеет единую скорость передвижения и поворота. При перемещении, сложная фигура ведёт себя точно также, как и простая. Сложные фигуры также могут быть склеены в одну фигуру.

17-06-2021.132641.mp4

Из-за использования слабого железа при записи демонстрации работы FPS проседало и в некоторых кадрах фигуры не отрисовывались частисно или полностью. Без записи экрана подобного эффекта не наблюдалось

Building

Build app:

cd coursework1
builder.BAT

Build DLL library:

You need in python (and pip) installing

cd coursework1/create_dll_lib
pip install -r requirements.txt
python dll_generator.py

Пояснительная записка

Курсовой_проект_1.pdf

Курсовой_проект_1.docx

About

Все мы любим ascii-(псевдо)графику... Так почему бы не сделать отрисовку геометрических фигур именно ей?! В README.md, там есть 256-цветные символы в консоли, обработка событий мыши, столкновения и еще пара фич...

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published