mirror of
https://github.com/gittrahan/support-fins.git
synced 2026-10-19 02:10:52 -05:00
curved walls: on a jagged overhang the curves trace each region grown across the slivers around it (regions whose growth meets trace and race as one), read the slope over 2 mm, and seed lines until they reach the red themselves -- coffee bean X-45 0 -> 8 curves (held 1305 -> 2674 mm2), on its side X90 10 -> 30 curves with the Auto fill 40 -> 21 walls, and Full keeps them; a second race after the unticked one, so ticking changes nothing where no wall bends
This commit is contained in:
1 parent
1be63f6d53
commit
5d5debaa1e
8 files changed
+299
-24
No files matched your search
@@ -352,6 +352,11 @@ Not printed yet. Off by default; Auto and Full only, site only (plugins later).
|
||||
| Auto fill, ticked | the fill pass (`fins/fill.js`, rows off) runs under the regions a curve won, there only; the readout counts it apart from Full coverage's (`curvedFill`) | forced curves left overhang the straight walls held (spiral X30 911 → 803 mm², bear X0 211 → 162); with the fill every measured case holds ≥ unticked (torus X30 471 → 835). Ticked Auto takes up to ~3.5 s longer on a big part |
|
||||
| known gaps, ticked | the downhill whole-build judge is skipped for non-bending regions too; the fill doesn't look at a neighbouring region a dropped straight wall also held; a forced swap may raise the lowest tine (bust Y60 17.90 → 18.16 mm, held 1557 → 3239 mm²) | review 2026-10-17: the judge rejected nothing on 9 stress models × 6 tilts + 4 real parts, and neighbour loss measured 0 on 6 parts; revisit on a print or a report |
|
||||
| Full, ticked | the unticked Full build is built too; the curved one stays only if it holds ≥ **99%** as much (`CURVED.fullSlack`), its lowest tine rises ≤ `gripRise` and no wedge is lost (`judgeDownhill`'s test); the slack only when the ticked build has a bending wall (all straight: the strict test). Otherwise the straight build, and the readout says so (`curvedDropped`). Can still cost plastic for no gain (torus, held equal, +12% plastic) | the curves can break up the fill's rows (coffee bean on its side: held −2 to −5%); a strict test dropped the spiral (−0.8%) and bust X30 (−0.3%) too. Ticked Full builds up to ~2.5x as long (the curved build, plus the unticked one with its own downhill judge) |
|
||||
| tracing surface, ticked | `prop/trace.js`: each region grown across adjacent down-facing faces (normal z below **−0.34**, `TRACE.grow`: the slivers and steep strips between islands) up to **6 mm** in plan from the red it grew from (`TRACE.bridge`, half `maxUnsupportedSpan`); regions whose growth meets trace as one surface and race as one (their leader's turn: every member's walls against the group's) | a rippled surface near the threshold breaks its red into islands, and a line traced on one stopped at its edge: coffee bean tilted back (X-45) 0 curves → 8, held 1305 → 2674 mm² (Auto) |
|
||||
| slope, ticked | read over **2 mm** (`TRACE.h`; unticked 0.5) | ridges under it don't steer the line |
|
||||
| coverage, ticked | each line trimmed to the stations within **6 mm** of red (slivers count); red farther than that from every line seeds a line of its own, highest first, up to **60** lines per surface (`DOWNHILL.maxLines`) | the curves cover the overhang and the fill takes scraps: bean on its side (X90) 10 → 30 curves, Auto fill 40 (capped) → 21 walls, held 6376 → 7377 mm²; Full now keeps them (7154 → 7340) |
|
||||
| two races, ticked | the downhill race runs as unticked first; then a second race over the grown surfaces, where a group whose walls bend always swaps and every other group keeps what the first left | ticking changes nothing where no wall bends |
|
||||
| limit | a red band shallower than `minSpan` (**7 mm**) downhill gets stubs, not curves | bean X-30: 39 lines traced, 26 stubs, 1 curve |
|
||||
| switch | `opts.curvedWalls === true`; anything else is the race above, byte for byte | |
|
||||
|
||||
## Naming
|
||||
|
||||
Reference in new issue
Block a user