From b44e2310387be5d3b52e48e14134da0cba4fce54 Mon Sep 17 00:00:00 2001 From: grokbot_ty Date: Fri, 25 Sep 2026 17:41:29 -0700 Subject: [PATCH] docs(design): add approved #99 tape-line overlay wireframe Wireframe settles fixed middle line + movable slab, tick-declared L, and shared crop_fill. Scaffolding scrubbed before shipping into the app. --- docs/design/issue-99-tape-line-overlay.html | 713 ++++++++++++++++++++ 1 file changed, 713 insertions(+) create mode 100644 docs/design/issue-99-tape-line-overlay.html diff --git a/docs/design/issue-99-tape-line-overlay.html b/docs/design/issue-99-tape-line-overlay.html new file mode 100644 index 0000000..1ee60ae --- /dev/null +++ b/docs/design/issue-99-tape-line-overlay.html @@ -0,0 +1,713 @@ + + + + + + +SlabUploader — tape-line overlay wireframe (issue #99) + + + +
+

SlabUploader · tape-line overlay — issue #99

+
+
+ Viewport + 412 + + + + +
+
+
+
+

Issue #99 — requirement coverage in this wireframe

+ + + + + + + + + + + +
ReqWhat it saysWhere it shows up
1 OverlayBlack ~2pt line + two rifle-scope end ticks; ticks draggable; replaces the cyan bbox + red arrow Tape line step: the black line, its two end ticks, the "was / now" pair below the stage, and the hint copy
2 ControlsPan / zoom / tilt the photo; ticks ≥44×44px, draggable, arrow + Shift+arrow fine nudge; one pointer pathZoom now has a visible row (− / slider / + / Fit) beside the tilt row, plus wheel, pinch, +/− keys and double-click to fit; pan = drag, tilt = handle + arrows
3 Fixed lineThe reference line is fixed in the MIDDLE of the rectangle, and it IS the crop line: its ends are the crop insetsThe line's x is computed from the frame, never from the slab's transform; the crop % moves only its two ends, (1 − fill)/2 of the long axis in from the top and the bottom
4 Crop %Global settings.crop_fill (default 90) replaces both FILL = 0.9 copies, read live, non-retro. It does not change the aspect ratioCrop fill control on the tape step and the Settings step: 90% puts the overlay 5% in from the top and the bottom; the 3:4 rectangle itself never changes
5 Crop contentPost-BG-removal, slab pixels only, transparent background, bounds = slab extentMask step note + the crop frame outline around the stage
6 Transform scopeTilt persists only to the calibration pic and its dimension-overlay clone; siblings keep their own orientationPhotos-ready step lineup: calibration + dimensioned copy tilted, backside sibling untouched
7 Doc fixcapture/types.ts:46 says "80%-fill"; live value is 90%Noted in the Implementation notes card on the Settings step
+
+ + +