#### 8.10.3.7 IfcSurfaceStyle

| Style de surface
| Oberflächenstil

IfcSurfaceStyle is an assignment of one or many surface style elements to a surface, defined by subtypes of IfcSurface, IfcFaceBasedSurfaceModel, IfcShellBasedSurfaceModel, or by subtypes of IfcSolidModel. The positive direction of the surface normal relates to the positive side. In case of solids the outside of the solid is to be taken as positive side.

> NOTE The surface style is often referred to as material definition in rendering applications.

> NOTE Corresponding ISO 10303 entity: surface_style_usage and surface_side_style. Please refer to ISO/IS 10303-46:1994 for the final definition of the formal standard. The surface style definition in regard to support of rendering has been greatly expanded beyond the scope of ISO/IS 10303-46.

> HISTORY New entity in IFC2x.

XSD Specification:

<xs:element name="IfcSurfaceStyle" type="ifc:IfcSurfaceStyle" substitutionGroup="ifc:IfcPresentationStyle" nillable="true"/>
<xs:complexType name="IfcSurfaceStyle">
<xs:complexContent>
<xs:extension base="ifc:IfcPresentationStyle">
<xs:sequence>
<xs:element name="Styles">
<xs:complexType>
<xs:group ref="ifc:IfcSurfaceStyleElementSelect" maxOccurs="5"/>
<xs:attribute ref="ifc:itemType" fixed="ifc:IfcSurfaceStyleElementSelect"/>
<xs:attribute ref="ifc:cType" fixed="set"/>
<xs:attribute ref="ifc:arraySize" use="optional"/>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="Side" type="ifc:IfcSurfaceSide" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>

EXPRESS Specification:

ENTITY IfcSurfaceStyle

| SUBTYPE OF (IfcPresentationStyle);

Side | : | IfcSurfaceSide;
Styles | : | SET [1:5] OF IfcSurfaceStyleElementSelect;

| WHERE

MaxOneShading | : | SIZEOF(QUERY(Style <* SELF.Styles | 'IFCPRESENTATIONAPPEARANCERESOURCE.IFCSURFACESTYLESHADING' IN TYPEOF(Style) )) <= 1;
MaxOneLighting | : | SIZEOF(QUERY(Style <* SELF.Styles | 'IFCPRESENTATIONAPPEARANCERESOURCE.IFCSURFACESTYLELIGHTING' IN TYPEOF(Style) )) <= 1;
MaxOneRefraction | : | SIZEOF(QUERY(Style <* SELF.Styles | 'IFCPRESENTATIONAPPEARANCERESOURCE.IFCSURFACESTYLEREFRACTION' IN TYPEOF(Style) )) <= 1;
MaxOneTextures | : | SIZEOF(QUERY(Style <* SELF.Styles | 'IFCPRESENTATIONAPPEARANCERESOURCE.IFCSURFACESTYLEWITHTEXTURES' IN TYPEOF(Style) )) <= 1;
MaxOneExtDefined | : | SIZEOF(QUERY(Style <* SELF.Styles | 'IFCPRESENTATIONAPPEARANCERESOURCE.IFCEXTERNALLYDEFINEDSURFACESTYLE' IN TYPEOF(Style) )) <= 1;

END_ENTITY;

Attribute Definitions:

Side | : | An indication of which side of the surface to apply the style.
Styles | : | A collection of different surface styles.

Formal Propositions:

MaxOneShading | : | The IfcSurfaceStyleShading shall only be used zero or one time within the set of Styles.
MaxOneLighting | : | The IfcSurfaceStyleLighting shall only be used zero or one time within the set of Styles.
MaxOneRefraction | : | The IfcSurfaceStyleRefraction shall only be used zero or one time within the set of Styles.
MaxOneTextures | : | The IfcSurfaceStyleWithTextures shall only be used zero or one time within the set of Styles.
MaxOneExtDefined | : | The IfcExternallyDefinedSurfaceStyle shall only be used zero or one time within the set of Styles.

Inheritance Graph:

ENTITY IfcSurfaceStyle

| ENTITY IfcPresentationStyle

Name | : | OPTIONAL IfcStrippedOptional;

| ENTITY IfcSurfaceStyle

Side | : | IfcSurfaceSide;
Styles | : | SET [1:5] OF IfcSurfaceStyleElementSelect;

END_ENTITY;

Link to this page