Class Ifc2x3::IfcSweptDiskSolid¶
Defined in File Ifc2x3.h
Nested Relationships¶
This class is a nested type of Struct Ifc2x3.
Inheritance Relationships¶
Base Type¶
public Ifc2x3::IfcSolidModel
(Class Ifc2x3::IfcSolidModel)
Class Documentation¶
-
class
Ifc2x3
::
IfcSweptDiskSolid
: public Ifc2x3::IfcSolidModel¶ Definition from ISO 10303-42:2002: A swept disk solid is the solid produced by sweeping a circular disk along a three dimensional curve. During the sweeping operation the normal to the plane of the circular disk is in the direction of the tangent to the directrix curve and the center of the disk lies on the directrix. The circular disk may, optionally, have a central hole, in this case the resulting solid has a through hole, or, an internal void when the directrix forms a close curve. The StartParam and EndParam parameter are optional, if not provided they default to the start and end of the Directrix. Only if the Directrix is given by a bounded or by a closed curve, it is permissible to omit the values of StartParam and EndParam. If the transitions between consecutive segments of the Directrix are not tangent continuous, the resulting solid is created by a miter at half angle between the two segments. Informal proposition restricts the permissible angle between two non-tangent continuous segments.
Figure 272 illustrates an example.
Directrix given as IfcCompositeCurve being tangent continuous between its segments Directrix being a bounded and open curve No StartParam and EndParam are provided, start and end default to start and end of the bounded curve of the Directrix
NOTE Although the example shows a Directrix as a composite curve on a planar reference surface, the definition of IfcSweptDiskSolid is not restricted to be based on planer curves. However view definitions or implementer agreements may provide restrictions.
Figure 272 — Swept disk solid geometry
NOTE Corresponding ISO 10303-42 entity: swept_disk_solid. Please refer to ISO/FDIS 10303-42:2002, p. 282 for the definition of the formal standard.
HISTORY New entity in IFC Release 2x2.
IFC2x4 CHANGE The attribute StartParam and EndParam have been made optional.
Informal proposition
If the Directrix curve definition is not tangent continuous, the transition between the segments has to be within an acceptable limit of tangent discontinuity. Very sharp edges may result in nearly impossible miter. Implementer agreements may define acceptable limits for tangent discontinuity. The segments of the Directrix shall be long enough to apply the Radius. In case of an arc segment forming part of the Directrix ,its radius shall be greater then the disk Radius The Directrix shall not be based on an intersecting curve.
Public Types
-
typedef IfcTemplatedEntityList<IfcSweptDiskSolid>
list
¶
Public Functions
-
::Ifc2x3::IfcCurve *
Directrix
() const¶ The curve used to define the sweeping operation. The solid is generated by sweeping a circular disk along the Directrix.
-
double
Radius
() const¶ The Radius of the circular disk to be swept along the directrix. Denotes the outer radius, if an InnerRadius is applied.
-
void
setRadius
(double v)¶
-
bool
hasInnerRadius
() const¶ Whether the optional attribute InnerRadius is defined for this IfcSweptDiskSolid.
-
double
InnerRadius
() const¶ This attribute is optional, if present it defines the radius of a circular hole in the centre of the disk.
-
void
setInnerRadius
(double v)¶
-
double
StartParam
() const¶ The parameter value on the Directrix at which the sweeping operation commences. If no value is provided the start of the sweeping operation is at the start of the Directrix..
IFC2x4 CHANGE The attribute has been changed to OPTIONAL with upward compatibility for file-based exchange.
-
void
setStartParam
(double v)¶
-
double
EndParam
() const¶ The parameter value on the Directrix at which the sweeping operation ends. If no value is provided the end of the sweeping operation is at the end of the Directrix..
IFC2x4 CHANGE The attribute has been changed to OPTIONAL with upward compatibility for file-based exchange.
-
void
setEndParam
(double v)¶
-
IfcSweptDiskSolid
(IfcEntityInstanceData *e)¶
-
typedef IfcTemplatedEntityList<IfcSweptDiskSolid>