IFC 4.3.0.0 (IFC4X3) final

4.7.1.4.1 Advanced Brep Geometry

The following diagram shows the generic classes and relationships used when applying this concept.

G IfcAdvancedBrep IfcAdvancedBrep LayerAssignment [0:1] StyledByItem [0:1] Outer [1:1] IfcClosedShell IfcClosedShell LayerAssignment [0:1] StyledByItem [0:1] CfsFaces [1:?] IfcAdvancedBrep:Outer1->IfcClosedShell:IfcClosedShell0 IfcAdvancedFace IfcAdvancedFace LayerAssignment [0:1] StyledByItem [0:1] Bounds [1:?] HasTextureMaps [0:?] FaceSurface [1:1] SameSense [1:1] IfcClosedShell:CfsFaces1->IfcAdvancedFace:IfcAdvancedFace0 IfcFaceOuterBound IfcFaceOuterBound LayerAssignment [0:1] StyledByItem [0:1] Bound [1:1] Orientation [1:1] IfcAdvancedFace:Bounds1->IfcFaceOuterBound:IfcFaceOuterBound0 IfcRationalBSplineSurfaceWithKnots IfcRationalBSplineSurfaceWithKnots LayerAssignment [0:1] StyledByItem [0:1] UDegree [1:1] VDegree [1:1] ControlPointsList [2:?] SurfaceForm [1:1] UClosed [1:1] VClosed [1:1] SelfIntersect [1:1] UMultiplicities [2:?] VMultiplicities [2:?] UKnots [2:?] VKnots [2:?] KnotSpec [1:1] WeightsData [2:?] IfcAdvancedFace:FaceSurface1->IfcRationalBSplineSurfaceWithKnots:IfcRationalBSplineSurfaceWithKnots0 IfcCylindricalSurface IfcCylindricalSurface LayerAssignment [0:1] StyledByItem [0:1] Position [1:1] Radius [1:1] IfcAdvancedFace:FaceSurface1->IfcCylindricalSurface:IfcCylindricalSurface0 IfcSphericalSurface IfcSphericalSurface LayerAssignment [0:1] StyledByItem [0:1] Position [1:1] Radius [1:1] IfcAdvancedFace:FaceSurface1->IfcSphericalSurface:IfcSphericalSurface0 IfcToroidalSurface IfcToroidalSurface LayerAssignment [0:1] StyledByItem [0:1] Position [1:1] MajorRadius [1:1] MinorRadius [1:1] IfcAdvancedFace:FaceSurface1->IfcToroidalSurface:IfcToroidalSurface0 IfcPlane IfcPlane LayerAssignment [0:1] StyledByItem [0:1] Position [1:1] IfcAdvancedFace:FaceSurface1->IfcPlane:IfcPlane0 IfcBoolean_0 IfcBoolean IfcFaceOuterBound:Orientation1->IfcBoolean_0:IfcBoolean0 IfcEdgeLoop IfcEdgeLoop LayerAssignment [0:1] StyledByItem [0:1] EdgeList [1:?] IfcFaceOuterBound:Bound1->IfcEdgeLoop:IfcEdgeLoop0 IfcInteger_2 IfcInteger IfcRationalBSplineSurfaceWithKnots:UDegree1->IfcInteger_2:IfcInteger0 IfcInteger_3 IfcInteger IfcRationalBSplineSurfaceWithKnots:VDegree1->IfcInteger_3:IfcInteger0 IfcCartesianPoint_2 IfcCartesianPoint LayerAssignment [0:1] StyledByItem [0:1] Coordinates [1:3] IfcRationalBSplineSurfaceWithKnots:ControlPointsList1->IfcCartesianPoint_2:IfcCartesianPoint0 IfcLogical_2 IfcLogical IfcRationalBSplineSurfaceWithKnots:UClosed1->IfcLogical_2:IfcLogical0 IfcLogical_3 IfcLogical IfcRationalBSplineSurfaceWithKnots:VClosed1->IfcLogical_3:IfcLogical0 IfcInteger_4 IfcInteger IfcRationalBSplineSurfaceWithKnots:UMultiplicities1->IfcInteger_4:IfcInteger0 IfcInteger_5 IfcInteger IfcRationalBSplineSurfaceWithKnots:VMultiplicities1->IfcInteger_5:IfcInteger0 IfcParameterValue_1 IfcParameterValue IfcRationalBSplineSurfaceWithKnots:UKnots1->IfcParameterValue_1:IfcParameterValue0 IfcParameterValue_2 IfcParameterValue IfcRationalBSplineSurfaceWithKnots:VKnots1->IfcParameterValue_2:IfcParameterValue0 IfcKnotType_1 IfcKnotType IfcRationalBSplineSurfaceWithKnots:KnotSpec1->IfcKnotType_1:IfcKnotType0 IfcReal_1 IfcReal IfcRationalBSplineSurfaceWithKnots:WeightsData1->IfcReal_1:IfcReal0 IfcAxis2Placement3D_0 IfcAxis2Placement3D LayerAssignment [0:1] StyledByItem [0:1] Location [1:1] Axis [0:1] RefDirection [0:1] IfcCylindricalSurface:Position1->IfcAxis2Placement3D_0:IfcAxis2Placement3D0 IfcPositiveLengthMeasure_0 IfcPositiveLengthMeasure IfcCylindricalSurface:Radius1->IfcPositiveLengthMeasure_0:IfcPositiveLengthMeasure0 IfcAxis2Placement3D_1 IfcAxis2Placement3D LayerAssignment [0:1] StyledByItem [0:1] Location [1:1] Axis [0:1] RefDirection [0:1] IfcToroidalSurface:Position1->IfcAxis2Placement3D_1:IfcAxis2Placement3D0 IfcPositiveLengthMeasure_1 IfcPositiveLengthMeasure IfcToroidalSurface:MajorRadius1->IfcPositiveLengthMeasure_1:IfcPositiveLengthMeasure0 IfcPositiveLengthMeasure_2 IfcPositiveLengthMeasure IfcToroidalSurface:MinorRadius1->IfcPositiveLengthMeasure_2:IfcPositiveLengthMeasure0 IfcAxis2Placement3D_2 IfcAxis2Placement3D LayerAssignment [0:1] StyledByItem [0:1] Location [1:1] Axis [0:1] RefDirection [0:1] IfcPlane:Position1->IfcAxis2Placement3D_2:IfcAxis2Placement3D0 IfcOrientedEdge IfcOrientedEdge LayerAssignment [0:1] StyledByItem [0:1] EdgeStart [1:1] EdgeEnd [1:1] EdgeElement [1:1] Orientation [1:1] IfcEdgeLoop:EdgeList1->IfcOrientedEdge:IfcOrientedEdge0 IfcEdgeCurve IfcEdgeCurve LayerAssignment [0:1] StyledByItem [0:1] EdgeStart [1:1] EdgeEnd [1:1] EdgeGeometry [1:1] SameSense [1:1] IfcOrientedEdge:EdgeElement1->IfcEdgeCurve:IfcEdgeCurve0 IfcVertexPoint_0 IfcVertexPoint LayerAssignment [0:1] StyledByItem [0:1] VertexGeometry [1:1] IfcEdgeCurve:EdgeStart1->IfcVertexPoint_0:IfcVertexPoint0 IfcVertexPoint_1 IfcVertexPoint LayerAssignment [0:1] StyledByItem [0:1] VertexGeometry [1:1] IfcEdgeCurve:EdgeEnd1->IfcVertexPoint_1:IfcVertexPoint0 IfcRationalBSplineCurveWithKnots IfcRationalBSplineCurveWithKnots LayerAssignment [0:1] StyledByItem [0:1] Degree [1:1] ControlPointsList [2:?] CurveForm [1:1] ClosedCurve [1:1] SelfIntersect [1:1] KnotMultiplicities [2:?] Knots [2:?] KnotSpec [1:1] WeightsData [2:?] IfcEdgeCurve:EdgeGeometry1->IfcRationalBSplineCurveWithKnots:IfcRationalBSplineCurveWithKnots0 IfcPolyline IfcPolyline LayerAssignment [0:1] StyledByItem [0:1] Points [2:?] IfcEdgeCurve:EdgeGeometry1->IfcPolyline:IfcPolyline0 IfcBoolean_1 IfcBoolean IfcEdgeCurve:SameSense1->IfcBoolean_1:IfcBoolean0 IfcInteger_0 IfcInteger IfcRationalBSplineCurveWithKnots:Degree1->IfcInteger_0:IfcInteger0 IfcCartesianPoint_0 IfcCartesianPoint LayerAssignment [0:1] StyledByItem [0:1] Coordinates [1:3] IfcRationalBSplineCurveWithKnots:ControlPointsList1->IfcCartesianPoint_0:IfcCartesianPoint0 IfcBSplineCurveForm IfcBSplineCurveForm IfcRationalBSplineCurveWithKnots:CurveForm1->IfcBSplineCurveForm:IfcBSplineCurveForm0 IfcLogical_0 IfcLogical IfcRationalBSplineCurveWithKnots:ClosedCurve1->IfcLogical_0:IfcLogical0 IfcLogical_1 IfcLogical IfcRationalBSplineCurveWithKnots:SelfIntersect1->IfcLogical_1:IfcLogical0 IfcInteger_1 IfcInteger IfcRationalBSplineCurveWithKnots:KnotMultiplicities1->IfcInteger_1:IfcInteger0 IfcParameterValue_0 IfcParameterValue IfcRationalBSplineCurveWithKnots:Knots1->IfcParameterValue_0:IfcParameterValue0 IfcKnotType_0 IfcKnotType IfcRationalBSplineCurveWithKnots:KnotSpec1->IfcKnotType_0:IfcKnotType0 IfcReal_0 IfcReal IfcRationalBSplineCurveWithKnots:WeightsData1->IfcReal_0:IfcReal0 IfcCartesianPoint_1 IfcCartesianPoint LayerAssignment [0:1] StyledByItem [0:1] Coordinates [1:3] IfcPolyline:Points1->IfcCartesianPoint_1:IfcCartesianPoint0
Figure 4.7.1.4.1.A