Editor's Path Properties has 'Path length' but no 'stitch length per path' — user wanting different stitch lengths for different paths (e.g., 3mm for outlines, 2.5mm for fills) has no per-path setting #368

Closed
opened 2026-10-04 03:58:20 +00:00 by Mark · 1 comment
Owner

Finding

grep -rn 'pathStitchLength\|stitchLength' src/components/editor/ returns 0. The editor has no per-path stitch length.

The Path Properties has density (0-1, which is the inverse of stitch length). The user can adjust density per path.

But the unit is "0-1 ratio" not "mm". The user can't directly say "this path uses 3mm stitches."

The fix is a per-path stitch length input (per #317's "show in mm" toggle).

This is similar to #317 and #351 — the same gap from different angles.

Where

  • Path Properties: src/components/editor/EditorRightPanel.tsx
  • No per-path stitch length: grep -rn 'pathStitchLength' src/components/editor/ returns 0

Suggested fix shape

  1. Type: add stitchLength?: number (in mm) to the StitchPath type.

  2. UI: a number input next to the density slider:

<div className="flex items-center gap-2">
  <label>Stitch length</label>
  <input
    type="number"
    step="0.1"
    value={(1 / p.density).toFixed(1)}
    onChange={(e) => onUpdateDensity(p.id, 1 / Number(e.target.value))}
    min={1}
    max={10}
    unit="mm"
    className="w-16 px-2 py-1 border rounded text-[11px]"
  />
</div>
  1. Bidirectional: changing the density updates the stitch length, and vice versa.

  2. Use cases:

  • Outlines use longer stitches (3mm) for speed
  • Fills use shorter stitches (2.5mm) for coverage

Severity

Low. The user can use the density slider. Power users with embroidery experience notice.

Discovered by

Gap analysis (2026-10-02) of editor path properties.

  • #317 (open) — Density in mm. Same family.
  • #351 (open) — Stitch length field. Same family.
  • Most embroidery software exposes stitch length directly. The editor's gap is the parallel.
## Finding `grep -rn 'pathStitchLength\|stitchLength' src/components/editor/` returns 0. The editor has no per-path stitch length. The Path Properties has density (0-1, which is the inverse of stitch length). The user can adjust density per path. But the unit is "0-1 ratio" not "mm". The user can't directly say "this path uses 3mm stitches." The fix is a per-path stitch length input (per #317's "show in mm" toggle). This is similar to #317 and #351 — the same gap from different angles. ## Where - Path Properties: `src/components/editor/EditorRightPanel.tsx` - No per-path stitch length: `grep -rn 'pathStitchLength' src/components/editor/` returns 0 ## Suggested fix shape 1. **Type**: add `stitchLength?: number` (in mm) to the StitchPath type. 2. **UI**: a number input next to the density slider: ```tsx <div className="flex items-center gap-2"> <label>Stitch length</label> <input type="number" step="0.1" value={(1 / p.density).toFixed(1)} onChange={(e) => onUpdateDensity(p.id, 1 / Number(e.target.value))} min={1} max={10} unit="mm" className="w-16 px-2 py-1 border rounded text-[11px]" /> </div> ``` 3. **Bidirectional**: changing the density updates the stitch length, and vice versa. 4. **Use cases**: - Outlines use longer stitches (3mm) for speed - Fills use shorter stitches (2.5mm) for coverage ## Severity Low. The user can use the density slider. Power users with embroidery experience notice. ## Discovered by Gap analysis (2026-10-02) of editor path properties. ## Related - #317 (open) — Density in mm. Same family. - #351 (open) — Stitch length field. Same family. - Most embroidery software exposes stitch length directly. The editor's gap is the parallel.
Author
Owner

Closing as duplicate of #317 — 'stitch length per path' is the same gap as 'density in mm.' Density is the inverse of stitch length; the fix (expose the mm value) is one change. Keeping #317 as the umbrella.

Closing as duplicate of #317 — 'stitch length per path' is the same gap as 'density in mm.' Density is the inverse of stitch length; the fix (expose the mm value) is one change. Keeping #317 as the umbrella.
Mark closed this issue 2026-10-04 04:13:11 +00:00
Sign in to join this conversation.
No description provided.