diff --git a/services/pcp-tgu-ops-ui/src/features/tgu-editor/EditorPanels.tsx b/services/pcp-tgu-ops-ui/src/features/tgu-editor/EditorPanels.tsx index 58c1db1..822f593 100644 --- a/services/pcp-tgu-ops-ui/src/features/tgu-editor/EditorPanels.tsx +++ b/services/pcp-tgu-ops-ui/src/features/tgu-editor/EditorPanels.tsx @@ -359,7 +359,8 @@ export function ShootPanel({ value={routeRoll ?? 0} onChange={(event) => { const deg = Number.parseFloat(event.target.value); - if (Number.isFinite(deg)) onRouteRollSet(deg); + // Крен — не точнее одного знака после запятой. + if (Number.isFinite(deg)) onRouteRollSet(Math.round(deg * 10) / 10); }} /> diff --git a/services/pcp-tgu-ops-ui/src/features/tgu-editor/TguEditorTab.tsx b/services/pcp-tgu-ops-ui/src/features/tgu-editor/TguEditorTab.tsx index f486906..a3bfedd 100644 --- a/services/pcp-tgu-ops-ui/src/features/tgu-editor/TguEditorTab.tsx +++ b/services/pcp-tgu-ops-ui/src/features/tgu-editor/TguEditorTab.tsx @@ -305,7 +305,8 @@ export function TguEditorTab({ selectedSpacecraftId, selectedPlan, appliedRange, const half = Math.min(DEFAULT_ROUTE_DURATION_MS, passDurationMs) / 2; const mid = (selectedShootPass.startMs + selectedShootPass.endMs) / 2; setRouteWindow({ startMs: mid - half, endMs: mid + half }); - setRouteRoll(selectedShootPass.rollDeg ?? 0); + // Крен — не точнее одного знака после запятой (как и при ручном вводе). + setRouteRoll(Math.round((selectedShootPass.rollDeg ?? 0) * 10) / 10); }, [rightMode, selectedShootPass]); useEffect(() => {