UNS/TODO.md
2024-11-06 21:11:51 +07:00

4.2 KiB
Raw Blame History

Главная

Карта и страница

  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:int
            Coordinate:[int,int,int]
            TimeActivate: int64
            IsActive: bool
            IsCreator? bool
        }
    ], 
    БПЛА: [
        БПЛА: {
                Id:int
                Name:string
                Coordinate:[int,int,int]
                Checked:{UserId, expire}
                SignalRadius:string
                SignalFrequrency:int
        }
    ]
    Базовые_станции: [
        BaseStation: {
                Id:int
                Name:string
                Checked:{UserId, expire}
                AntennaDirection:[int,int,int]
                SignalRadius:string
                SignalFrequrency:int
        }
    ]
    ts_update:

При выборе объекта, если пользователь не убрал выделение, он остаеться выделенным x(120) секунд на сервере, после чего с объектом могут взаимодействовать другие пользователи

При нажатии на начало вычислений, отображается статус расчета и вскоре становиться активной кнопка просмотр записи

Настройки

  1. Базовые настройки пользователя
  2. Если админ +>
  3.  Настройки групп пользователей (сколько максимум и тд)
    
  4.  Настройки  времени остановки и автосейва при покидании комнат
    
  5. Настройки выгрузки и сохранения данных

Проведенные вычисления

  1. Таблица проведенных вычислений
  2. Подгрузка из истории