Class Ifc4x1::IfcSphere

Nested Relationships

This class is a nested type of Struct Ifc4x1.

Inheritance Relationships

Base Type

Class Documentation

class Ifc4x1::IfcSphere : public Ifc4x1::IfcCsgPrimitive3D

The IfcSphere is a Construction Solid Geometry (CSG) 3D primitive. It is a solid where all points at the surface have the same distance from the center point. The inherited Position attribute defines the IfcAxisPlacement3D and provides:

SELF\IfcCsgPrimitive3D.Position: The location and orientation of the axis system for the primitive. SELF\IfcCsgPrimitive3D.Position.Location: The center of the sphere. SELF\IfcCsgPrimitive3D.Position.Position[3]: The z axis points at its positve direction towards the north pole, and by its negative directions towards the south pole.

The following definitions from ISO 10303-42 apply:

A sphere is a CSG primitive with a spherical shape defined by a centre and a radius.

Figure 270 illustrates geometric parameters of the sphere. The sphere is positioned within its own placement coordiante system. The origin is the center of the sphere.

Figure 270 — Sphere geometry

NOTE Corresponding STEP entity: sphere, the position attribute, including the centre point, has been promoted to the immediate supertype IfcCsgPrimitive3D. Please refer to ISO/IS 10303-42:1994, p. 175 for the final definition of the formal standard.

HISTORY New entity in IFC2x3.

Texture Use Definition Textures are aligned facing upright with origin at the back (+Y direction) revolving counter-clockwise. Textures are stretched or repeated to the extent of the circumference at the equator according to RepeatS and RepeatT.

Figure 271 illustrates default texture mapping with a clamped texture (RepeatS=False and RepeatT=False). The image on the left shows the texture where the S axis points to the right and the T axis points up. The image on the right shows the texture applied to the geometry where the X axis points back to the right, the Y axis points back to the left, and the Z axis points up.

Side Normal Origin X Origin Y Origin Z S Axis T Axis

Side -Y 0 +Radius 0 (-X, then curving counter-clockwise) (+Y, then curving towards top)

Figure 271 — Sphere textures

Public Types

typedef IfcTemplatedEntityList<IfcSphere> list

Public Functions

double Radius() const

The radius of the sphere.

void setRadius(double v)
const IfcParse::entity &declaration() const
IfcSphere(IfcEntityInstanceData *e)
IfcSphere(::Ifc4x1::IfcAxis2Placement3D *v1_Position, double v2_Radius)

Public Static Functions

const IfcParse::entity &Class()