chore: Add --bbox SmokeTest diagnostic and v0.3.1 release notes
BBoxDump prints per-leaf world-space bounding boxes (to work out each connector's mating-face axis); wired as `SmokeTest --bbox <file>`. Also tracks the previously untracked v0.3.1 release notes. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
# v0.3.1 — First public release: 3D STEP viewer with measurement & assembly fit-check
|
||||
|
||||
A lightweight Windows desktop viewer for STEP / STL / DXF — open a part, measure it,
|
||||
and check how two parts fit together, without firing up a heavyweight CAD suite.
|
||||
|
||||
## ✨ New features
|
||||
|
||||
**View & assembly tree**
|
||||
* Import multiple CAD files at once (STEP / STL / DXF) via the toolbar, drag-and-drop,
|
||||
or the command line (`STPViewer.exe a.stp b.stp`).
|
||||
* STEP product structure is rebuilt into an **assembly tree** — toggle visibility, recolor
|
||||
(cascades to children), and zoom-to any node; whole-file remove and outline-edge toggle.
|
||||
* Smooth orbit / zoom / pan even on large assemblies (hundreds of thousands of triangles).
|
||||
|
||||
**Measurement** (pick a mode, click the model)
|
||||
* Point (snaps to nearby vertices), two-point distance + ΔX/ΔY/ΔZ, edge length
|
||||
(line / curve / arc with radius), face area + surface type, circle center / radius /
|
||||
diameter / circumference, angle between two faces or edges, and face-to-face minimum gap.
|
||||
* Edge length, radius and angle use **exact B-rep values**; area and gap are mesh-based.
|
||||
* Switch units **mm ⇄ inch** anytime — existing measurements and 3D labels convert live.
|
||||
|
||||
**Assembly fit-check** (mate a male/female pair and verify)
|
||||
* **Two-point align** — click a point on the part to move, then the target point, to slide
|
||||
the whole file into place.
|
||||
* **Three-point align** — pick 3 feature points on each file to solve a full rotate+translate
|
||||
in one shot, for parts that aren't already oriented the same way.
|
||||
* **Axis rotate** — rotate the selected file ±90° about X / Y / Z to square it up.
|
||||
* **Drag mode** (hand cursor) — left-press a part and drag it along the screen plane.
|
||||
* **Gizmo** — XYZ arrows to move along an axis (independent of view angle, ideal for pushing
|
||||
along a mating axis) and rings to rotate any angle. The gizmo always renders on top, so it
|
||||
is never hidden inside a solid part.
|
||||
* **Interference check** — for two visible files, shows red intersection lines where they
|
||||
collide, or the minimum gap when they don't (gap ≈ 0 means a clean fit).
|
||||
|
||||
**Section & export**
|
||||
* Section view along X / Y / Z with a position slider and flip, to inspect mating internals.
|
||||
* Export measurements to CSV (opens cleanly in Excel) and save a 2× PNG screenshot of the view.
|
||||
|
||||
## 📦 Downloads
|
||||
|
||||
Two builds are produced:
|
||||
|
||||
| Build | Needs .NET 8 Desktop Runtime? | Notes |
|
||||
|-------|-------------------------------|-------|
|
||||
| **Standard** (`STPViewer_v0.3.1`) | ✅ Yes | Smaller; for machines that already have the runtime |
|
||||
| **Portable** (`STPViewer_v0.3.1_portable`) | ❌ No | Runtime bundled — unzip and run, no install / admin needed |
|
||||
|
||||
Run `STPViewer v0.3.1.exe`.
|
||||
|
||||
## 🔗 Links
|
||||
* Overview & usage:
|
||||
[README.md](https://github.com/ETWen/STPViewer/blob/main/README.md)
|
||||
* Architecture & design:
|
||||
[ARCHITECTURE.md](https://github.com/ETWen/STPViewer/blob/main/ARCHITECTURE.md)
|
||||
|
||||
**Full changelog:** first public release — [commit history](https://github.com/ETWen/STPViewer/commits/v0.3.1)
|
||||
Reference in New Issue
Block a user