code wiki / _hdl_build / nx_explode3d_gate.nx
nx_explode3d_gate.nx
buildroot/runtime/_hdl_build/nx_explode3d_gate.nx
about
nx_explode3d_gate.nx -- teeth for R2: the 3D exploded-view engine DRIVEN BY THE REAL STEP ASSEMBLY.
Parses banked as1-oc-214.stp (nx_step_parse R1a) -> DFS the occurrence tree -> one 3D part per leaf
instance (box/prism STAND-INS by product name; real face tessellation = R1b) -> nx_explode3d staged
radial explode -> nx_meshrender frames -> ANIMATED APNG knowledge/nx_explode_as1.apng (assemble<->explode
loop = the explodeview signature). T1 part count == INDEPENDENT occurrence-expansion count (two different
computations agree) · T2 mean pairwise part distance strictly MONOTONIC in t · T3 exploded >= 2x assembled
spread · T4 pose determinism (same t -> same bytes) · T5 staged depth (depth-3 parts travel further than
depth-1) · T6 renders non-vacuous + assembled differs from exploded · T7 APNG written (signature + size).
expect_exit: 0 license_tier: ORIGINAL
dependencies 6 imports · 0 importers
imports: nx_syscalls.nxnx_step_parse.nxnx_explode3d.nxnx_render_core.nxnx_meshrender.nxnx_apng.nx
imported by: nobody (leaf or entry point)
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| none |
functions
| 17 | func xg_tooth(name: *u8, pass: i64, fails: *i64) -> i64 |
| 28 | func xg_cover(fb: *i64, n: i64, bg: i64) -> i64 { var k: i64 = 0; var i: i64 = 0; while i < n { if fb[i] != bg { k = k + 1 } i = i + 1 } return k } called by 1: main |
| 29 | func xg_chk(v: *i64, n: i64) -> i64 { var x: i64 = 0; var i: i64 = 0; while i < n { x = x + v[i] * (1 + (i % 7)); i = i + 1 } return x } called by 1: main |
| 31 | func main() -> i64 |