forked from 1b-agent/fieldcraft-upstream
Engine: mesh.seed.edge, mesh.seed.clear and mesh.seed.list
Seed design edges by their persistent names with a count or a size, a bias and a constraint; one undo step each, saved with the model. Seeds on edges a reopened design lacks are reported as stale. Part of #230. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01UhhZMBTviDQxZvwnyP89fo
This commit is contained in:
1 parent
f8e0be970e
commit
e8cada94d0
12 files changed
+295
-11
No files matched your search
+2
-2
@@ -6,7 +6,7 @@ Every entry is a toolbar button. **Ready** entries run their command; **coming s
|
||||
shown greyed with the roadmap milestone that brings them (ROADMAP.md). Scripts, the command line,
|
||||
the control channel and AI agents over MCP (docs/mcp.md) run the same commands.
|
||||
|
||||
62 ready, 42 coming soon.
|
||||
63 ready, 41 coming soon.
|
||||
|
||||
## Geometry
|
||||
|
||||
@@ -26,7 +26,7 @@ the control channel and AI agents over MCP (docs/mcp.md) run the same commands.
|
||||
| Panel | Capability | Status | Command |
|
||||
|---|---|---|---|
|
||||
| Size | Global Size — One element size for the whole part | coming soon (M2) | |
|
||||
| Size | Seed Edges — Element counts, sizes and bias per edge and face | coming soon (M2) | |
|
||||
| Size | Seed Edges — Element counts or sizes per design edge, with bias and an exact, minimum or free constraint; the meshers honour them | ready | `mesh.seed.edge`, `mesh.seed.clear`, `mesh.seed.list` |
|
||||
| Size | Curvature — Refine by curvature and proximity | coming soon (M2) | |
|
||||
| Tet | Tet Mesh — Quality tet4 or tet10 mesh of a body to a size: refined, smoothed and improved, boundary on the B-rep faces, faces tagged | ready | `mesh.tet.generate` |
|
||||
| Tet | Quadratic — Second-order elements with mid-side nodes on the geometry | coming soon (M2) | |
|
||||
|
||||
+16
@@ -140,6 +140,22 @@ and `mesh` (each one's parameters: `list_commands`):
|
||||
|
||||
`file.sample {"name": "crank-mirror"}` opens the crank arm built this way (docs/examples.md).
|
||||
|
||||
## Edge seeds
|
||||
|
||||
Seed an edge when its element count matters more than the global size: through a thin
|
||||
section's thickness (at least 2–3 elements for bending), around a fillet or hole where the
|
||||
stress peaks (a count or a small size, biased toward the stress raiser), or to give the shared
|
||||
edges of partition cells matching counts.
|
||||
|
||||
1. `inspect_model` lists each body's edges by persistent name (`<face>|<face>`, `~k` when several
|
||||
separate the same faces) with their lengths; the names follow the faces through edits and
|
||||
partitions.
|
||||
2. `execute` `mesh.seed.edge {edges: [{body, edge}], count | size, bias?: {ratio, toward:
|
||||
start|end|both}, constraint?: exact|min|free}`. `exact` keeps the count, `min` keeps at least
|
||||
it, `free` is a goal. The reply gives the count each edge gets.
|
||||
3. `mesh.seed.list` lists the seeds and the edges they reach (`stale` when the design has no such
|
||||
edge); `mesh.seed.clear {edges?}` removes them. Seeds are saved with the model.
|
||||
|
||||
## Limits
|
||||
|
||||
The server treats its input as hostile. A message line may be at most 16 MiB (the control
|
||||
|
||||
Reference in new issue
Block a user