mirror of
https://github.com/ajisaacs/OpenNest.git
synced 2026-10-18 19:01:39 -04:00
feat(io): persist clamp zones in nest files
Add the additive per-plate clamps array (id, x, y, length, width) to the nest DTO with writer and reader support. Files without the key load with zero zones; an individually malformed entry is dropped while the rest of the nest loads. A plate carrying only clamp definitions now survives the writer's empty-plate filter; genuinely empty plates remain omitted. Format documented in docs/nest-file-format.md.
This commit is contained in:
1 parent
c16092c293
commit
d001abcf69
5 files changed
+236
No files matched your search
@@ -59,6 +59,18 @@ cross-platform DTO mapping; the desktop settings serializer delegates to it so
|
||||
existing saved settings keep their JSON contract. Settings are independent of
|
||||
the saved part programs: restoring settings never regenerates those programs.
|
||||
|
||||
## Clamp zones
|
||||
|
||||
Each plate may carry an optional `clamps` array of fixed rectangular keep-out
|
||||
regions in plate coordinates: `id`, `x`, `y`, `length` (X extent) and `width`
|
||||
(Y extent, the depth intrusion from the `y = 0` operator-side edge for machine
|
||||
clamps). Zones are exclusion and display data only - never material, quantity,
|
||||
utilization, cut sequence or CNC output. Files without the key load with no
|
||||
zones, and an individually malformed entry (blank id, non-positive size) is
|
||||
dropped while the rest of the nest loads. Because clamp definitions are real
|
||||
machine state, a plate that carries only clamps is written even when it has no
|
||||
parts and no cut-offs; genuinely empty plates without clamps remain omitted.
|
||||
|
||||
## Drawing edits
|
||||
|
||||
`DrawingProgramSnapshot` captures serialized main and hole-program text before
|
||||
|
||||
Reference in new issue
Block a user