IfcTextureMap提供了二维纹理坐标到它所映射到的曲面的映射。它用于将纹理映射到基于顶点的几何模型的曲面,例如:
●IfcFacetedBrep
●IfcFacetedBrepWithVoids
●IfcFaceBasedSurfaceModel
●IfcShellBasedSurfaceModel
IfcTextureMap有一个TextureVertex列表,对应于基于顶点的几何体项的外表面边界的点。对应的列表对是:
①IfcCartesianPoint类型的IfcFaceOuterBound的多边形列表,以及
②IfcTextureVertex类型的顶点列表。
每个IfcTextureVertex(以二维纹理坐标系的S、T坐标表示)对应于IfcCartesianPoint的几何坐标(以几何项的对象坐标系内的三维X、Y和Z坐标表示)。
注:根据ISO/IEC 19775-1的定义:
①TextureCoordinate节点是一个几何体属性节点,用于指定一组2D纹理坐标,这些坐标由基于顶点的几何体节点用于将纹理映射到顶点。
②注意:与基于X3D顶点文本的几何图形(例如IndexedFaceSet和ElevationGrid)相反,IFC中基于顶点文本的几何图形可能包含内部循环。内区域必须从应用于外区域的纹理中切除
上图说明了如何将纹理贴图应用于基于顶点的几何体。
IFC2x2中的新实体的历史记录。
ifc2x3更改属性纹理,删除属性纹理贴图,添加属性纹理贴图。
更改属性TextureMap,用顶点替换,添加属性AppliedTo。
非正式提议:
AppliedTo中引用的IfcFace应由基于顶点的几何体使用,该纹理贴图通过IfcStyledItem分配给该几何体。
Attribute inheritance
# | Attribute | Type | Cardinality | Description | C |
---|---|---|---|---|---|
IfcPresentationItem | |||||
IfcTextureCoordinate | |||||
1 | Maps | IfcSurfaceTexture | L[1:?] | 引用通过纹理坐标变换映射到几何曲面的IfcSurfaceTexture的一个子类型(或多个子类型,如果多个纹理具有对几何曲面的标识变换)。 | X |
IfcTextureMap | |||||
2 | Vertices | IfcTextureVertex | L[3:?] |
应用于定义面边界的多段线的对应点的纹理坐标顶点列表。 |
X |
3 | MappedTo | IfcFace | [1:1] |
定义沿面外部边界的边界多边形循环的相应点列表的面。 注意,表面可能有额外的内环。IfcTextureMap及其顶点仅与表示外部边界的IfcPolyloop的坐标相对应。 |
X |
EXPRESS Specification
ENTITY IfcTextureMap
SUBTYPE OF (IfcTextureCoordinate);
Vertices : LIST [3:?] OF IfcTextureVertex;
MappedTo : IfcFace;
END_ENTITY;