IfcSurfaceStyleRendering

BACnet MVD

#### IfcSurfaceStyleRendering

Natural language names

| Oberflächenstil - Rendering
| Surface Style Rendering
| Style de rendu de surface

##### Semantic definitions at the entity

Entity definition

IfcSurfaceStyleRendering holds the properties for visualization related to a particular surface side style. It allows rendering properties to be defined by:

- a colour component (SurfaceColour attribute inherited from IfcSurfaceStyleShading)
- a transparency component (Transparency attribute inherited from IfcSurfaceStyleShading)
- a reflectance component, given either by
  - applying reflectance factors to the surface colour:
    - diffuse component (SurfaceColour * DiffuseFactor)
    - transmission component (SurfaceColour * TransmissionFactor)
    - diffuse transmission component (SurfaceColour * DiffuseTransmissionFactor)
    - reflection component (SurfaceColour * ReflectionFactor)
    - specular component (SurfaceColour * SpecularFactor attribute together with SpecularHighlight)
  - or, by explicitly defining such factors as colours (DiffuseColour, TransmissionColour, DiffuseTransmissionColour, ReflectionColour and SpecularColour)
- a displacement component, currently only given by a texture map with the TextureType = bump
- a coverage component, currently only given by the alpha component of the texture map (2 or 4 component colour texture)

> NOTE The inherited attribute SurfaceColour is treated as the ambient colour and specifies how much ambient light from light sources this surface shall reflect. Ambient light is omnidirectional and depends only on the number of light sources, not their positions with respect to the surface.

> NOTE If the reflectance method, as given by the IfcReflectanceMethodEnum is "GLASS", the transmission factor controls the level of transparency in the glass, In this case the transparency factor is interpreted as transmission factor.

> NOTE If both Transparency and TransmissionColour (or factor) are included, the following definitions apply:
> - Transparency is the ratio of the transmitted flux in a solid angle of 2 * PI sr (one hemisphere). It is a simple colour filtration that does not account for refraction.
> - Transmission factor of a material is the ratio of transmitted flux in a given solid angle to the transmitted flux of a completely diffuse material with 100% transmission in the same solid angle. It is the portion of light that goes through the material and may be refracted.

> NOTE For reflectance equations and further information about the surface style properties and its processing, see:
> - ISO/IEC 14772-1: 1997: The Virtual Reality Modeling Language

> HISTORY New entity in IFC2x.

Attribute definitions

# | Attribute | Type | Cardinality | Description | B
--- | --- | --- | --- | --- | ---
3 | DiffuseColour | IfcColourOrFactor | ? | The diffuse part of the reflectance equation can be given as either a colour or a scalar factor. The diffuse colour field reflects all light sources depending on the angle of the surface with respect to the light source. The more directly the surface faces the light, the more diffuse light reflects. The diffuse factor field specifies how much diffuse light from light sources this surface shall reflect. Diffuse light depends on the angle of the surface with respect to the light source. The more directly the surface faces the light, the more diffuse light reflects. The diffuse colour is then defined by surface colour * diffuse factor. | X | X
4 | TransmissionColour | IfcColourOrFactor | ? | The transmissive part of the reflectance equation can be given as either a colour or a scalar factor. It only applies to materials which Transparency field is greater than zero. The transmissive colour field specifies the colour that passes through a transparant material (like the colour that shines through a glass). The transmissive factor defines the transmissive part, the transmissive colour is then defined by surface colour * transmissive factor. | X | X
5 | DiffuseTransmissionColour | IfcColourOrFactor | ? | The diffuse transmission part of the reflectance equation can be given as either a colour or a scalar factor. It only applies to materials whose Transparency field is greater than zero. The diffuse transmission colour specifies how much diffuse light is reflected at the opposite side of the material surface. The diffuse transmission factor field specifies how much diffuse light from light sources this surface shall reflect on the opposite side of the material surface. The diffuse transmissive colour is then defined by surface colour * diffuse transmissive factor. | X | X
6 | ReflectionColour | IfcColourOrFactor | ? | The reflection (or mirror) part of the reflectance equation can be given as either a colour or a scalar factor. Applies to "glass" and "mirror" reflection models. The reflection colour specifies the contribution made by light from the mirror direction, i.e. light being reflected from the surface. The reflection factor specifies the amount of contribution made by light from the mirror direction. The reflection colour is then defined by surface colour * reflection factor. | X | X
7 | SpecularColour | IfcColourOrFactor | ? | The specular part of the reflectance equation can be given as either a colour or a scalar factor. The specular colour determine the specular highlights (e.g., the shiny spots on an apple). When the angle from the light to the surface is close to the angle from the surface to the viewer, the specular colour is added to the diffuse and ambient colour calculations. The specular factor defines the specular part, the specular colour is then defined by surface colour * specular factor. | X | X
8 | SpecularHighlight | IfcSpecularHighlightSelect | ? | The exponent or roughness part of the specular reflectance. | X | X
9 | ReflectanceMethod | IfcReflectanceMethodEnum |  | Identifies the predefined types of reflectance method from which the method required may be set. | X | X

##### Inherited definitions from supertypes

Entity inheritance
Attribute inheritance

# | Attribute | Type | Cardinality | Description | B
--- | --- | --- | --- | --- | ---
IfcPresentationItem
IfcSurfaceStyleShading
1 | SurfaceColour | IfcColourRgb |  | The colour used to render the surface. The surface colour for visualisation is defined by specifying the intensity of red, green and blue. | X | X

2

Transparency

