Требуется разработать десктопное приложение, представляющее собой интерактивный 2D-планшет (рабочее поле), на котором отображаются: • собственный объект (условно «центр»); • другие движущиеся объекты (цели); • пользовательские сектора (зоны) с заданными параметрами. Планшет работает в декартовой системе координат (X/Y) и не использует морские карты. Масштаб, ориентация и данные задаются программно или через интерфейс. 1. Рабочее поле (маневренный планшет) 1.1 Отображение • 2D-плоскость с координатной сеткой: • ось X — вправо; • ось Y — вверх; • центр планшета — собственный объект (по умолчанию). • масштаб (например: 1 ед. = 10 кбт , 100 кбт, 1000 кбт — на выбор). • возможность: • масштабирования (zoom); • смещения рабочей области (pan). 1.2 Единицы измерения • расстояния — в кабельтовых (морских милях); • углы — в градусах (0–360, по часовой стрелке от направления «вверх»). 2. Собственный объект (Own Object) 2.1 Отображение • иконка/треугольник с указанием направления движения; • подпись (опционально). 2.2 Параметры • положение (X, Y); • курс (угол); • скорость (единицы/сек). 2.3 Управление • ручное изменение курса и скорости; • режим автоматического движения по курсу; • обновление положения во времени (таймер). 3. Цели (другие объекты) 3.1 Отображение • точки или иконки на планшете; • линия вектора движения (опционально); • подпись (ID/имя). 3.2 Параметры цели • ID; • положение (X, Y); • курс; • скорость. 3.3 Управление • добавление/удаление цели; • редактирование параметров; • автоматическое перемещение цели во времени. 4. Пользовательские сектора (зоны) 4.1 Геометрия сектора Сектор представляет собой часть круга (клин): • начальный угол; • конечный угол или • центральный угол + угол раскрытия; • максимальный радиус. 4.2 Параметры сектора • радиус; • углы (в градусах); • цвет; • прозрачность; • текстовая подпись; • видимость (вкл/выкл). 4.3 Режимы привязки • Привязка к собственному объекту • центр сектора совпадает с положением объекта; • сектор поворачивается вместе с курсом объекта. • Фиксированный сектор • сектор имеет фиксированные координаты центра; • не зависит от курса объекта. 5. Управление секторами • список всех созданных секторов; • создание нового сектора через форму; • редактирование параметров; • удаление сектора; • включение/отключение отображения без перезапуска. 6. Логика обновления • обновление сцены с фиксированным шагом времени (например, 10–30 FPS); • пересчёт: • положений объектов; • ориентации привязанных секторов; • визуального отображения. 7. Технические требования (упрощённые) • Язык/платформа (обсуждаемо): • Python (PyQt / PySide), • C++ (Qt), • C# (WPF / WinUI), • или аналогичный стек. • 2D-графика (Canvas / Scene / QGraphicsView и т.п.). • Код с комментариями. • Архитектура, допускающая расширение (добавление внешних источников данных в будущем). 8. Результат работы • рабочее приложение; • исходный код; • краткая инструкция по запуску; • демонстрационный сценарий (несколько целей и секторов). 9. Что НЕ требуется • работа с морскими картами; • интеграция с реальным оборудованием; • сертификация; • высокоточная геодезия.