IfcTextureMap

Natural language names
Texturmapping
Texture Map
Image de texture
Change log
ItemSPFXMLChangeDescription
IFC2x3 to IFC4 4.0.0.0
    IfcTextureMapMOVEDSchema changed from IFCPRESENTATIONDEFINITIONRESOURCE to IFCPRESENTATIONAPPEARANCERESOURCE.
      MapsXXMODIFIEDName changed from TextureMaps to Maps.
Type changed from IfcVertexBasedTextureMap to IfcSurfaceTexture.
Aggregation changed from SET to LIST.
      VerticesADDED
      MappedToADDED
Semantic definitions at the entity
Entity definition

An IfcTextureMap provides the mapping of the 2-dimensional texture coordinates to the surface onto which it is mapped. It is used for mapping the texture to surfaces of vertex based geometry models, such as

The IfcTextureMap has a list of TextureVertex, that corresponds to the points of the outer face bound of the vertex based geometry item. The corresponding pair of lists is:

  1. the list of Polygon of the IfcFaceOuterBound of type IfcCartesianPoint, and
  2. the list of Vertices of type IfcTextureVertex.

Each IfcTextureVertex (given as S, T coordinates of the 2-dimension texture coordinate system) corresponds to the geometric coordinates of the IfcCartesianPoint (given as 3-dimension X, Y, and Z coordinates within the object coordinate system of the geometric item).

NOTE  Definition according to ISO/IEC 19775-1:
The TextureCoordinate node is a geometry property node that specifies a set of 2D texture coordinates used by vertex-based geometry nodes to map textures to vertices.

NOTE  In contrary to the X3D vertext based geometry, for example IndexedFaceSet and ElevationGrid, the vertext based geometry in IFC may include inner loops. The areas of inner loops have to be cut-out from the texture applied to the outer loop.

IfcTextureMap_fig-1.png 35,6 KB Figure 549 illustrates applying a texture map to a vertex based geometry.

Figure 549 — Texture map

 

HISTORY  New entity in IFC2x2.

IFC2x3 CHANGE  The attribute Texture is deleted, and the attribute TextureMaps is added.

IFC4 CHANGE  The attribute TextureMap is replaced by Vertices, and the attribute AppliedTo is added.

Informal Propositions:

  1. The IfcFace referenced in AppliedTo shall be used by the vertex based geometry, to which this texture map is assigned to by through the IfcStyledItem.
Attribute definitions
#AttributeTypeCardinalityDescription G
2VerticesIfcTextureVertexL[3:?] List of texture coordinate vertices that are applied to the corresponding points of the polyloop defining a face bound. X
3MappedToIfcFace The face that defines the corresponding list of points along the bounding poly loop of the face outer bound.
NOTE  The face may have additional inner loops. The IfcTextureMap and its Vertices only correspond with the coordinates of the IfcPolyloop representing the outer bound.
X
Inherited definitions from supertypes
Entity inheritance IfcTextureCoordinate IfcPresentationItem
Attribute inheritance
#AttributeTypeCardinalityDescriptionG
IfcPresentationItem
IfcTextureCoordinate
1MapsIfcSurfaceTextureL[1:?] Reference to the one (or many in case of multi textures with identity transformation to geometric surfaces) subtype(s) of IfcSurfaceTexture that are mapped to a geometric surface by the texture coordinate transformation. X
IfcTextureMap
2VerticesIfcTextureVertexL[3:?] List of texture coordinate vertices that are applied to the corresponding points of the polyloop defining a face bound. X
3MappedToIfcFace The face that defines the corresponding list of points along the bounding poly loop of the face outer bound.
NOTE  The face may have additional inner loops. The IfcTextureMap and its Vertices only correspond with the coordinates of the IfcPolyloop representing the outer bound.
X
Formal representations
XML Specification
 <xs:element name="IfcTextureMap" type="ifc:IfcTextureMap" substitutionGroup="ifc:IfcTextureCoordinate" nillable="true"/>
 <xs:complexType name="IfcTextureMap">
  <xs:complexContent>
   <xs:extension base="ifc:IfcTextureCoordinate">
    <xs:sequence>
     <xs:element name="Vertices">
      <xs:complexType>
       <xs:sequence>
        <xs:element ref="ifc:IfcTextureVertex" minOccurs="3" maxOccurs="unbounded"/>
       </xs:sequence>
       <xs:attribute ref="ifc:itemType" fixed="ifc:IfcTextureVertex"/>
       <xs:attribute ref="ifc:cType" fixed="list"/>
       <xs:attribute ref="ifc:arraySize" use="optional"/>
      </xs:complexType>
     </xs:element>
     <xs:element name="MappedTo" type="ifc:IfcFace" nillable="true"/>
    </xs:sequence>
   </xs:extension>
  </xs:complexContent>
 </xs:complexType>
EXPRESS Specification
ENTITY IfcTextureMap
 SUBTYPE OF (IfcTextureCoordinate);
  Vertices : LIST [3:?] OF IfcTextureVertex;
  MappedTo : IfcFace;
END_ENTITY;

Link to EXPRESS-G diagram EXPRESS-G diagram

References  References: IfcFace

Link to this page  Link to this page