You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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.
When the profile X axis is the direction of RefDirection from IfcAxis2PlacementLinear, the profile is essentially perpendicular to the direction it needs to be to sweep a solid. Consider the case when RefDirection is omitted from IfcAxis2PlacementLinear.
If RefDirection is omitted, the direction is taken from the curve tangent at Location.
In the figure below the blue line is the BasisCurve and the red vector is the RefDirection taken from the curve tangent. The profile with it's X-axis in the direction of RefDirection is also shown. Sweeping the profile in this orientation along the curve doesn't produce the solid we want.
-- edit ; updated figure showing right-handed global system (was left-handed)
The profile normal needs to be in the direction of RefDirection as shown here
-- edit ; updated figure showing right-handed global system (was left-handed)
Now the profile can be swept along the curve because it is essentially perpendicular to it and we get the solid we want.
Solution(s)
Change the second paragraph in 8.8.3.35 IfcSectionedSolidHorizontal as follows
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,+ the Directrix. The profile normal is the direction of RefDirection from IfcAxis2PlacementLinear,
and the profile Y axis is the direction of Axis.
Require schema changes?
yes
✓ no
don't know
Require documentation changes?
✓ yes
no
don't know
The text was updated successfully, but these errors were encountered:
Problem
There appears to be an error in the documentation for IfcSectionedSolidHorizontal.
Given a simple profile defined in a X-Y plane
The documentation says
When the profile X axis is the direction of RefDirection from IfcAxis2PlacementLinear, the profile is essentially perpendicular to the direction it needs to be to sweep a solid. Consider the case when RefDirection is omitted from IfcAxis2PlacementLinear.
In the figure below the blue line is the BasisCurve and the red vector is the RefDirection taken from the curve tangent. The profile with it's X-axis in the direction of RefDirection is also shown. Sweeping the profile in this orientation along the curve doesn't produce the solid we want.
-- edit ; updated figure showing right-handed global system (was left-handed)
The profile normal needs to be in the direction of RefDirection as shown here
-- edit ; updated figure showing right-handed global system (was left-handed)
Now the profile can be swept along the curve because it is essentially perpendicular to it and we get the solid we want.
Solution(s)
Change the second paragraph in 8.8.3.35 IfcSectionedSolidHorizontal as follows
Require schema changes?
✓
noRequire documentation changes?
✓
yesThe text was updated successfully, but these errors were encountered: