code wiki / _hdl_build / nx_assemseq.nx
nx_assemseq.nx
buildroot/runtime/_hdl_build/nx_assemseq.nx
about
nx_assemseq.nx -- ASSEMBLY / DISASSEMBLY SEQUENCING from the STEP assembly tree (cadtwin P4b). Given the
parsed as1 product structure (nx_step_parse: NAUO parent->child edges), compute a valid DISASSEMBLY ORDER:
deepest parts (fasteners/leaves) come out first, the top assembly last -- a part is removable only after all
its children are removed. = teardown/repair instructions for a flipped car, and the correct order for the
/explodelab explode animation (explodelab already offsets by assembly depth = this order). Depth = longest
path from the root (handles shared sub-assemblies). Verifies every edge: child removed BEFORE its parent.
Composes nx_step_parse. Deterministic. LIB (no main; gated by nx_assemseq_gate). license_tier: ORIGINAL
dependencies 1 imports · 2 importers
imports: nx_step_parse.nx
imported by: nx_assemseq_gate.nxnx_cadtwin_report.nx
structs
| none |
consts
| none |
functions
| 12 | func asq_collect_pds(pe: *i64, ce: *i64, en: i64, pd: *i64) -> i64 |
| 30 | func asq_root(pe: *i64, ce: *i64, en: i64) -> i64 |
| 43 | func asq_depths(pd: *i64, npd: i64, pe: *i64, ce: *i64, en: i64, rootpd: i64, depth: *i64) -> i64 |
| 67 | func asq_order(depth: *i64, npd: i64, order: *i64) -> i64 |