forked from 1b-agent/opencadstudio-upstream
3D solid meshes inside block definitions were drawn once at block-local coordinates without the INSERT transform, so a block authored in mm and placed into a metre drawing at a 0.001 INSERT scale rendered ~1000x too large. Split solid meshes into top-level (layout-owned, offset and drawn flat) and block-definition (kept block-local) sets, and emit a transformed instance of each block-def mesh per model-space INSERT, accumulating nested transforms. Layout blocks are identified from the Layout objects' block_record handles, since BlockRecord::is_layout() also flags ordinary blocks in some files. (#123) Co-Authored-By: Claude Opus 4.8 <[email protected]>