Gradient curve is a type of curve 3D curve representation that is based on its 2D projection (BaseCurve) and a height deifned by its gradient segments which can be derived from a function that retrieves it from the segment start height, its placement and the ParentCurve instance and the type of the ParentCurve.
The parametrization of the gradient curve is based on the underlying segments of its BaseCurve. The value of the parameter equals the parameter value of BaseCurve.
|LayerAssignment||SET [0:1] OF IfcPresentationLayerAssignment FOR AssignedItems||Assignment of the representation item to a single or multiple layer(s). The LayerAssignments can override a LayerAssignments of the IfcRepresentation it is used within the list of Items.|
> IFC2x3 CHANGE The inverse attribute LayerAssignments has been added.
> IFC4 CHANGE The inverse attribute LayerAssignment has been restricted to max 1. Upward compatibility for file based exchange is guaranteed.
|StyledByItem||SET [0:1] OF IfcStyledItem FOR Item||Reference to the IfcStyledItem that provides presentation information to the representation, e.g. a curve style, including colour and thickness to a geometric curve.|
> IFC2x3 CHANGE The inverse attribute StyledByItem has been added.
|Dim||INVALID||The space dimensionality of this abstract class, defined differently for all subtypes, i.e. for IfcLine, IfcConic and IfcBoundedCurve.|
|1||Segments||LIST [1:?] OF IfcSegment||The component bounded curves, their transitions and senses. The transition attribute for the last segment defines the transition between the end of the last segment and the start of the first; this transition attribute may take the value discontinuous, which indicates an open curve.|
> NOTE : For IfcGradientCurve and IfcSegmentedReferenceCurve the segments define the interpolation between segment start and and segment end.
|2||SelfIntersect||IfcLogical||Indication of whether the curve intersects itself or not; this is for information only.|
|NSegments||INVALID||The number of component curves.|
|ClosedCurve||INVALID||Indication whether the curve is closed or not; this is derived from the transition code of the last segment.|
|3||BaseCurve||IfcBoundedCurve||Base curve also the 2D projection of gradient curve.|
|4||EndPoint||OPTIONAL IfcCartesianPoint||End point of gradient curve.|
ENTITY IfcGradientCurve SUBTYPE OF (IfcCompositeCurve); BaseCurve : IfcBoundedCurve; EndPoint : OPTIONAL IfcCartesianPoint; DERIVE RelativeElevation : IfcLengthMeasure := IfcGradient(SELF); END_ENTITY;