``ALB012`` Alignment vertical segment radius of curvature - v2 ======================================================================================================================================================================================================== .. parsed-literal:: 001 | \@implementer-agreement 002 | \@ALB 003 | \@version2 004 | 005 | Feature: ALB012 - Alignment vertical segment radius of curvature 006 | The rule verifies the 'RadiusOfCurvature' design parameter for vertical alignment segments. 007 | Where specified, an absolute tolerance value in the length unit of the model is used for the comparison. 008 | 009 | Background: 010 | :doc:`Given A model with Schema 'IFC4.3' ` 011 | :doc:`Given An .IfcAlignmentVertical. ` 012 | :doc:`Given A relationship .IfcRelNests. from .IfcAlignmentVertical. to .IfcAlignmentSegment. and following that ` 013 | :doc:`Given Its attribute .DesignParameters. ` 014 | :doc:`Given [Its entity type] ^is^ 'IfcAlignmentVerticalSegment' ` 015 | 016 | Scenario: Validating the absence of curvature radius for specific predefined types of vertical segment 017 | :doc:`Given .PredefinedType. ^!=^ 'CIRCULARARC' or 'PARABOLICARC' ` 018 | :doc:`Then The value of attribute .RadiusOfCurvature. must be ^empty^ ` 019 | 020 | Scenario: Validating the radius of curvature for parabolic segments 021 | :doc:`Given .PredefinedType. ^=^ 'PARABOLICARC' ` 022 | :doc:`Then The value of attribute .RadiusOfCurvature. must be ^equal to^ the expression: [HorizontalLength / ( EndGradient - StartGradient )] [within a tolerance of] 1E-3 ` .. rubric:: Version history .. list-table:: :header-rows: 1 * - Version - Tag - Date - Commit - Rule link * - v1 - :tag:`v0.6.8` - 2024-10-02 - :commit:`99696021c6f9ef0b5e1c4daf6f2d1d857c5b7768` - `view `_ * - v2 - :tag:`v0.7.6` - 2025-04-29 - :commit:`b7d7109ae59fac7fe17f0930c5d8d7a93f735938` - `view `_