Class Ifc4::IfcSurfaceOfRevolution

Nested Relationships

This class is a nested type of Struct Ifc4.

Inheritance Relationships

Base Type

Class Documentation

class Ifc4::IfcSurfaceOfRevolution : public Ifc4::IfcSweptSurface

Definition from ISO/CD 10303-42:1992: A surface of revolution (IfcSurfaceOfRevolution) is the surface obtained by rotating a curve one complete revolution about an axis. The data shall be interpreted as below.

The parameterization is as follows where the curve has a parameterization l(u):

C = AxisPosition.LocationV = AxisPosition.Z

In order to produce a single-value surface the a complete revolution, the curve shall be such that when expressed in a cylindrical coordinate system the curve shall be such that when expressed in a cylindrical coordinate system (r,φ ,z) centred at C with an axis V no two distinct parametric points on the curve shall have the same values for (r, z).

For a surface of revolution the parametric range is 0 < u < 360 degree. The parameterization range for v is defined by referenced curve.

NOTE: Corresponding ISO 10303 entity: surface_of_revolution. Please refer to ISO/IS 10303-42:1994, p.76 for the final definition of the formal standard.

HISTORY: New entity in IFC2x.

Informal propositions:

The surface shall not self-intersect The swept curve shall not be coincident with the axis line for any finite part of its legth.

Public Functions

::Ifc4::IfcAxis1Placement *AxisPosition() const

A point on the axis of revolution and the direction of the axis of revolution.

void setAxisPosition(::Ifc4::IfcAxis1Placement *v)
const IfcParse::entity &declaration() const
IfcSurfaceOfRevolution(IfcEntityInstanceData *e)
IfcSurfaceOfRevolution(::Ifc4::IfcProfileDef *v1_SweptCurve, ::Ifc4::IfcAxis2Placement3D *v2_Position, ::Ifc4::IfcAxis1Placement *v3_AxisPosition)

Public Static Functions

const IfcParse::entity &Class()