IFC 4.3.2.20240809 (IFC4X3_ADD2) under development

8.9.3.68 IfcSurfaceCurve

8.9.3.68.1 Semantic definition

An IfcSurfaceCurve is a 3-dimensional curve that has additional representations provided by one or two pcurves.

Informal Propositions

  1. Where Curve3D and one or two pcurves exist they shall represent the same mathematical point set. (i.e., they shall coincide geometrically but may differ in parametrisation.)
  2. The Curve3D and any associated pcurves shall agree with respect to their senses.

8.9.3.68.2 Entity inheritance

8.9.3.68.3 Attributes

# Attribute Type Description
IfcRepresentationItem (2)
LayerAssignment SET [0:1] OF IfcPresentationLayerAssignment FOR AssignedItems

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.

StyledByItem SET [0:1] OF IfcStyledItem FOR Item

Reference to the IfcStyledItem that provides presentation information to the representation, e.g. a curve style, including colour and thickness to a geometric curve.

IfcCurve (1)
* Dim IfcDimensionCount

This attribute is formally derived.

IfcCurveDim(SELF)

The space dimensionality of this abstract class, defined differently for all subtypes, i.e. for IfcLine, IfcConic and IfcBoundedCurve.

Click to show 3 hidden inherited attributes Click to hide 3 inherited attributes
IfcSurfaceCurve (4)
1 Curve3D IfcCurve

The curve which is the three-dimensional representation of the surface curve.

2 AssociatedGeometry LIST [1:2] OF IfcPcurve

A list of one or two pcurves which define the surface or surfaces associated with the surface curve. Two elements in this list indicate that the curve has two surface associations which need not be two distinct surfaces. Being a pcurve, it also associates a basis curve in the parameter space of this surface as an alternative representation of the surface curve.

3 MasterRepresentation IfcPreferredSurfaceCurveRepresentation

The <em<MasterRepresentation defines the curve used to determine the unique parametrisation of the IfcSurfaceCurve. The master_representation takes one of the values Curve3D, PCurve_S1 or PCurve_S2 to indicate a preference for the 3D curve, or the first or second pcurve, in the associated geometry list, respectively. Multiple representations provide the ability to communicate data in more than one form, even though the data is expected to be geometrically identical.

* BasisSurface SET [1:2] OF IfcSurface

This attribute is formally derived.

IfcGetBasisSurface(SELF)

The surface, or surfaces on which the IfcSurfaceCurve lies. This is determined from the AssociatedGeometry list.

Table 8.9.3.68.A

8.9.3.68.4 Formal propositions

Name Description
CurveIs3D

The Curve2D shall be defined in three-dimensional space.

Curve3D.Dim = 3
CurveIsNotPcurve

The Curve3D shall not be a pcurve.

NOT ('IFC4X3_DEV_20bdb3d.IFCPCURVE' IN TYPEOF(Curve3D))
Table 8.9.3.68.B

8.9.3.68.5 Formal representation

ENTITY IfcSurfaceCurve
 SUPERTYPE OF (ONEOF
	(IfcIntersectionCurve
	,IfcSeamCurve))
 SUBTYPE OF (IfcCurve);
	Curve3D : IfcCurve;
	AssociatedGeometry : LIST [1:2] OF IfcPcurve;
	MasterRepresentation : IfcPreferredSurfaceCurveRepresentation;
 DERIVE
	 BasisSurface : SET [1:2] OF IfcSurface := IfcGetBasisSurface(SELF);
 WHERE
	CurveIs3D : Curve3D.Dim = 3;
	CurveIsNotPcurve : NOT ('IFC4X3_DEV_20bdb3d.IFCPCURVE' IN TYPEOF(Curve3D));
END_ENTITY;

8.9.3.68.6 References

Edit on Github


Is this page difficult to understand? Let us know!

8.9.3.68.7 Changelog

8.9.3.68.7.1 IFC4

  • New resource