Skip to content

View roll (Shift+NumPad 4/6), settings, and pbf-to-png tooling #95

@trailcode

Description

@trailcode

Summary

Feature branch Trailcode/hot-keys vs main.

Compare on GitHub: main...Trailcode/hot-keys

3D view roll

  • Shift+NumPad 4 / Shift+NumPad 6 roll the view around the screen Z axis (Blender-style), implemented in GUI::on_key (src/gui_mode.cpp) calling Occt_view::roll_view_z_deg.
  • Settings includes a 3D view navigation section: View roll step (degrees per key press). Persisted as gui.view_roll_step_deg in settings JSON (default 45, clamped to 0.1180).
  • Help link from Settings opens usage.md#view-roll.

Tooling

  • scripts/pbf-to-png.py (and scripts/pbf-to-png.ps1) rasterize PDF content to PNG; supports files mislabeled as .pbf via PyMuPDF.

Documentation

  • Updates to usage.md, usage-settings.md, and usage-occt-view.md for view roll and related behavior.

Notes / housekeeping

  • agents/issues/001-imgui-openpopup-id-stack-and-tables.md documents the ImGui ID-stack pitfall when using OpenPopup inside BeginTable (context: Settings UI work).
  • Refactor/cleanup in src/sketch_underlay.h and small src/gui.cpp / console tweaks.

Review checklist

  • View roll feels correct at default and after changing View roll step (including Ctrl+click numeric entry on the slider).
  • Settings round-trip: save/reload app and confirm gui.view_roll_step_deg.
  • Emscripten build still runs if you ship wasm from this branch.
  • Optional: run pbf-to-png.py on a sample .pbf/PDF asset.

Related

  • See CHANGELOG.md [Unreleased] for user-facing bullets aligned with this work.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions