#include <FixedPadSizeDiskLayout.h>
Inheritance diagram for gear::FixedPadSizeDiskLayout:
Public Member Functions | |
FixedPadSizeDiskLayout (double rMin, double rMax, double padHeight, double PadWidth, int nRow=0, double padGap=0.) | |
Construct the FixedPadSizeDiskLayout from the given parameters rMin, rMax, padHeight and PadWidth where the maximum number of pads are fitted to the plane. | |
virtual | ~FixedPadSizeDiskLayout () |
Destructor. | |
virtual double | getPadGap () const |
The gap width in mm that was given in the C'tor. | |
virtual double | getFixedPadWidth () const |
The fixed width of the pads in mm. | |
virtual int | getPadLayoutType () const |
The type of the row layout: PadRowLayout2D::POLAR. | |
virtual int | getPadShape () const |
The shape of the pads: PadRowLayout2D::RECTANGLE (i.e. | |
virtual int | getNPads () const |
The total number of pads in the TPC. | |
virtual int | getNRows () const |
The number of rows. | |
virtual double | getRowHeight (int rowNumber) const |
The row height in mm. | |
virtual double | getPadHeight (int padIndex) const |
The height of the pad in mm. | |
virtual double | getPadWidth (int padIndex) const |
The width of the pad in radians NB! | |
virtual Point2D | getPadCenter (int padIndex) const |
The center of the pad in 2d coordinates, (x,y) or (r,phi). | |
virtual const std::vector< int > & | getPadsInRow (int rowNumber) const |
Indices of all pads in row rowNumber (row indices start from 0 at the bottom (CARTESIAN) or at the center (POLAR)). | |
virtual const std::vector< double > & | getPlaneExtent () const |
Extent of the sensitive plane - [xmin,xmax,ymin,ymax] CARTESIAN or [rmin,rmax,phimin,phimax] POLAR. | |
virtual int | getRowNumber (int padIndex) const |
The number of the row that contains the pad at padIndex - numbering starts at r/y==0. | |
virtual int | getPadNumber (int padIndex) const |
The pad number (column) within the row - numbering starts at phi/x =. | |
virtual int | getPadIndex (int rowNum, int padNum) const |
Create a padIndex for the given row and pad ( column ) number. | |
virtual int | getNearestPad (double c0, double c1) const |
The index of the pad nearest to the given point in 2d coordinates (x,y,) or (r,phi). | |
virtual int | getRightNeighbour (int padIndex) const |
The index of the right neighbour pad. | |
virtual int | getLeftNeighbour (int padIndex) const |
The index of the left neighbour pad. | |
virtual bool | isInsidePad (double c0, double c1, int padIndex) const |
True if coordinate (c0,c1) is within the given pad. | |
virtual bool | isInsidePad (double c0, double c1) const |
True if coordinate (c0,c1) is within any pad. | |
Protected Attributes | |
double | _rMin |
double | _rMax |
double | _rowHeight |
double | _padWidth |
double | _padHeight |
double | _padGap |
int | _nRow |
int | _nPad |
std::vector< Row > | _rows |
std::vector< double > | _extent |
std::vector< std::vector< int > * > | _padIndices |
The pads with the given height and width are distributed in symmetrical rings starting with the pad number 0 above the x-axis so that the pad 0 is fully contained in the first quadrant (x>0,y>0 ) and symmetyrical to the last pad right below the the x-axis. The pad width is the width alog the ring's circumference at the middle of the row (through the pad center).
|
Construct the FixedPadSizeDiskLayout from the given parameters rMin, rMax, padHeight and PadWidth where the maximum number of pads are fitted to the plane.
|
|
The shape of the pads: PadRowLayout2D::RECTANGLE (i.e. keystone). Implements gear::PadRowLayout2D. |