Suggested names: IfcReinforcingBargroup or IfcReinforcingBarDistribution.
Bar group as an entity
Rebar grouping is a well-known technique in reinforcement detailing software applications, and represents a group of bars with the following attributes:
All bars are of the same material: same chemical composition, same body surface & indentations
All bars have the same bar diameter
The bars can have the same length or linear varying lengths, depending on statement 6 below.
All bars have the same orientation: They are parallel to each other
All bars have the same shape: Typically, straight bars or straight bars with same end conditions (hooks/cogs). For straight bars with end conditions, the main straight sections alone define the distribution geometry (without considering the end conditions.)
From the first to the last bar in the group (or from last to first bar in reverse order), the following apply:
6.1 The spacing between neighbouring bars is constant
6.2 There is a continuously linear relationship of all the starting points
of the bars: All the starting points lie on a line defined by a straight-
line equation
6.3 Statement 6.2 (above) applies to the end points of the bars.
Distribution geometry on plane: The implication of the statements
under this section (5) for 2D plane is that the boundary shape of a bar
group can only be trapezoidal (or rectangular).*
On the construction site, a bar group represents a single continuous distribution of bars. In certain places, some reinforcement installers actually charge based on the number of the bar groups.
The problem with IfcReinforcingBar
The present IfcReinforcingBar, according to the definition, does not fit into the above conditions. Some software vendors (Nemetschek’s Allplan for instance) try to adapt IfcReinforcingBar to represent bar grouping, but these bars lose their identity and attributes once you opened them outside the origin software. The single most-important attribute missing is the bar spacing.
The reason bar group is needed
The advantage of bar grouping is easy creation and management of bars.
The grouping makes it easy to modify multiple bars at the same time. For example, to modify the lengths of the bars, the bar group could be dragged/extended from a one boundary node.
Grouping also makes it possible to save time and space when labelling. So instead of labelling (for example) 100 bars of each diameter 12 mm and spacing 150 mm, a generic label like the following can be used: 100Ø12@150.
Wouldn’t you just use IfcBuiltSystem.REINFORCING ? I believe that was the point of introducing it as a more specific IfcGroup>IfcSystem concept.
I think the sticky point is the use of IfcReinforcementBarProperties and maybe Qto_ReinforcingElementBaseQuantities to further specify what is going on with the grouping.
You might also want to create custom properties to handle your specific rebar needs and publish to the bSDD accordingly.
IfcBuiltSystem appears to be more suited to specialized systems. Bar group is very basic.
The general reinforcement detailing of slabs/walls/plates involves bar grouping as described above. Each of the longitudinal and transverse direction of standard fabric reinforcement (IfcReinforcingMesh) can be described as a bar group; with LongitudinalBarSpacing/TransverseBarSpacing being the spacing (which is missing in IfcReinforcingBar).
Regarding custom properties, that’s what software providers do today: providing different property definitions that is not harmonized across different platforms.
If property for bar spacing will be the solution, then it has to be defined under IfcReinforcingBar.
You may not like it, but at this point, it is what it is. Any future changes that significant will have to wait for another major release. That requires far more formal input and project execution (and funding).
Further regarding custom properties, this is exactly why the bSDD is important, as well as efforts like TPF-5(372) BIM for Bridges and Structures, to establish standards for such custom properties in ways that make sense, in this case for the US bridge industry.
You can find the Data Dictionary prototype for US bridges here.
Rather than have the vendors come up with their own, the primary stakeholder (usually a user or industry association) should come up with standardize usage and property definitions for this case and then formalize and publish them to the bSDD.
No, IfcBuiltSystem.REINFORCING is for special built-system. Bar spacing is very basic. You find it in almost all reinforcement detailing. Bar spacing should be among the attribute definitions of IfcReinforcingbar(as a group), and I believe that the omission was a mistake.
It is true that any significant change involves a lot of work. So, maybe an (optional) attribute of spacing will be simple and easy to add.