From f791b63890992c529eed6a25a92481d6affc948c Mon Sep 17 00:00:00 2001 From: DCCONSTRUCTIONS Date: Sun, 26 Jul 2026 10:45:18 +0300 Subject: [PATCH] fix: clarify lidar source and processing result --- .../control-station/src/styles/workspaces.css | 31 ++++++++++ .../src/workspaces/LidarLocalSurfacePanel.tsx | 58 +++++++++++-------- .../src/workspaces/LidarQualityWorkspace.tsx | 8 ++- 3 files changed, 70 insertions(+), 27 deletions(-) diff --git a/apps/control-station/src/styles/workspaces.css b/apps/control-station/src/styles/workspaces.css index 91b7124..1953f06 100644 --- a/apps/control-station/src/styles/workspaces.css +++ b/apps/control-station/src/styles/workspaces.css @@ -3152,6 +3152,10 @@ background: #06070a; } +.lidar-local-surface__stage[data-loading="true"] { + grid-template-columns: minmax(0, 1fr); +} + .lidar-local-surface__stage .lidar-ground-scene, .lidar-local-surface__stage .lidar-ground-scene-placeholder { min-height: 30rem; @@ -3159,6 +3163,33 @@ border-radius: 0; } +.lidar-local-surface__stage .lidar-ground-scene-placeholder > span { + color: var(--nodedc-text-secondary); + font-size: 0.62rem; + line-height: 1.4; +} + +.lidar-local-surface__diagnostics { + display: grid; + gap: 0.72rem; + margin-top: 0.35rem; + border-top: 1px solid var(--station-hairline); + padding-top: 1rem; +} + +.lidar-local-surface__diagnostics > header { + display: grid; + gap: 0.24rem; +} + +.lidar-local-surface__diagnostics > header p { + max-width: 48rem; + margin: 0; + color: var(--nodedc-text-muted); + font-size: 0.62rem; + line-height: 1.5; +} + .lidar-local-surface__frame { display: grid; align-content: start; diff --git a/apps/control-station/src/workspaces/LidarLocalSurfacePanel.tsx b/apps/control-station/src/workspaces/LidarLocalSurfacePanel.tsx index 61a72bc..b8bc611 100644 --- a/apps/control-station/src/workspaces/LidarLocalSurfacePanel.tsx +++ b/apps/control-station/src/workspaces/LidarLocalSurfacePanel.tsx @@ -241,12 +241,12 @@ export function LidarLocalSurfacePanel({ >
- ЛОКАЛЬНАЯ МОДЕЛЬ LIDAR · L2.6 + РЕЗУЛЬТАТ ОБРАБОТКИ · L2.6

Поверхность и наблюдаемые препятствия

- Поверхность строится по предыдущему TTL-окну и проверяется на - следующем кадре. Текущий кадр исключён из prediction input; - константа 1,27 м и команды в сканер не используются. + Основной результат выбранного интервала. Поверхность строится по + предыдущему TTL-окну и проверяется на следующем кадре; текущий кадр + и фиксированная высота в prediction input не используются.

) : null} - {timeline && review && selectedFrameIndex !== null ? ( - <> - - - - ) : null} - {frame ? (
) : null} -
+
{cloudFrame && frame ? ( ) : ( @@ -369,7 +354,7 @@ export function LidarLocalSurfacePanel({ {error ? "Ошибка" : "Загрузка"} - {error ?? "Читаем производную выбранной сцены…"} + {error ?? "Обработка производной выбранной сцены"}
)} {frame ? ( @@ -458,6 +443,31 @@ export function LidarLocalSurfacePanel({ ) : null}
+ + {timeline && review && selectedFrameIndex !== null ? ( +
+
+ ДИАГНОСТИКА ЗАПИСИ +

+ График и очередь ниже помогают выбрать кадр для разбора, но не + заменяют визуальную проверку результата выше. +

+
+ + +
+ ) : null} ); } diff --git a/apps/control-station/src/workspaces/LidarQualityWorkspace.tsx b/apps/control-station/src/workspaces/LidarQualityWorkspace.tsx index 9567897..a9e1954 100644 --- a/apps/control-station/src/workspaces/LidarQualityWorkspace.tsx +++ b/apps/control-station/src/workspaces/LidarQualityWorkspace.tsx @@ -276,16 +276,18 @@ export function LidarQualityWorkspace({
- {fieldReview ? "ОБЛАКО LIDAR · RAVNOVES00" : "ОБЛАКО LIDAR · ЗАПИСЬ"} + {fieldReview + ? "ИСХОДНАЯ ЗАПИСЬ LIDAR · RAVNOVES00" + : "ИСХОДНАЯ ЗАПИСЬ LIDAR"}

{fieldReview - ? `Городская сцена: ${selectedFieldWindow?.label ?? fieldReview.displayName}` + ? `Исходная сцена: ${selectedFieldWindow?.label ?? fieldReview.displayName}` : `Кадр ${groundFrameIndex + 1} из ${groundBenchmark?.frames ?? 0}`}

{fieldReview - ? "Выберите один из пяти интервалов, вращайте облако мышью и при необходимости включите экспериментальные маски обработки." + ? "Накопленное облако LiDAR и кадр камеры — контекст выбранного интервала. Результат обработки L2.6 расположен ниже." : "Полевая запись на этом хосте не подключена. Показываем доступную запись выбранного LiDAR без подмешивания публичных датасетов."}