Class Ifc4x2::IfcUShapeProfileDef

Nested Relationships

This class is a nested type of Struct Ifc4x2.

Inheritance Relationships

Base Type

Class Documentation

class Ifc4x2::IfcUShapeProfileDef : public Ifc4x2::IfcParameterizedProfileDef

IfcUShapeProfileDef defines a section profile that provides the defining parameters of a U-shape (channel) section to be used by the swept area solid. Its parameters and orientation relative to the position coordinate system are according to the following illustration. The centre of the position coordinate system is in the profile’s centre of the bounding box.

HISTORY New entity in IFC2x2.

IFC2x3 CHANGE All profile origins are now in the center of the bounding box.

IFC2x4 CHANGE Type of FilletRadius and EdgeRadius relaxed to allow for zero radius. Trailing attribute CentreOfGravityInX deleted, use respective property in IfcExtendedProfileProperties instead.

Figure 327 illustrates parameters of the U-shape profile definition.

Position The parameterized profile defines its own position coordinate system. The underlying coordinate system is defined by the swept area solid that uses the profile definition. It is the xy plane of:


By using offsets of the position location, the parameterized profile can be positioned centric (using x,y offsets = 0.), or at any position relative to the profile.

Figure 327 — U-shape profile

Public Types

typedef IfcTemplatedEntityList<IfcUShapeProfileDef> list

Public Functions

double Depth() const

Web lengths, see illustration above (= h).

void setDepth(double v)
double FlangeWidth() const

Flange lengths, see illustration above (= b).

void setFlangeWidth(double v)
double WebThickness() const

Constant wall thickness of web (= ts).

void setWebThickness(double v)
double FlangeThickness() const

Constant wall thickness of flange (= tg).

void setFlangeThickness(double v)
bool hasFilletRadius() const

Whether the optional attribute FilletRadius is defined for this IfcUShapeProfileDef.

double FilletRadius() const

Fillet radius according the above illustration (= r1).

void setFilletRadius(double v)
bool hasEdgeRadius() const

Whether the optional attribute EdgeRadius is defined for this IfcUShapeProfileDef.

double EdgeRadius() const

Edge radius according the above illustration (= r2).

void setEdgeRadius(double v)
bool hasFlangeSlope() const

Whether the optional attribute FlangeSlope is defined for this IfcUShapeProfileDef.

double FlangeSlope() const

Slope of flange of the profile.

void setFlangeSlope(double v)
const IfcParse::entity &declaration() const
IfcUShapeProfileDef(IfcEntityInstanceData *e)
IfcUShapeProfileDef(::Ifc4x2::IfcProfileTypeEnum::Value v1_ProfileType, boost::optional<std::string> v2_ProfileName, ::Ifc4x2::IfcAxis2Placement2D *v3_Position, double v4_Depth, double v5_FlangeWidth, double v6_WebThickness, double v7_FlangeThickness, boost::optional<double> v8_FilletRadius, boost::optional<double> v9_EdgeRadius, boost::optional<double> v10_FlangeSlope)

Public Static Functions

const IfcParse::entity &Class()