#### 8.10.3.2 IfcFillAreaStyle

| Style de remplissage de surface
| Füllflächenstil

An IfcFillAreaStyle provides the style table for presentation information assigned to annotation fill areas or surfaces for hatching and tiling. The IfcFillAreaStyle defines hatches as model hatches, that is, the distance between hatch lines, or the curve patterns of hatch lines are given in model space dimensions (that have to be scaled using the target plot scale). The IfcFillAreaStyle allows for the following combinations of defining the style of hatching and tiling:

- Solid fill for areas and surfaces by only assigning IfcColour to the set of FillStyles. It then provides the background colour for the filled area or surface.

> NOTE Color information of surfaces for rendering is assigned by using IfcSurfaceStyle, not by using IfcFillAreaStyle.

- Vector based hatching for areas and surfaces based on a single row of hatch lines by assigning a single instance of IfcFillAreaStyleHatching to the set of FillStyles.

- If an instance of IfcColour is assigned in addition to the set of FillStyles, it provides the background colour for the hatching.

- Vector based hatching for areas and surfaces based on two (potentially crossing) rows of hatch lines by assigning two instances of IfcFillAreaStyleHatching to the set of FillStyles.

- If an instance of IfcColour is assigned in addition to the set of FillStyles, it provides the background colour for the hatching.

> > NOTE Assigning more then two instances of IfcFillAreaStyleHatching to define three or more rows of hatch lines is not encouraged.

- Tiling for areas and surfaces by assigning a single instance of IfcFillAreaStyleTiles to the set of FillStyles.

- If an instance of IfcColour is assigned in addition to the set of FillStyles, it provides the background colour for the tiling.

- Externally defined hatch style by assigning a single instance of IfcExternallyDefinedHatchStyle to the set of FillStyles.
  - If an instance of IfcColour is assigned in addition to the set of FillStyles, it provides the background colour for the hatching.

Measures given to a hatch or tile pattern are given in global drawing length units.

> NOTE Global units are defined at the single IfcProject instance, given by UnitsInContext:IfcUnitAssignment, the same units are used for the geometric representation items and for the style definitions.

The measure values for hatch or tile pattern apply to the model space with a target plot scale provided for the correct appearance in the default plot scale. For different scale and projection dependent fill area styles a different instance of IfcFillAreaStyle needs to be used by IfcPresentationStyleAssignment for different IfcGeometricRepresentationSubContext dependent representations.

> NOTE the target plot scale is given by IfcGeometricRepresentationSubContext.TargetScale.

An IfcFillAreaStyle can be assigned to IfcFillArea via the IfcPresentationStyleAssignment through an intermediate IfcStyledItem or subtype IfcAnnotationFillAreaOccurrence.

> NOTE Definition according to ISO/CD 10303-46:1992
> The style for filling visible curve segments, annotation fill areas or surfaces with tiles or hatches.

> NOTE Corresponding ISO 10303 name: fill_area_style. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard.

> HISTORY New entity in IFC2x2.

> DEPRECATION The use of IfcFillAreaStyleTiles is deprecated, as its definition might change is future releases.

XSD Specification:

<xs:element name="IfcFillAreaStyle" type="ifc:IfcFillAreaStyle" substitutionGroup="ifc:IfcPresentationStyle" nillable="true"/>
<xs:complexType name="IfcFillAreaStyle">
<xs:complexContent>
<xs:extension base="ifc:IfcPresentationStyle">
<xs:sequence>
<xs:element name="FillStyles">
<xs:complexType>
<xs:group ref="ifc:IfcFillStyleSelect" maxOccurs="unbounded"/>
<xs:attribute ref="ifc:itemType" fixed="ifc:IfcFillStyleSelect"/>
<xs:attribute ref="ifc:cType" fixed="set"/>
<xs:attribute ref="ifc:arraySize" use="optional"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>

EXPRESS Specification:

ENTITY IfcFillAreaStyle

| SUBTYPE OF (IfcPresentationStyle);

FillStyles | : | SET [1:?] OF IfcFillStyleSelect;
ModelorDraughting | : | OPTIONAL IfcStrippedOptional;

| WHERE

MaxOneColour | : | SIZEOF(QUERY(Style <* SELF.FillStyles | 'IFCPRESENTATIONAPPEARANCERESOURCE.IFCCOLOUR' IN TYPEOF(Style) )) <= 1;
MaxOneExtHatchStyle | : | SIZEOF(QUERY(Style <* SELF.FillStyles | 'IFCPRESENTATIONAPPEARANCERESOURCE.IFCEXTERNALLYDEFINEDHATCHSTYLE' IN TYPEOF(Style) )) <= 1;
ConsistentHatchStyleDef | : | IfcCorrectFillAreaStyle(SELF.FillStyles);

END_ENTITY;

Attribute Definitions:

FillStyles | : | The set of fill area styles to use in presenting visible curve segments, annotation fill areas or surfaces.
ModelorDraughting | : | Indication whether the length measures provided for the presentation style are model based, or draughting based. IFC4 CHANGE New attribute.

Formal Propositions:

MaxOneColour | : | There shall be a maximum of one colour assignment to the fill area style.
MaxOneExtHatchStyle | : | There shall be a maximum of one externally defined hatch style assignment to the fill area style.
ConsistentHatchStyleDef | : | Either the fill area style contains a definition from an externally defined hatch style, or from (one or many) fill area style hatchings or from (one or many) fill area style tiles, but not a combination of those three types.

Inheritance Graph:

ENTITY IfcFillAreaStyle

| ENTITY IfcPresentationStyle

Name | : | OPTIONAL IfcStrippedOptional;

| ENTITY IfcFillAreaStyle

FillStyles | : | SET [1:?] OF IfcFillStyleSelect;
ModelorDraughting | : | OPTIONAL IfcStrippedOptional;

END_ENTITY;

Link to this page