Navigation
Navigate Navigate Navigate Navigate Navigate Navigate Navigate Navigate

IfcSurfaceOfLinearExtrusion

Definition from ISO/CD 10303-42:1992: This surface is a simple swept surface or a generalised cylinder obtained by sweeping a curve in a given direction. The parameterisation is as follows where the curve has a parameterisation l(u):

V = ExtrusionAxis

The parameterisation range for v is -¥ < v < ¥ and for u it is defined by the curve parameterisation.

NOTE: Corresponding STEP entity: surface_of_linear_extrusion. Please refer to ISO/IS 10303-42:1994, p.76 for the final definition of the formal standard. The following adaption has been made. The ExtrusionAxis and the Direction are defined as two separate attributes in correlation to the definition of the extruded_area_solid, and not as a single vector attribute. The vector is derived as ExtrusionAxis.

HISTORY: New entity in IFC Release 2x.

Informal propositions:

  1. The surface shall not self-intersect

EXPRESS specification:

ENTITY IfcSurfaceOfLinearExtrusion
SUBTYPE OF ( IfcSweptSurface);
ExtrudedDirection  :  IfcDirection;
Depth  :  IfcLengthMeasure;
DERIVE
ExtrusionAxis  :  IfcVector :=  IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcVector (ExtrudedDirection, Depth);
WHERE
WR41  :  Depth > 0.;
END_ENTITY;

Attribute definitions:

ExtrudedDirection  :  The direction of the extrusion.
Depth  :  The depth of the extrusion, it determines the parameterisation.
ExtrusionAxis  :  The extrusion axis defined as vector.

Inheritance graph

ENTITY IfcSurfaceOfLinearExtrusion;
ENTITY IfcRepresentationItem;
INVERSE
LayerAssignments  :  SET OF IfcPresentationLayerAssignment FOR AssignedItems;
StyledByItem  :  SET [0:1] OF IfcStyledItem FOR Item;
ENTITY IfcGeometricRepresentationItem;
ENTITY IfcSurface;
ENTITY IfcSweptSurface;
SweptCurve  :  IfcProfileDef;
Position  :  IfcAxis2Placement3D;
DERIVE
Dim  :  IfcDimensionCount :=  Position.Dim;
ENTITY IfcSurfaceOfLinearExtrusion;
ExtrudedDirection  :  IfcDirection;
Depth  :  IfcLengthMeasure;
DERIVE
ExtrusionAxis  :  IfcVector :=  IfcRepresentationItem() || IfcGeometricRepresentationItem () || IfcVector (ExtrudedDirection, Depth);
END_ENTITY;