Skip to content

docs(re): Core Interior's saved-mesh bodies are 138, not RE-78's 158: the 20 plates and 116 rooms were outlines before the option landed (#1492) - #1508

Merged
DrunkOnJava merged 4 commits into
mainfrom
research/1492-shading-plates
Nov 6, 2026
Merged

DrunkOnJava merged 4 commits into
mainfrom
research/1492-shading-plates

Conversation

@DrunkOnJava

@DrunkOnJava DrunkOnJava commented Nov 5, 2026 •

Copy link
Copy Markdown
Owner

Summary

RE-78 counted 158 saved-mesh bodies on Core Interior (132 doors, 6 windows, 20 shading devices); mesh_bodies_vs_ifc and rvt-ifc --saved-meshes count 138. Nothing changed on main: the 158 was measured on 2026-09-27, when the 20 plates and the 116 rooms were record boxes. RE-95 (#467, 6e0dfaa) closed the plates' sketch outlines and RE-101 (#473, 68a44c0) gave the rooms their stored-solid outlines on 2026-09-28, and saved_meshes::attach replaces only a body whose ProfileResolved is false, as it did at 7386177, the first commit on main with --saved-meshes. No export changes and no body that measured exact was lost.

Motivation

#1492: the pages were corrected to 138 of 138 in #1484 without saying why the 20 stopped being scored.

Changes

  • reports/element-framing/RE-78-saved-graphics-meshes.md: the result line stops naming the shading devices, the Core Interior shading-device row says it is from before RE-95, and a dated note under the first table gives the commits and the rule. The Snowdon rows are said to be from the same earlier tree, local only and not re-run.
  • tools/re/shading_bodies_vs_ifc.py: mesh_bodies_vs_ifc with every IfcShadingDevice selected whatever its BodySource, and a count of the BodySource and ProfileResolved of the plates before its table. Run by name through -f scorers= (as slab_bodies_vs_ifc is); not in the standing scorer list.
  • changelog.d/research/1492-shading-plates-not-saved-meshes.md.

Testing

Unit tests are banned in this repository; none added.

  • Commit found by reading, not inferred from dates: git merge-base --is-ancestor 6e0dfaae 73861770 and ... 68a44c05 73861770 both hold, git show 73861770:src/ifc/saved_meshes.rs has the || profile_resolved skip (line 75), and PR feat(ifc): draw family instances from the meshes Revit saved for display, opt-in (#255) (#227) (RE-78) #420's own body says its Core Interior row (158) is from before its rebase onto main. The Measure run that body cites (36717043673) exported IFC byte-identical to main's, so it did not draw the meshes and did not re-measure the 158.
  • Measure run 41850769925 (--saved-meshes, e024f03c): rvt-ifc prints 138 of 138 bounding-box bodies drawn from their saved graphics, and mesh_bodies_vs_ifc and saved_meshes_vs_ifc score 132 doors and 6 windows, no shading device.
  • The new scorer, run on Revit's small Core Interior IFC against itself (one shading device): selects it and scores ratio 1.0000. That checks the selection, not rvt-rs.
  • Measure run 42133202790 (filtered: core-interior, -f ifc_flags=--saved-meshes, scorers plan_profiles_vs_ifc mesh_bodies_vs_ifc saved_meshes_vs_ifc shading_bodies_vs_ifc; code daf36102, scorers from 3fb0d241; success), read back:
    • The 20 plates are BodySource partition_element_record_bbox with ProfileResolved true (the record-box source stays on a body whose outline is resolved).
    • Shape against Revit's body of the same Tag (shading_bodies_vs_ifc): volume within 0.01% on 20 of 20, every vertex within 0.001 ft both ways on 20 of 20, Revit's vertices on rvt-rs's surface on 20 of 20; the largest distance 1.539e-06 ft (10 Floor:Structural Slab, 10 Floor:Arch Topping Slab - 2").
    • Plan outline (plan_profiles_vs_ifc): area within 0.1%, vertices and outline within 0.01 ft, 20 of 20 (and 80 of 80 IfcSlab).
    • mesh_bodies_vs_ifc and saved_meshes_vs_ifc score 138 bodies (132 doors, 6 windows), no plate and no room; rvt-ifc prints 138 of 138 bounding-box bodies drawn from their saved graphics.
    • Not measured: the plates' saved meshes against Revit's (the option leaves the plates alone, so no run draws them), and the rooms' shape (Revit's export holds no spaces to score them against).

Audit-honesty checklist

  • The docs say what was and was not measured; the plates' shape figure is labelled not yet measured on this head
  • A fragment under changelog.d/research/
  • No emojis, private paths or PII

Legal and contribution hygiene

  • Apache-2.0; no Autodesk source; no new fixtures

Breaking changes

None. No src/ change, no export change.

Related issues

Closes #1492.

…-drawn shading devices by shape (#1492)

mesh_bodies_vs_ifc.py scores BodySource saved_graphics_mesh, and the 20 shading devices have not been one since RE-95 closed their outlines: saved_meshes::attach leaves a resolved profile alone. This is that scorer with every IfcShadingDevice selected, and a count of what drew them (BodySource, ProfileResolved) before its table.
…main, the plates and rooms being outlines before the option landed (#1492)

The count of 158 (132 doors, 6 windows, 20 shading devices) was measured on 2026-09-27. RE-95 (#467) closed the 20 plates' outlines and RE-101 (#473) the rooms' on 2026-09-28; saved_meshes::attach replaces only a body whose profile is not resolved, as it did at 7386177, the first commit on main with --saved-meshes. RE-78 now says so under its first table, and its result line no longer names the shading devices.
…red by shape and by outline (#1492)

Measure run 42133202790 (Core Interior, --saved-meshes, daf3610): shading_bodies_vs_ifc scores 20 of 20 plates within 0.01% of Revit's volume and every vertex within 0.001 ft both ways, plan_profiles_vs_ifc 20 of 20 in area and outline; the saved-mesh scorers score 138 bodies and no plate.
@DrunkOnJava DrunkOnJava added the ready-when-green Draft whose code is complete: marked ready for review once its fast CI passes label Nov 6, 2026
@DrunkOnJava
DrunkOnJava marked this pull request as ready for review November 6, 2026 00:16
@DrunkOnJava DrunkOnJava removed the ready-when-green Draft whose code is complete: marked ready for review once its fast CI passes label Nov 6, 2026
@DrunkOnJava
DrunkOnJava enabled auto-merge (squash) November 6, 2026 00:46
@DrunkOnJava
DrunkOnJava merged commit 0f6cc82 into main Nov 6, 2026
36 checks passed
@DrunkOnJava
DrunkOnJava deleted the research/1492-shading-plates branch November 6, 2026 02:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Core Interior's 20 shading devices dropped out of the saved-mesh scoring: find why

1 participant