Updates IfcSectionedSolidHorizontal documentation - #1163
Open
RickBrice wants to merge 1 commit into
Open
Conversation
PR Validation -- schema generatorsChecks:
Detected:
📋 EXPRESS schema diff (baseline vs PR head)Express schema differences0 items Missing data🎉 No issues 🎉 Type definitions🎉 No issues 🎉 Entity definitions🎉 No issues 🎉 Constraints🎉 No issues 🎉 SHACL validation reportDefinitionForEnumLiteral
DefinitionForPropertyOrQuantity
DefinitionForResource
LeafEntityHasPredefinedType
PropertyForDefinition
SHACL report truncated -- full report in the workflow artifact bundle. See workflow run for failure details. |
civilx64
reviewed
Aug 4, 2026
| <!-- end of short definition --> | ||
|
|
||
| The solid is generated by sweeping the _CrossSections_ between _CrossSectionPositions_ with linear interpolation between profile points with the same tag along the directrix. The profile normal is derived from the associated _IfcAxis2PlacementLinear_, not necessarily the tangent of the _Directrix_. The profile X axis is the direction of _RefDirection_ from _IfcAxis2PlacementLinear_, and the profile Y axis is the direction of _Axis_. | ||
| The solid is generated by sweeping the _CrossSections_ between _CrossSectionPositions_ with linear interpolation between profile points with the same tag along the directrix. The profile normal is derived from the associated _IfcAxis2PlacementLinear_, not necessarily the tangent of the _Directrix_. The profile Y axis is oriented according to Axis attribute of IfcAxis2PlacementLinear and the X is derived from the cross product of Directrix and the Axis attribute of IfcAxis2PlacementLinear. |
Collaborator
There was a problem hiding this comment.
Suggested change
| The solid is generated by sweeping the _CrossSections_ between _CrossSectionPositions_ with linear interpolation between profile points with the same tag along the directrix. The profile normal is derived from the associated _IfcAxis2PlacementLinear_, not necessarily the tangent of the _Directrix_. The profile Y axis is oriented according to Axis attribute of IfcAxis2PlacementLinear and the X is derived from the cross product of Directrix and the Axis attribute of IfcAxis2PlacementLinear. | |
| The solid is generated by sweeping the _CrossSections_ between _CrossSectionPositions_ with linear interpolation between profile points with the same tag along the directrix. The profile normal is derived from the associated _IfcAxis2PlacementLinear_, not necessarily the tangent of the _Directrix_. The profile Y axis is oriented according to the _Axis_ attribute of _IfcAxis2PlacementLinear_ and the X is derived from the cross product of Directrix and the _Axis_ attribute of _IfcAxis2PlacementLinear_. |
Collaborator
There was a problem hiding this comment.
...cross product of Directrix
shouldn't this be cross product of the _RefDirection_ and _Axis_ attributes of _IfcAxis2PlacementLinear_.? Directrix is a curve, not a direction.
Contributor
Author
There was a problem hiding this comment.
shouldn't this be cross product of the RefDirection and Axis attributes of IfcAxis2PlacementLinear.?
- This sentence is taken verbatim from IfcSectionedSurface so changes are needed in both locations.
- You are right that Directrix is a curve, not a direction. I would read this as the section X is derived from the cross product of the Directrix tangent and the Axis attribute of IfcAxis2PlacementLinear - but this is stated in reverse - it should be the cross product of the Axis attribute of the IfcAxis2PlacementLinear and the Directrix tangent.
- I think the correct wording is "cross product of the Axis and RefDirection attributes of IfcAxis2PlacementLinear".
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.

Issues buildingSMART/IFC4.x-IF#147 and #1010 indicate that the orientation of the swept cross section for IfcSectionedSolidHorizontal is improperly specified. This PR aligns the cross section orientation description with IfcSectionedSurface.
@evandroAlfieri please add this to sprint Iteration 7