IfcAdvancedFace

Natural language names
Fläche - komplex
Advanced Face
Face avancée
Change log
ItemSPFXMLChangeDescription
IFC2x3 to IFC4 4.0.0.0
    IfcAdvancedFaceADDED
IFC4 Addendum 1 4.0.1.0
    IfcAdvancedFace
      SameSenseMODIFIEDType changed from BOOLEAN to IfcBoolean.
Semantic definitions at the entity
Entity definition

An advanced face is a specialization of a face surface that has to meet requirements on using particular topological and geometric representation items for the definition of the faces, edges and vertices.

An IfcAdvancedFace is restricted to:

In case of closed faces with periodic surfaces, such as cylindrical or spherical surfaces, the following applies:

"cylindrical surface"

Figure 586 — Use of IfcCylindricalSurface as underlying surface of an IfcAdvancedFace

NOTE  Entity adapted from advanced_face defined in ISO 10303-511.

HISTORY  New entity in IFC4

Formal Propositions
RuleDescription
ApplicableSurfaceThe geometry used in the definition of the face shall be restricted. The face geometry shall be an IfcElementarySurface, IfcSweptSurface, or IfcBSplineSurface.
RequiresEdgeCurveThe geometry of all bounding edges of the face shall be fully defined as IfcEdgeCurve's.
ApplicableEdgeCurvesThe types of curve used to define the geometry of edges shall be restricted to IfcLine, IfcConic, IfcPolyline, or IfcBSplineCurve.
Inherited definitions from supertypes
Entity inheritance IfcFaceSurface IfcFace IfcTopologicalRepresentationItem IfcRepresentationItem
Attribute inheritance
#AttributeTypeCardinalityDescriptionG
IfcRepresentationItem
LayerAssignmentIfcPresentationLayerAssignment
@AssignedItems
S[0:1]Assignment of the representation item to a single or multiple layer(s). The LayerAssignments can override a LayerAssignments of the IfcRepresentation it is used within the list of Items.
IFC2x3 CHANGE  The inverse attribute LayerAssignments has been added.
IFC4 CHANGE  The inverse attribute LayerAssignment has been restricted to max 1. Upward compatibility for file based exchange is guaranteed.
X
StyledByItemIfcStyledItem
@Item
S[0:1]Reference to the IfcStyledItem that provides presentation information to the representation, e.g. a curve style, including colour and thickness to a geometric curve.
IFC2x3 CHANGE  The inverse attribute StyledByItem has been added.
X
IfcTopologicalRepresentationItem
IfcFace
1BoundsIfcFaceBoundS[1:?] Boundaries of the face. X
HasTextureMapsIfcTextureMap
@MappedTo
S[0:?]X
IfcFaceSurface
2FaceSurfaceIfcSurface The surface which defines the internal shape of the face. This surface may be unbounded. The domain of the face is defined by this surface and the bounding loops in the inherited attribute SELF\FaceBounds. X
3SameSenseIfcBoolean This flag indicates whether the sense of the surface normal agrees with (TRUE), or opposes (FALSE), the sense of the topological normal to the face. X
IfcAdvancedFace
Formal representations
XML Specification
 <xs:element name="IfcAdvancedFace" type="ifc:IfcAdvancedFace" substitutionGroup="ifc:IfcFaceSurface" nillable="true"/>
 <xs:complexType name="IfcAdvancedFace">
  <xs:complexContent>
   <xs:extension base="ifc:IfcFaceSurface"/>
  </xs:complexContent>
 </xs:complexType>
EXPRESS Specification
ENTITY IfcAdvancedFace
 SUBTYPE OF (IfcFaceSurface);
 WHERE
  ApplicableSurface : SIZEOF (
['IFCGEOMETRYRESOURCE.IfcElementarySurface',
'IFCGEOMETRYRESOURCE.IfcSweptSurface',
'IFCGEOMETRYRESOURCE.IfcBSplineSurface'] *
TYPEOF(SELF\IfcFaceSurface.FaceSurface)) = 1;
  RequiresEdgeCurve : SIZEOF(QUERY (ElpFbnds <*
QUERY (Bnds <* SELF\IfcFace.Bounds |
'IFCTOPOLOGYRESOURCE.IfcEdgeLoop' IN TYPEOF(Bnds.Bound)) |
NOT (SIZEOF (QUERY (Oe <* ElpFbnds.Bound\IfcEdgeLoop.EdgeList |
NOT('IFCTOPOLOGYRESOURCE.IfcEdgeCurve' IN
TYPEOF(Oe\IfcOrientedEdge.EdgeElement)
))) = 0
))) = 0;
  ApplicableEdgeCurves : SIZEOF(QUERY (ElpFbnds <*
QUERY (Bnds <* SELF\IfcFace.Bounds |
'IFCTOPOLOGYRESOURCE.IfcEdgeLoop' IN TYPEOF(Bnds.Bound)) |
NOT (SIZEOF (QUERY (Oe <* ElpFbnds.Bound\IfcEdgeLoop.EdgeList |
NOT (SIZEOF (['IFCGEOMETRYRESOURCE.IfcLine',
'IFCGEOMETRYRESOURCE.IfcConic',
'IFCGEOMETRYRESOURCE.IfcPolyline',
'IFCGEOMETRYRESOURCE.IfcBSplineCurve'] *
TYPEOF(Oe\IfcOrientedEdge.EdgeElement\IfcEdgeCurve.EdgeGeometry)) = 1 )
)) = 0
))) = 0;
END_ENTITY;

Link to EXPRESS-G diagram EXPRESS-G diagram

Link to this page  Link to this page