# 8.8.3.32 IfcRightCircularCylinder

## 8.8.3.32.1 Semantic definition

The IfcRightCircularCylinder is a Construction Solid Geometry (CSG) 3D primitive. It is a solid with a circular base and top. The cylindrical surface between if formed by points at a fixed distance from the axis of the cylinder. 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 circular area being the bottom face of the cylinder.
• SELF\IfcCsgPrimitive3D.Position.Position[3]: The z axis provides the center axis and the height is measured from the origin along the positive direction of the z axis.

Figure 8.8.3.32.A illustrates geometric parameters of the cylinder. The cylinder is positioned within its own placement coordinate system. The origin is the center of the bottom circular disk, that lies in the XY plane. The center of the top circular disk is on the positive z axis at [0, 0, Height].

Texture use definition

On the circular side, 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 according to RepeatS. Textures are stretched or repeated to the extent of the Height according to RepeatT.

On the top and bottom faces, textures are aligned facing front-to-back, with the center of the circle aligned to the center of the texture.

Figure 8.8.3.32.B 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.

## 8.8.3.32.4 Formal representation

ENTITY IfcRightCircularCylinder
SUBTYPE OF (IfcCsgPrimitive3D);
Height : IfcPositiveLengthMeasure;
END_ENTITY;