# 3.3.1.11. NXcylindrical_geometryΒΆ

**Status**:

base class, extends NXobject

**Description**:

Geometry description for cylindrical shapes. This class can be used in place of

`NXoff_geometry`

when an exact representation for cylinders is preferred. For example, for Helium-tube, neutron detectors. It can be used to describe the shape of any beamline component, including detectors. In the case of detectors it can be used to define the shape of a single pixel, or, if the pixel shapes are non-uniform, to describe the shape of the whole detector.

**Symbols**:

These symbols will be used below.

i: number of vertices required to define all cylinders in the shape

j: number of cylinders in the shape

k: number cylinders which are detectors

**Groups cited**:none

**Structure**:

vertices[i, 3]: (optional) NX_NUMBER {units=NX_LENGTH}List of x,y,z coordinates for vertices. The origin of the coordinates is the position of the parent component, for example the NXdetector which the geometry describes. If the shape describes a single pixel for a detector with uniform pixel shape then the origin is the position of each pixel as described by the

`x/y/z_pixel_offset`

datasets in`NXdetector`

.

cylinders[j, 3]: (optional) NX_INTList of indices of vertices in the

`vertices`

dataset to form each cylinder. Each cylinder is described by three vertices A, B, C. First vertex A lies on the cylinder axis and circular face, second point B on edge of the same face as A, and third point C at the other face and on axis.

detector_number[k]: (optional) NX_INTMaps cylinders in

`cylinder`

, by index, with a detector id.