cd collision_detection
npm install
npm start
npm run test //Выполнить тесты
npm run coverage //Оценка тестового покрытия
npm run watch //live reload для тестов
Реализовать симуляцию по следующим правилам
- В симуляции участвуют фигуры трех форм: круг, правильный треугольник, правильный шестиугольник. По желанию можно добавить другие формы.
- Для всех фигур должен быть реализован Collision Detection.
- Фигуры в начальный момент времени имеют случайные скорости и находятся в случайных местах
- Достаточно по 10 фигур каждого типа
- Нужно учесть коллизии с границами экрана, эти коллизии не влияют на число жизней фигуры. Можно реализовать отскок или появление с другой стороны.
- При столкновении с другой фигурой фигура меняет цвет, после 3 столкновений покидает симуляцию
- Необходимо сравнить максимальное число фигур, которые могут быть обработаны при использовании общего алгоритма CD и при использовании структуры QuadTree.
- Реализация фигур и QuadTree должна быть выполнена с использованием классов
- Тестовое покрытие каждого класса должно быть не ниже 90%.
- *Хранить в узлах дерева не точки, а прямоугольники