Curve geometry based on a 2D horizontal projection as an IfcCompositeCurve referencing IfcCurveSegment occurrences. The vertical profile is represented by another independent list of IfcCurveSegment occurrences.
Figure 6 illustrates an instance diagram.
![]() |
Figure 6 — Gradient Curve |
<?xml version="1.0" encoding="utf-8"?>
<ConceptTemplate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" uuid="cf0d4709-dc5b-484e-ae24-946553d6a4e1" name="Gradient Curve" applicableSchema="IFC4" applicableEntity="IfcGradientCurve">
<Rules>
<AttributeRule AttributeName="BaseCurve">
<EntityRules>
<EntityRule EntityName="IfcCompositeCurve">
<AttributeRules>
<AttributeRule RuleID="CompositeSegments" AttributeName="Segments">
<EntityRules>
<EntityRule EntityName="IfcCurveSegment">
<References>
<Template ref="0a3d3dd9-f726-42f4-ab52-250f4c89b546" />
</References>
</EntityRule>
</EntityRules>
</AttributeRule>
</AttributeRules>
</EntityRule>
</EntityRules>
</AttributeRule>
<AttributeRule RuleID="VerticalSegments" AttributeName="Segments">
<EntityRules>
<EntityRule EntityName="IfcCurveSegment">
<References>
<Template ref="0a3d3dd9-f726-42f4-ab52-250f4c89b546" />
</References>
</EntityRule>
</EntityRules>
</AttributeRule>
</Rules>
</ConceptTemplate>