E01 · F01 — Rectangle with corner radius
Benefit hypothesis: the symbol designer types a width, a height and a radius, and sees an exact rounded rectangle, whatever the radius typed.
Acceptance criteria
- A rectangle of integer width and height renders as one
<path>in the playground. - A global corner radius rounds the four corners; the requested value is kept and the effective value is shown when they differ (Q8).
- Radii are clamped by local proportional reduction (ADR-0007): a 100 × 100 square with radius 50 is a circle; with radius 1000 it is the same circle; a 100 × 25 rectangle with radius 100 has effective radius 12.5.
- Output coordinates have at most 5 decimals (Q10); the contour is clockwise from the top-left vertex (Q11).
Stories
In delivery order.
| ID | Type | Title | Status |
|---|---|---|---|
| EN-001 | Enabler | Write numbers with fixed precision | done |
| US-001 | User story | Rectangle contour from width and height | done |
| EN-002 | Enabler | Path data of a sharp contour | done |
| US-002 | User story | Draw a sharp rectangle in the playground | done |
| US-004 | User story | Show shapes at a fixed scale in the playground | done |
| EN-003 | Enabler | Turning angle at a contour vertex | done |
| EN-004 | Enabler | Fillet setback | done |
| SP-001 | Spike | Research for the remaining stories of F01 | done |
| EN-005 | Enabler | Local proportional radius clamp | done |
| EN-006 | Enabler | Rounded contour geometry: segments and arcs | done |
| CHK-001 | Checkpoint | Checkpoint in the middle of F01 | done |
| EN-007 | Enabler | Path data with arcs | done |
| US-003 | User story | Round the rectangle's corners in the playground | done |
| AUD-001 | Audit | Audit F01: rectangle with corner radius | done |
| VAL-001 | Validation | Validate F01 on the reference cases | done |
Feature plan
| Acceptance criterion | Realized by | Verified by |
|---|---|---|
| 1 — rectangle rendered | US-001, US-002 (sharp), EN-006, EN-007, US-003 (rounded) | VAL-001 (playground test to write) |
| 2 — global radius, requested vs effective | EN-003 → EN-007, US-003 | [F01.AC2] tests (EN-007, US-003); display: US-003 card, VAL-001 |
| 3 — clamping reference cases | EN-005, EN-006 | [F01.AC3] tests (EN-005, EN-006, EN-007), VAL-001 |
| 4 — precision and orientation | EN-001, US-001, EN-006 and EN-007 (rounded output) | [F01.AC4] tests (EN-001, US-001, AUD-001 properties) |