Repository navigation
Write the bars of a rebar system that holds an extensible storage entity - #184
Merged
Merged
Conversation
The rebar reader no longer leaves out a RebarSystem whose walk met an entity: its layers and held bars are read now that the entity values are read in place. A RebarInSystem that is the one RebarInSystem of its system takes the GlobalId of the system, as the reference does, and its system is not written as a group; a bar of a system with more keeps its own sub-element GlobalId. In three files of one project 42, 48 and 48 bars that were left out are written, all with the GlobalId of the reference; nine other files with rebar do not change. Refs #15
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Follows #183, which reads the values of an extensible storage entity in the readers behind the output but still left out the bars of a rebar system whose record holds an entity, because the
GlobalIdof those bars was not understood. It is now:GlobalIdof the system, as the reference does. Its system is not written as a group, since the bar carries the system'sGlobalId.GlobalId(the number of its bars plus 3), as before.Refs #15
Measured
The rule comes from a file of release 2024 whose 42 RebarInSystem bars were left out: 26 are the one bar of their system and the reference writes each with the plain
GlobalIdof the system; the other 16 belong to systems of four bars and the reference writes them with the sub-elementGlobalIdthe code already computes. Layer, index and assembly membership do not decide it.12 files with rebar, exported with main and with this branch, the IFC compared slot by slot with the reference:
GlobalIdof the referenceNot covered
GlobalIdrule rests on one project, whose systems have one or four bars; a system of another size, or one whose other bars are not read, was not seen.Verification
ValidatedTests2,ApiTests.Proxy289128_*3,ElementHeaderBoundingBoxTests3) that fail the same way on main without this change.GlobalIdand its system writes no group, while a bar of a system with two bars keeps its own sub-elementGlobalIdand its system writes its group.GlobalId(fixed here) and the changelog named a count of one file as if it were of three (fixed). After the fix the three changed files were exported again: identical to the export before it.