base class, extends NXobject


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.


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:



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_INT

List 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_INT

Maps cylinders in cylinder, by index, with a detector id.

NXDL Source: