Class Ifc4x1::IfcAdvancedBrep

Nested Relationships

This class is a nested type of Struct Ifc4x1.

Inheritance Relationships

Base Type

Derived Type

Class Documentation

class Ifc4x1::IfcAdvancedBrep : public Ifc4x1::IfcManifoldSolidBrep

An advanced B-rep is a boundary representation model in which all faces, edges and vertices are explicitly represented. It is a solid with explicit topology and elementaty or free-form geometry. The faces of the B-rep are of type IfcAdvancedFace. An advanced B-rep has to meet the same topological constraints as the manifold solid B-rep. NOTE The advanced B-rep has been introduced in order to support the increasing number of applications that can define and exchange B-rep models based on NURBS or other b-spline surfaces.

NOTE Corresponding ISO 10303-42 entity: advanced_brep_shape_representation. Please refer to ISO/IS 10303-514:1999 for the final definition of the formal standard. There is no explicit entity in ISO 10303-42 for an advanced B-rep, the advanced_brep_shape_representation only ensures that only such kind of manifold B-rep’s are used in a shape representation.

HISTORY New entity in IFC2x4

Informal proposition:

each face is a face surface; each face surface has its geometry defined by an elementary surface, swept surface or a b-spline surface; the edges used to define the boundaries of the face shall all reference an edge curve each curve used to define the geometry of the faces and face bounds shall be either a conic, or a line or a polyline or a b-spline curve the edges used to define the face boundaries shall all be trimmed by vertices of type vertex point no loop used to define a face bound shall be of the oriented subtype

Figure 249 illustrates use of IfcAdvancedBrep for boundary representation models with b-spline surfaces. The diagram shows the topological and geometric representation items that are used for advanced B-reps, based on IfcAdvancedFace.

Figure 249 — Advanced Brep

Subclassed by Ifc4x1::IfcAdvancedBrepWithVoids

Public Types

typedef IfcTemplatedEntityList<IfcAdvancedBrep> list

Public Functions

const IfcParse::entity &declaration() const
IfcAdvancedBrep(IfcEntityInstanceData *e)
IfcAdvancedBrep(::Ifc4x1::IfcClosedShell *v1_Outer)

Public Static Functions

const IfcParse::entity &Class()