IFC 4.3.x development IfcOffsetCurve3D

Change log


additions where_rules DimIs2D
deletions where_rules WR1
modificationsattributes SelfIntersect definitionChanged from logical to IfcLogical


deletions attributesBasisCurve
modificationssupertype Changed from IfcCurve to IfcOffsetCurve Semantic definitions at the entity

An IfcOffsetCurve3D is a curve defined by an offset in 3D space from its BasisCurve.

NOTE Definition according to ISO/CD 10303-42:1992
An offset curve 3d is a curve at a constant distance from a basis curve in three-dimensional space. The underlying curve shall have a well-defined tangent direction at every point. In the case of a composite curve the transition code between each segment shall be cont same gradient or cont same gradient same curvature. The offset curve at any point (parameter) on the basis curve is in the direction V x T where V is the fixed reference direction and T is the unit tangent to the basis curve. For the offset direction to be well defined, T shall not at any point of the curve be in the same, or opposite, direction as V.

NOTE  The offset curve 3d may differ in nature from the basis curve; the offset of a non self- intersecting curve can be self-intersecting. Care should be taken to ensure that the offset to a continuous curve does not become discontinuous. The offset curve 3d takes its parameterization from the basis curve. The offset curve 3d is parameterized as: Math T is the unit tangent vector to the basis curve C(u) at parameter value u, and d is distance. The underlying curve shall be three-dimensional.

NOTE Entity adapted from offset_curve_3d defined in ISO 10303-42

HISTORY  New entity in IFC2x

Informal Propositions:

  1. At no point on the curve shall ref direction be parallel, or opposite to, the direction of the tangent vector. Attributes

# Attribute Type Description
LayerAssignmentSET [0:1] OF IfcPresentationLayerAssignment FOR AssignedItemsAssignment 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.
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.

> IFC2x3 CHANGE  The inverse attribute StyledByItem has been added.
Dim INVALID The space dimensionality of this abstract class, defined differently for all subtypes, i.e. for IfcLine, IfcConic and IfcBoundedCurve.
1 BasisCurve IfcCurve The curve that is being offset.
2 Distance IfcLengthMeasure The distance of the offset curve from the basis curve. The distance may be positive, negative or zero.
3 SelfIntersect IfcLogical An indication of whether the offset curve self-intersects, this is for information only.
4 RefDirection IfcDirection The direction used to define the direction of the offset curve 3d from the basis curve. Entity inheritance

dot_inheritance IfcOffsetCurve3D IfcOffsetCurve3D IfcOffsetCurve IfcOffsetCurve IfcOffsetCurve3D->IfcOffsetCurve IfcOffsetCurve2D IfcOffsetCurve2D IfcOffsetCurve2D->IfcOffsetCurve IfcCurve IfcCurve IfcOffsetCurve->IfcCurve IfcOffsetCurveByDistances IfcOffsetCurveByDistances IfcOffsetCurveByDistances->IfcOffsetCurve IfcCurve_children 7 more... IfcCurve_children->IfcCurve IfcGeometricRepresentationItem IfcGeometricRepresentationItem IfcCurve->IfcGeometricRepresentationItem IfcGeometricRepresentationItem_children 24 more... IfcGeometricRepresentationItem_children->IfcGeometricRepresentationItem IfcRepresentationItem IfcRepresentationItem IfcGeometricRepresentationItem->IfcRepresentationItem IfcRepresentationItem_children 3 more... IfcRepresentationItem_children->IfcRepresentationItem Formal representations

ENTITY IfcOffsetCurve3D
 SUBTYPE OF (IfcOffsetCurve);
	Distance : IfcLengthMeasure;
	SelfIntersect : IfcLogical;
	RefDirection : IfcDirection;
	DimIs2D : BasisCurve.Dim = 3;