Festkörper - Entlang einer Leitlinie extrudierte Kreisscheibe | |
Swept Disk Solid |
Item | SPF | XML | Change | Description | IFC2x3 to IFC4 |
---|---|---|---|---|
IfcSweptDiskSolid | ||||
StartParam | MODIFIED | Instantiation changed to OPTIONAL. | ||
EndParam | MODIFIED | Instantiation changed to OPTIONAL. |
An IfcSweptDiskSolid represents the 3D shape by a sweeping representation scheme allowing a two dimensional circularly bounded plane to sweep along a three dimensional Directrix through space.
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 332 illustrates an example.
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 332 — Swept disk solid geometry |
NOTE Definition according to ISO/CD 10303-42:1992
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.
NOTE Entity adapted from swept_disk_solid defined in ISO 10303-42.
HISTORY New entity in IFC2x2.
IFC4 CHANGE The attribute StartParam and EndParam have been made optional.
Informal Propositions:
# | Attribute | Type | Cardinality | Description | C |
---|---|---|---|---|---|
1 | Directrix | IfcCurve | [1:1] | The curve used to define the sweeping operation. The solid is generated by sweeping a circular disk along the Directrix. | X |
2 | Radius | IfcPositiveLengthMeasure | [1:1] | The Radius of the circular disk to be swept along the directrix. Denotes the outer radius, if an InnerRadius is applied. | X |
3 | InnerRadius | IfcPositiveLengthMeasure | [0:1] | This attribute is optional, if present it defines the radius of a circular hole in the centre of the disk. | X |
4 | StartParam | IfcParameterValue | [0:1] | 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.. | X |
5 | EndParam | IfcParameterValue | [0:1] | 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.. | X |
Rule | Description |
---|---|
DirectrixDim | The Directrix shall be a curve in three dimensional space. |
InnerRadiusSize | If InnerRadius exists then Radius denoting the outer radius shall be greater than InnerRadius. |
DirectrixBounded | If the values for StartParam or EndParam are omited, then the Directrix has to be a bounded or closed curve.
IFC4 CHANGE New WHERE rule. |
# | Attribute | Type | Cardinality | Description | C |
---|---|---|---|---|---|
IfcRepresentationItem | |||||
LayerAssignment | IfcPresentationLayerAssignment @AssignedItems | S[0:1] | 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. | X | |
StyledByItem | IfcStyledItem @Item | S[0:1] | Reference to the IfcStyledItem that provides presentation information to the representation, e.g. a curve style, including colour and thickness to a geometric curve. | X | |
IfcGeometricRepresentationItem | |||||
IfcSolidModel | |||||
Dim :=3 | IfcDimensionCount | [1:1] | The space dimensionality of this class, it is always 3. | X | |
IfcSweptDiskSolid | |||||
1 | Directrix | IfcCurve | [1:1] | The curve used to define the sweeping operation. The solid is generated by sweeping a circular disk along the Directrix. | X |
2 | Radius | IfcPositiveLengthMeasure | [1:1] | The Radius of the circular disk to be swept along the directrix. Denotes the outer radius, if an InnerRadius is applied. | X |
3 | InnerRadius | IfcPositiveLengthMeasure | [0:1] | This attribute is optional, if present it defines the radius of a circular hole in the centre of the disk. | X |
4 | StartParam | IfcParameterValue | [0:1] | 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.. | X |
5 | EndParam | IfcParameterValue | [0:1] | 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.. | X |
<xs:element name="IfcSweptDiskSolid" type="ifc:IfcSweptDiskSolid" substitutionGroup="ifc:IfcSolidModel" nillable="true"/>
<xs:complexType name="IfcSweptDiskSolid">
<xs:complexContent>
<xs:extension base="ifc:IfcSolidModel">
<xs:sequence>
<xs:element name="Directrix" type="ifc:IfcCurve" nillable="true"/>
</xs:sequence>
<xs:attribute name="Radius" type="ifc:IfcPositiveLengthMeasure" use="optional"/>
<xs:attribute name="InnerRadius" type="ifc:IfcPositiveLengthMeasure" use="optional"/>
<xs:attribute name="StartParam" type="ifc:IfcParameterValue" use="optional"/>
<xs:attribute name="EndParam" type="ifc:IfcParameterValue" use="optional"/>
</xs:extension>
</xs:complexContent>
</xs:complexType>
ENTITY IfcSweptDiskSolid
SUPERTYPE OF(IfcSweptDiskSolidPolygonal)
SUBTYPE OF (IfcSolidModel);
Directrix : IfcCurve;
Radius : IfcPositiveLengthMeasure;
InnerRadius : OPTIONAL IfcPositiveLengthMeasure;
StartParam : OPTIONAL IfcParameterValue;
EndParam : OPTIONAL IfcParameterValue;
WHERE
DirectrixDim : Directrix.Dim = 3;
InnerRadiusSize : (NOT EXISTS(InnerRadius)) OR (Radius > InnerRadius);
DirectrixBounded : (EXISTS(StartParam) AND EXISTS(EndParam)) OR
(SIZEOF(['IFCGEOMETRYRESOURCE.IFCCONIC', 'IFCGEOMETRYRESOURCE.IFCBOUNDEDCURVE'] * TYPEOF(Directrix)) = 1);
END_ENTITY;