Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Documentation error in IfcSectionedSolidHorizontal #147

Open
RickBrice opened this issue Mar 21, 2024 · 0 comments
Open

Documentation error in IfcSectionedSolidHorizontal #147

RickBrice opened this issue Mar 21, 2024 · 0 comments
Assignees
Labels
documentation Improvements or additions to documentation

Comments

@RickBrice
Copy link

RickBrice commented Mar 21, 2024

Problem
There appears to be an error in the documentation for IfcSectionedSolidHorizontal.

Given a simple profile defined in a X-Y plane
SSH_Fig1

The documentation says

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.

SSH_Fig2
-- 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

SSH_Fig3
-- 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
@evandroAlfieri evandroAlfieri self-assigned this Apr 24, 2024
@evandroAlfieri evandroAlfieri added the documentation Improvements or additions to documentation label Apr 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

2 participants