Skip to content

Latest commit

 

History

History
29 lines (26 loc) · 2.23 KB

README.md

File metadata and controls

29 lines (26 loc) · 2.23 KB

Development

cd collision_detection
npm install
npm start

Testing

npm run test //Выполнить тесты
npm run coverage //Оценка тестового покрытия
npm run watch //live reload для тестов

Задание

Реализовать симуляцию по следующим правилам

Часть 1

  1. В симуляции участвуют фигуры трех форм: круг, правильный треугольник, правильный шестиугольник. По желанию можно добавить другие формы.
  2. Для всех фигур должен быть реализован Collision Detection.
  3. Фигуры в начальный момент времени имеют случайные скорости и находятся в случайных местах
  4. Достаточно по 10 фигур каждого типа
  5. Нужно учесть коллизии с границами экрана, эти коллизии не влияют на число жизней фигуры. Можно реализовать отскок или появление с другой стороны.
  6. При столкновении с другой фигурой фигура меняет цвет, после 3 столкновений покидает симуляцию

Часть 2

  1. Необходимо сравнить максимальное число фигур, которые могут быть обработаны при использовании общего алгоритма CD и при использовании структуры QuadTree. Можно использовать другие структуры данных.
  2. Реализация фигур и QuadTree должна быть выполнена с использованием классов. Вы можете пойти по пути ECS или использовать классическую архитектуру на классах-контейнерах.
  3. Тестовое покрытие каждого класса должно быть не ниже 90%.
  4. *Хранить в узлах дерева не точки, а прямоугольники