Skip to content

v0.26.0 — The human-usable bench: five-group UI, placement dialogs, live diagnostics

Latest

Choose a tag to compare

@emircbngl emircbngl released this 15 Jul 12:12

v0.26.0 — The human-usable bench: a five-group UI, placement dialogs, live diagnostics

The N-panel is now built for people, not only for agents — and the opto-mechanics keep getting
more honest. Regression 447/447, validation 320/320, mesh-health gate 30 element meshes +
310 mount parts clean.

Added — a task-ordered UI

  • Five top panels — Setup / Place / Simulate / Inspect / Present — replace the former nine.
    Setup and Simulate open by default; everything else is a closed header until needed. Adaptive
    Optics lives in one place, the MCP bridge moved to Present ▸ Tools & Integration, and advanced
    fields sit behind a show_advanced preference, leaving ten core element fields always visible
    with full-word, unit-labelled names ("Focal Length (mm)", "Wavelength (nm)").
  • Placement from the UI: "Offset XYZ…" places the active element at an (x, y, z) mm offset
    from any optical reference (reference/world frame, orientation matching, F9 fine-tune);
    "Grid…" seats it on a breadboard hole (Column/Row, nearest-hole pre-fill); "Rail…" drives a
    rail-mounted optic to a position in mm. All three go through the base-pose helper, so
    mount/DOF semantics survive — and the matching API endpoints were migrated to the same helper.
  • Browse Examples… opens the full 26-example catalog (Michelson first).
  • Live diagnostics in Inspect: Diagnose caches BAD/WARN results (header badge); every row
    carries a pre-filled "Fix…" — suggestions stay advisory (accept / refuse / partial). Any scene
    edit marks the cache stale. Empty scenes, dark detectors and disabled buttons all say why.

Added — opto-mechanical realism

  • Post-holder bases bolt to the table: a socket-head cap screw seats in the counterbore, and
    when the post axis misses a breadboard hole the base grows a slotted clamping ear reaching the
    nearest hole. Posts seat on the holder floor above the screw — the screw-first, post-second
    assembly is physically true.
  • Standard posts keep the catalog Ø1/2" diameter at any length; the Ø1" pillar appears only
    in the vertical-fold/periscope assembly that really uses it.

Fixed — the updater tells the truth

A failed check reports the failure instead of claiming "you're on the latest version"; a
cancelled download can't be reported as staged; platform installs refuse the self-updater end
to end; downloads are pre-checked against this project's GitHub Releases path and a
sha256-prefixed hash. Verified by 17 headless scenarios plus a live-index end-to-end check.

Changed — physics on the trace

  • Beam tubes carry their real wavelength color — an SHG bench finally shows IR in, green out.
  • The circulator's internal path now carries OPL and Gaussian propagation (verified to 3e-13 mm).
  • +17 independent textbook checks replace code-vs-code comparisons — validation 303 → 320.

Performance (measured)

Re-dressing an unchanged bench: ~820 ms → ~0.3 ms; a full rebuild ~556 ms; dressing is
order-deterministic; inspect_all runs one trace instead of 2N+2 (2.8 → 0.4 ms); repeated
angular-spectrum propagation 35.1 → 24.6 ms at 1024².


Install / update: drag the one-click link from https://emircbngl.github.io/blender-optics-simulator/
into Blender 4.2+, or download the attached zip. Existing installs update from inside Blender.

Cite this version: DOI 10.5281/zenodo.21376367 · concept DOI 10.5281/zenodo.20778997