IFC 4.3.0.0 (IFC4X3) final

4.7.11.1 Image Texture

Image textures are based on external files in common image formats such as PNG or JPEG. Such files may be located on servers according to absolute URLs, on the same server as the IFC file according to relative URLs, within the same local directory according to relative file path, within an IFC-ZIP file according to relative file path, or within an arbitrary directory according to absolute file path.

Absolute URLs are recommended for textures published at a location deemed to be permanent (independent of the building model data), while relative URLs are recommended for all other sharing scenarios. Local file paths should be avoided.

Scaling is supported to correlate the size of a texture with its physical dimensions, and enables usage of textures on parametric geometry such that texture coordinates need not be defined.

The following diagram shows the generic classes and relationships used when applying this concept.

G IfcImageTexture IfcImageTexture RepeatS [1:1] RepeatT [1:1] Mode [0:1] TextureTransform [0:1] Parameter [1:?] IsMappedBy [0:?] UsedInStyles [0:?] URLReference [1:1] IfcIdentifier_0 IfcIdentifier IfcImageTexture:Mode1->IfcIdentifier_0:IfcIdentifier0 IfcCartesianTransformationOperator2D IfcCartesianTransformationOperator2D LayerAssignment [0:1] StyledByItem [0:1] Axis1 [0:1] Axis2 [0:1] LocalOrigin [1:1] Scale [0:1] IfcImageTexture:TextureTransform1->IfcCartesianTransformationOperator2D:IfcCartesianTransformationOperator2D0 IfcCartesianTransformationOperator2DnonUniform IfcCartesianTransformationOperator2DnonUniform LayerAssignment [0:1] StyledByItem [0:1] Axis1 [0:1] Axis2 [0:1] LocalOrigin [1:1] Scale [0:1] Scale2 [0:1] IfcImageTexture:TextureTransform1->IfcCartesianTransformationOperator2DnonUniform:IfcCartesianTransformationOperator2DnonUniform0 IfcIdentifier_1 IfcIdentifier IfcImageTexture:Parameter1->IfcIdentifier_1:IfcIdentifier0 IfcURIReference IfcURIReference IfcImageTexture:URLReference1->IfcURIReference:IfcURIReference0 IfcDirection_0 IfcDirection LayerAssignment [0:1] StyledByItem [0:1] DirectionRatios [2:3] IfcCartesianTransformationOperator2D:Axis11->IfcDirection_0:IfcDirection0 IfcDirection_1 IfcDirection LayerAssignment [0:1] StyledByItem [0:1] DirectionRatios [2:3] IfcCartesianTransformationOperator2D:Axis21->IfcDirection_1:IfcDirection0 IfcCartesianPoint_0 IfcCartesianPoint LayerAssignment [0:1] StyledByItem [0:1] Coordinates [1:3] IfcCartesianTransformationOperator2D:LocalOrigin1->IfcCartesianPoint_0:IfcCartesianPoint0 IfcDirection_2 IfcDirection LayerAssignment [0:1] StyledByItem [0:1] DirectionRatios [2:3] IfcCartesianTransformationOperator2DnonUniform:Axis11->IfcDirection_2:IfcDirection0 IfcDirection_3 IfcDirection LayerAssignment [0:1] StyledByItem [0:1] DirectionRatios [2:3] IfcCartesianTransformationOperator2DnonUniform:Axis21->IfcDirection_3:IfcDirection0 IfcCartesianPoint_1 IfcCartesianPoint LayerAssignment [0:1] StyledByItem [0:1] Coordinates [1:3] IfcCartesianTransformationOperator2DnonUniform:LocalOrigin1->IfcCartesianPoint_1:IfcCartesianPoint0 IfcLengthMeasure_0 IfcLengthMeasure IfcCartesianPoint_0:Coordinates1->IfcLengthMeasure_0:IfcLengthMeasure0 IfcLengthMeasure_1 IfcLengthMeasure IfcCartesianPoint_1:Coordinates1->IfcLengthMeasure_1:IfcLengthMeasure0
Figure 4.7.11.1.A