Skip to content

Add the element inspector panel - #82

Merged
matt-edmondson merged 1 commit into
mainfrom
claude/project-thread-ewd87m
Oct 7, 2026
Merged

matt-edmondson merged 1 commit into
mainfrom
claude/project-thread-ewd87m

Conversation

@matt-edmondson

Copy link
Copy Markdown
Contributor

Requested by Matt · project thread

Before: the app had no way to see what each element-set field's quantization is worth; DataTerm existed only behind tests.

After: ElementInspectorPanel shows one PropertyGrid section per OMM field with its value, the step the format writes it to, and the metres one step moves the position at a horizon chosen with a slider (0–30 days). The combined data term sits at the top. Orbital fields are editable, the sensitivities recompute on each edit, and "Reset to as written" restores the element set.

How: each figure is DataTerm.Measure's half-step shift for that field, doubled to read per whole step (linearised ∂r/∂field). The epoch is shown with its step but marked not measured, because DataTerm does not perturb it yet (item 27, #23). MEAN_MOTION_DDOT reads 0 m because SGP4 never reads it. Identity fields sit in a collapsed section. Until the catalogue panel lands, the panel shows the ISS element set committed in TleParserTests, and Select(ElementSet) is the hook the catalogue will call.

Not yet registered with the app: the shell (item 10) has not merged, so the one-line registration follows in a later commit once it does. Rendered headlessly through ImGuiAppHarness to check it draws without ImGui asserts (ISS, 1 day: data term 10.4 m; RAAN, argument of perigee and mean anomaly about 11.9 m per step each; mean motion 0.43 m). No committed test: Osculator.Tests does not reference the app project, and the arithmetic is DataTerm's, which DataTermTests already covers.

Fixes #33

🤖 Generated with Claude Code

https://claude.ai/code/session_0172daf2smMjPmMGvUhQo9fH


Generated by Claude Code

One PropertyGrid section per OMM field showing the value, the step the
format writes it to, and the metres one step is worth at a chosen horizon,
from DataTerm. Orbital fields are editable and the sensitivities follow.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0172daf2smMjPmMGvUhQo9fH
@matt-edmondson matt-edmondson self-assigned this Oct 7, 2026
@matt-edmondson
matt-edmondson merged commit 87cef81 into main Oct 7, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Element inspector (M5) is not started: no per-field value / quantization step / ∂r/∂field view, though DataTerm already computes the inputs

2 participants