IfcTextureMap

Natural language names
deTexturmapping
enTexture Map
frImage de texture
Change log
ItemSPFXMLChangeDescription
IFC2x3 to IFC4
    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 369 illustrates applying a texture map to a vertex based geometry.

Figure 369 — 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 C
2VerticesIfcTextureVertexL[3:?] List of texture coordinate vertices that are applied to the corresponding points of the polyloop defining a face bound.X
3MappedToIfcFace[1:1] 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
#AttributeTypeCardinalityDescriptionC
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[1:1] 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
XSD 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

Link to this page  Link to this page