-
Notifications
You must be signed in to change notification settings - Fork 18
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
147 changed files
with
14,838 additions
and
300 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
21 changes: 21 additions & 0 deletions
21
features/ALB012_Alignment-vertical-segment-radius-of-curvature.feature
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
@implementer-agreement | ||
@ALB | ||
@version1 | ||
@E00020 | ||
Feature: ALB012 - Alignment vertical segment radius of curvature | ||
The rule verifies the 'RadiusOfCurvature' design parameter for vertical alignment segments. | ||
|
||
Background: | ||
Given A model with Schema "IFC4.3" | ||
Given An IfcAlignmentVertical | ||
Given A relationship IfcRelNests from IfcAlignmentVertical to IfcAlignmentSegment and following that | ||
Given Its attribute DesignParameters | ||
Given Its entity type is 'IfcAlignmentVerticalSegment' | ||
|
||
Scenario: Validating the absence of curvature radius for specific predefined types of vertical segment | ||
Given PredefinedType != 'CIRCULARARC' or 'PARABOLICARC' | ||
Then The value of attribute RadiusOfCurvature must be empty | ||
|
||
Scenario: Validating the radius of curvature for parabolic segments | ||
Given PredefinedType = 'PARABOLICARC' | ||
Then The value of attribute RadiusOfCurvature must be equal to the expression: HorizontalLength / ( EndGradient - StartGradient ) |
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
@implementer-agreement | ||
@ALB | ||
@version1 | ||
@E00020 | ||
Feature: ALB030 - Alignment local placement | ||
The rule verifies that the ObjectPlacement attribute of every instance of IfcAlignment is of type IfcLocalPlacement. | ||
While the schema allows other placement types (Grid or Linear), this rule ensures that IfcLocalPlacement is used for all alignments. | ||
|
||
Scenario: Every instance of IfcAlignment must have an ObjectPlacement of type IfcLocalPlacement | ||
Given A model with Schema "IFC4.3" | ||
Given An IfcAlignment | ||
Given Its attribute ObjectPlacement | ||
|
||
Then Its Entity Type is 'IfcLocalPlacement' |
31 changes: 31 additions & 0 deletions
31
features/ALS017_Alignment-vertical-segment-geometric-continuity.feature
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
@industry-practice | ||
@ALS | ||
@version1 | ||
|
||
Feature: ALS017 - Alignment vertical segment geometric continuity | ||
|
||
The rule verifies that there is geometric continuity between segments in an IfcGradientCurve. | ||
The calculated end position and tangent vector of segment `n` is compared to the provided placement of segment `n + 1`. | ||
A warning is emitted if the calculated difference is greater than the applicable tolerance. | ||
The tolerance for positional and gradient continuity is taken from the precision of the applicable geometric context. | ||
|
||
Background: | ||
|
||
Given A model with Schema "IFC4.3" | ||
Given An IfcAlignment | ||
Given Its attribute Representation | ||
Given Its attribute Representations | ||
Given RepresentationType = 'Curve3D' | ||
Given All referenced instances | ||
Given Its Entity Type is 'IfcGradientCurve' | ||
Given Its attribute Segments | ||
Given Its Entity Type is 'IfcCurveSegment' | ||
Given The values grouped pairwise at depth 1 | ||
|
||
Scenario: Geometric continuity in position | ||
|
||
Then Each segment must have geometric continuity in position | ||
|
||
Scenario: Geometric continuity in vertical gradient | ||
|
||
Then Each segment must have geometric continuity in vertical gradient |
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
@implementer-agreement | ||
@ANN | ||
@version1 | ||
@E00020 | ||
|
||
Feature: ANN000 - Annotations | ||
The rule verifies the presence of IFC entities used to add annotations to elements and spaces, such as labels, notes, and dimensions. In IFC, annotations are also used to represent survey elements (i.e., points, lines, areas) | ||
https://ifc43-docs.standards.buildingsmart.org/IFC/RELEASE/IFC4x3/HTML/concepts/Product_Shape/Product_Geometric_Representation/Annotation_Geometry/content.html | ||
|
||
Scenario: Check for activation | ||
|
||
Given an IfcAnnotation | ||
Given its attribute Representation | ||
Given its attribute Representations | ||
Given RepresentationIdentifier is 'Annotation' | ||
|
||
Then The IFC model contains information on the selected functional part | ||
|
||
|
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,35 @@ | ||
@implementer-agreement | ||
@CTX | ||
@version1 | ||
@E00020 | ||
|
||
Feature: CTX000 - Presentation colours and textures | ||
The rule verifies the presence of IFC entities used to assign colour, texture and other presentation appearance information to objects. | ||
https://ifc43-docs.standards.buildingsmart.org/IFC/RELEASE/IFC4x3/HTML/concepts/Product_Shape/Product_Geometry_Colour/content.html | ||
|
||
Scenario Outline: Check for activation - RepresentationItem attributes | ||
|
||
Given an IfcRepresentationItem | ||
Given Its attribute <attribute> | ||
|
||
Then The IFC model contains information on the selected functional part | ||
|
||
Examples: | ||
| attribute | | ||
| StyledByItem | | ||
| HasColours | | ||
|
||
|
||
Scenario: Check for activation - Styled Materials | ||
|
||
Given an IfcRoot | ||
Given its attribute HasAssociations | ||
Given all referenced instances | ||
Given its entity type is 'IfcMaterial' | ||
Given its attribute HasRepresentation | ||
Given its attribute Representations | ||
Given its attribute Items | ||
Given its entity type is 'IfcStyledItem' | ||
|
||
Then The IFC model contains information on the selected functional part | ||
|
50 changes: 15 additions & 35 deletions
50
features/GEM004_Constraints-on-representation-identifiers.feature
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,57 +1,37 @@ | ||
@informal-proposition | ||
@GEM | ||
@version2 | ||
@version3 | ||
@E00010 | ||
Feature: GEM004 - Constraints on representation identifiers | ||
The rule verifies that shape representations adhere to the permissible values outlined in the CSV files found in the 'features/resources/{attribute}.csv' folder, as specified in the documentation. | ||
|
||
Scenario: Shape Representation Identifier must be valid - IFC4X3 | ||
Scenario: Shape Representation Identifier must be valid | ||
|
||
Given A model with Schema "IFC4.3" | ||
Given An IfcProduct | ||
Given Its attribute Representation | ||
Given Its attribute Representations | ||
Given Its attribute RepresentationIdentifier | ||
|
||
Then The values must be in 'valid_RepresentationIdentifier_IFC4.3.csv' | ||
Then The values must be in 'valid_ShapeRepresentationIdentifier.csv' | ||
|
||
Scenario: Shape Representation Type must be valid - IFC4X3 | ||
|
||
Given A model with Schema "IFC4.3" | ||
Scenario: Shape Representation Type must be valid | ||
|
||
Given An IfcProduct | ||
Given Its attribute Representation | ||
Given Its attribute Representations | ||
Given Its entity type is 'IfcShapeRepresentation' | ||
Given Its attribute RepresentationType | ||
|
||
Then The values must be in 'valid_RepresentationType_IFC4.3.csv' | ||
|
||
|
||
Scenario: Shape Representation Identifier must be valid - IFC4 | ||
|
||
Given A model with Schema "IFC4" | ||
Given An IfcProduct | ||
Given Its attribute Representation | ||
Given Its attribute Representations | ||
Given Its attribute RepresentationIdentifier | ||
Then The values must be in 'valid_ShapeRepresentationType.csv' | ||
|
||
Then The values must be in 'valid_RepresentationIdentifier_IFC4.csv' | ||
|
||
Scenario: Shape Representation Type must be valid - IFC4 | ||
|
||
Given A model with Schema "IFC4" | ||
Given An IfcProduct | ||
Given Its attribute Representation | ||
Given Its attribute Representations | ||
Given Its attribute RepresentationType | ||
|
||
Then The values must be in 'valid_RepresentationType_IFC4.csv' | ||
|
||
Scenario: Shape Representation Type must be valid - IFC2X3 | ||
Given A model with Schema "IFC2X3" | ||
Given An IfcProduct | ||
Given Its attribute Representation | ||
Given Its attribute Representations | ||
Given Its attribute RepresentationType | ||
|
||
Then The values must be in 'valid_RepresentationType_IFC2X3.csv' | ||
Scenario: Topology Representation Type must be valid | ||
|
||
Given An IfcProduct | ||
Given Its attribute Representation | ||
Given Its attribute Representations | ||
Given Its entity type is 'IfcTopologyRepresentation' | ||
Given Its attribute RepresentationType | ||
|
||
Then The values must be in 'valid_TopologyRepresentationType.csv' |
This file contains 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
This file contains 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
This file contains 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
This file contains 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
Oops, something went wrong.