IfcNormalisedRatioMeasure

?

The transparency field specifies how "clear" an object is, with 1.0 being completely transparent, and 0.0 completely opaque. If not given, the value 0.0 (opaque) is assumed.

> NOTE The definition of 1 being transparent and 0 being opaque is the opposite of the definition in alpha channels, where 0.0 is completely transparent and 1.0 is completely opaque. This definition is due to upward compatibility to previous versions of this standard in different to the definition in IfcIndexedColourMap.

X

X

IfcSurfaceStyleRendering
3 | DiffuseColour | IfcColourOrFactor | ? | The diffuse part of the reflectance equation can be given as either a colour or a scalar factor. The diffuse colour field reflects all light sources depending on the angle of the surface with respect to the light source. The more directly the surface faces the light, the more diffuse light reflects. The diffuse factor field specifies how much diffuse light from light sources this surface shall reflect. Diffuse light depends on the angle of the surface with respect to the light source. The more directly the surface faces the light, the more diffuse light reflects. The diffuse colour is then defined by surface colour * diffuse factor. | X | X
4 | TransmissionColour | IfcColourOrFactor | ? | The transmissive part of the reflectance equation can be given as either a colour or a scalar factor. It only applies to materials which Transparency field is greater than zero. The transmissive colour field specifies the colour that passes through a transparant material (like the colour that shines through a glass). The transmissive factor defines the transmissive part, the transmissive colour is then defined by surface colour * transmissive factor. | X | X
5 | DiffuseTransmissionColour | IfcColourOrFactor | ? | The diffuse transmission part of the reflectance equation can be given as either a colour or a scalar factor. It only applies to materials whose Transparency field is greater than zero. The diffuse transmission colour specifies how much diffuse light is reflected at the opposite side of the material surface. The diffuse transmission factor field specifies how much diffuse light from light sources this surface shall reflect on the opposite side of the material surface. The diffuse transmissive colour is then defined by surface colour * diffuse transmissive factor. | X | X
6 | ReflectionColour | IfcColourOrFactor | ? | The reflection (or mirror) part of the reflectance equation can be given as either a colour or a scalar factor. Applies to "glass" and "mirror" reflection models. The reflection colour specifies the contribution made by light from the mirror direction, i.e. light being reflected from the surface. The reflection factor specifies the amount of contribution made by light from the mirror direction. The reflection colour is then defined by surface colour * reflection factor. | X | X
7 | SpecularColour | IfcColourOrFactor | ? | The specular part of the reflectance equation can be given as either a colour or a scalar factor. The specular colour determine the specular highlights (e.g., the shiny spots on an apple). When the angle from the light to the surface is close to the angle from the surface to the viewer, the specular colour is added to the diffuse and ambient colour calculations. The specular factor defines the specular part, the specular colour is then defined by surface colour * specular factor. | X | X
8 | SpecularHighlight | IfcSpecularHighlightSelect | ? | The exponent or roughness part of the specular reflectance. | X | X
9 | ReflectanceMethod | IfcReflectanceMethodEnum |  | Identifies the predefined types of reflectance method from which the method required may be set. | X | X

##### Formal representations

XML Specification
`<xs:element name="IfcSurfaceStyleRendering" type="ifc:IfcSurfaceStyleRendering" substitutionGroup="ifc:IfcSurfaceStyleShading" nillable="true"/>
<xs:complexType name="IfcSurfaceStyleRendering">
<xs:complexContent>
<xs:extension base="ifc:IfcSurfaceStyleShading">
<xs:sequence>
<xs:element name="DiffuseColour" nillable="true" minOccurs="0">
<xs:complexType>
<xs:group ref="ifc:IfcColourOrFactor"/>
</xs:complexType>
</xs:element>
<xs:element name="TransmissionColour" nillable="true" minOccurs="0">
<xs:complexType>
<xs:group ref="ifc:IfcColourOrFactor"/>
</xs:complexType>
</xs:element>
<xs:element name="DiffuseTransmissionColour" nillable="true" minOccurs="0">
<xs:complexType>
<xs:group ref="ifc:IfcColourOrFactor"/>
</xs:complexType>
</xs:element>
<xs:element name="ReflectionColour" nillable="true" minOccurs="0">
<xs:complexType>
<xs:group ref="ifc:IfcColourOrFactor"/>
</xs:complexType>
</xs:element>
<xs:element name="SpecularColour" nillable="true" minOccurs="0">
<xs:complexType>
<xs:group ref="ifc:IfcColourOrFactor"/>
</xs:complexType>
</xs:element>
<xs:element name="SpecularHighlight" nillable="true" minOccurs="0">
<xs:complexType>
<xs:group ref="ifc:IfcSpecularHighlightSelect"/>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute name="ReflectanceMethod" type="ifc:IfcReflectanceMethodEnum" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
`
EXPRESS Specification
`ENTITY IfcSurfaceStyleRendering
SUBTYPE OF (IfcSurfaceStyleShading);
DiffuseColour : OPTIONAL IfcColourOrFactor;
TransmissionColour : OPTIONAL IfcColourOrFactor;
DiffuseTransmissionColour : OPTIONAL IfcColourOrFactor;
ReflectionColour : OPTIONAL IfcColourOrFactor;
SpecularColour : OPTIONAL IfcColourOrFactor;
SpecularHighlight : OPTIONAL IfcSpecularHighlightSelect;
ReflectanceMethod : IfcReflectanceMethodEnum;
END_ENTITY;

EXPRESS-G diagram

`

Link to this page