90 lines
4.1 KiB
Markdown
90 lines
4.1 KiB
Markdown
|
|
|||
|
|
|||
|
#### Главная
|
|||
|
|
|||
|
|
|||
|
Карта и страница
|
|||
|
1. Размонтирование UseRef
|
|||
|
2. Удлиннить и переместить в левый нижний угол линейку и добавить возможность ее отключения
|
|||
|
3. Окно настроек карты (размер, цвета высот, цвета фона, выбор шаблона карты с сервера и тд)
|
|||
|
* Мертвые зоны карты - недоступность сигнала (x0y0 -> x1y1)
|
|||
|
4. Загрузка JSON
|
|||
|
|
|||
|
|
|||
|
Логика
|
|||
|
5. Окно БПЛА =>
|
|||
|
6. Контексное меню редактирования данных БПЛА (конкретные координаты карты начала маршрута, массив перемещений)
|
|||
|
7. Контексное меню сетевых параметров (ввод параметров антенны (частота и тд), настройки утухания и тд)
|
|||
|
8. Окно базовых станций =>
|
|||
|
9. Направление
|
|||
|
10. Радиус
|
|||
|
11. Частота
|
|||
|
12. Эмуляция движения относительно времени =>
|
|||
|
13. Задание скорости отдельных компонентов
|
|||
|
14. Время остановки эмуляции
|
|||
|
|
|||
|
Quic select - быстрые действия
|
|||
|
1. Быстрый выбор на карте мышью точки начала и на shift до отжатия точек движения
|
|||
|
2. Выбор групп БПЛА
|
|||
|
3. при зажатом шифте после выбора можно перетаскивать компоненты
|
|||
|
|
|||
|
Сервер =>
|
|||
|
1. Websocket соединение +> комната
|
|||
|
2. на Websocket соединении комната содержит до 8 участников
|
|||
|
3. Если ВСЕ участники покинули комнату но не завершили модулирование, соединение закроется через TIME_EXPIRE_ROOM минут с автосейвом по временной метке
|
|||
|
4. Отложенное вычисление: вычисления которые можно отложить - запускаем в фоне для ускорения модуляции
|
|||
|
|
|||
|
Структура данных сервера websocket ::
|
|||
|
```
|
|||
|
Соединение:
|
|||
|
Пользователи: [
|
|||
|
Пользователь: {
|
|||
|
Id:
|
|||
|
TimeActivate: ts(int64)
|
|||
|
IsActive: bool
|
|||
|
IsCreator? bool
|
|||
|
...
|
|||
|
}
|
|||
|
],
|
|||
|
Карта: {
|
|||
|
Имя <DbTemplateName|CustomNameFromUser>
|
|||
|
Координаты: [{...}],
|
|||
|
}
|
|||
|
БПЛА: [
|
|||
|
БПЛА: {
|
|||
|
Id:
|
|||
|
Name:
|
|||
|
Checked:{UserId, expire}
|
|||
|
{coords...}
|
|||
|
{params...}
|
|||
|
}
|
|||
|
]
|
|||
|
Базовые_станции: [
|
|||
|
BaseStation: {
|
|||
|
Id:
|
|||
|
Name:
|
|||
|
Checked:{UserId, expire}
|
|||
|
{coords...}
|
|||
|
{params...}
|
|||
|
}
|
|||
|
]
|
|||
|
ts_update:
|
|||
|
```
|
|||
|
При выборе объекта, если пользователь не убрал выделение, он остаеться выделенным x(120) секунд на сервере, после чего с объектом могут взаимодействовать другие пользователи
|
|||
|
|
|||
|
При нажатии на начало вычислений, отображается статус расчета и вскоре становиться активной кнопка просмотр записи
|
|||
|
#### Настройки
|
|||
|
|
|||
|
|
|||
|
1. Базовые настройки пользователя
|
|||
|
2. Если админ +>
|
|||
|
3. Настройки групп пользователей (сколько максимум и тд)
|
|||
|
3. Настройки времени остановки и автосейва при покидании комнат
|
|||
|
4. Настройки выгрузки и сохранения данных
|
|||
|
|
|||
|
#### Проведенные вычисления
|
|||
|
|
|||
|
1. Таблица проведенных вычислений
|
|||
|
2. Подгрузка из истории
|
|||
|
|