ROOT logo
AliRoot » ITS » AliITSv11Geometry

class AliITSv11Geometry: public TObject

  This class is a base class for the ITS geometry version 11. It
  contains common/standard functions used in many places in defining
  the ITS geometry, version 11. Large posions of the ITS geometry,
  version 11, should be derived from this class so as to make maximum
  use of these common functions. This class also defines the proper
  conversion valuse such, to cm and degrees, such that the most usefull
  units, those used in the Engineering drawings, can be used.

Function Members (Methods)

public:
AliITSv11Geometry()
AliITSv11Geometry(Int_t debug)
AliITSv11Geometry(const AliITSv11Geometry&)
virtual~AliITSv11Geometry()
voidTObject::AbstractMethod(const char* method) const
Bool_tAngleOfIntersectionWithLine(Double_t x0, Double_t y0, Double_t x1, Double_t y1, Double_t xc, Double_t yc, Double_t rc, Double_t& t0, Double_t& t1) const
voidAnglesForRoundedCorners(Double_t x0, Double_t y0, Double_t r0, Double_t x1, Double_t y1, Double_t r1, Double_t& t0, Double_t& t1) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
Double_tCosD(Double_t deg) const
voidCreateDefaultMaterials()
virtual voidCreateMaterials()
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
voidDrawCrossSection(const TGeoPcon* p, Int_t fillc = 7, Int_t fills = 4050, Int_t linec = 3, Int_t lines = 1, Int_t linew = 4, Int_t markc = 2, Int_t marks = 4, Float_t marksize = 1.0) const
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
Bool_tGetDebug(Int_t level = 1) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual const char*TObject::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
voidInsidePoint(const TGeoPcon* p, Int_t i1, Int_t i2, Int_t i3, Double_t Cthick, TGeoPcon* q, Int_t j1, Bool_t max) const
voidInsidePoint(Double_t x0, Double_t y0, Double_t x1, Double_t y1, Double_t x2, Double_t y2, Double_t c, Double_t& x, Double_t& y) const
virtual voidTObject::Inspect() constMENU
static Bool_tIntersectCircle(Double_t m, Double_t x0, Double_t y0, Double_t rr, Double_t xc, Double_t yc, Double_t& xi1, Double_t& yi1, Double_t& xi2, Double_t& yi2)
voidIntersectLines(Double_t m, Double_t x0, Double_t y0, Double_t n, Double_t x1, Double_t y1, Double_t& xi, Double_t& yi) const
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidMakeFigure1(Double_t x0 = 0.0, Double_t y0 = 0.0, Double_t r0 = 2.0, Double_t x1 = -4.0, Double_t y1 = -2.0, Double_t r1 = 1.0)
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
AliITSv11Geometry&operator=(const AliITSv11Geometry&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
voidPrintArb8(const TGeoArb8* a) const
voidPrintBBox(const TGeoBBox* a) const
voidPrintConeSeg(const TGeoConeSeg* a) const
voidPrintPcon(const TGeoPcon* a) const
voidPrintTube(const TGeoTube* a) const
voidPrintTubeSeg(const TGeoTubeSeg* a) const
voidRadiusOfCurvature(Double_t rc, Double_t theta0, Double_t z0, Double_t r0, Double_t theta1, Double_t& z1, Double_t& r1) const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
Double_tRFrom2Points(const Double_t* ar, const Double_t* az, Int_t i1, Int_t i2, Double_t z) const
Double_tRFromZpCone(const Double_t* ar, const Double_t* az, int ip, Double_t tc, Double_t z, Double_t th = 0.0) const
Double_tRmaxFrom2Points(const TGeoPcon* p, Int_t i1, Int_t i2, Double_t z) const
Double_tRmaxFromZpCone(const TGeoPcon* p, int ip, Double_t tc, Double_t z, Double_t th = 0.0) const
Double_tRminFrom2Points(const TGeoPcon* p, Int_t i1, Int_t i2, Double_t z) const
Double_tRminFromZpCone(const TGeoPcon* p, Int_t ip, Double_t tc, Double_t z, Double_t th = 0.0) const
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidSetDebug(Int_t level = 5)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetNoDebug()
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
Double_tSinD(Double_t deg) const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Double_tTanD(Double_t deg) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
Double_tXfrom2Points(Double_t x0, Double_t y0, Double_t x1, Double_t y1, Double_t y) const
Double_tYfrom2Points(Double_t x0, Double_t y0, Double_t x1, Double_t y1, Double_t x) const
Double_tZfrom2MaxPoints(const TGeoPcon* p, Int_t i1, Int_t i2, Double_t r) const
Double_tZfrom2MinPoints(const TGeoPcon* p, Int_t i1, Int_t i2, Double_t r) const
Double_tZfrom2Points(const Double_t* az, const Double_t* ar, Int_t i1, Int_t i2, Double_t r) const
Double_tZFromRmaxpCone(const TGeoPcon* p, int ip, Double_t tc, Double_t r, Double_t th = 0.0) const
Double_tZFromRmaxpCone(const Double_t* ar, const Double_t* az, Int_t ip, Double_t tc, Double_t r, Double_t th = 0.0) const
Double_tZFromRminpCone(const TGeoPcon* p, int ip, Double_t tc, Double_t r, Double_t th = 0.0) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

protected:
static const Double_tfgkCelsiusTemperature in degrees Celcius
static const Double_tfgkDegreeConvert degrees to TGeom's degrees
static const Double_tfgkGeVEnergy in GeV
static const Double_tfgkKPascalPreasure in KPascal
static const Double_tfgkKeVEnergy in KeV
static const Double_tfgkKgdm3Density in kg/dm^3
static const Double_tfgkKgm3Density in kg/m^3
static const Double_tfgkMeVEnergy in MeV
static const Double_tfgkPascalPreasure in Pascal
static const Double_tfgkRadianTo Radians
static const Double_tfgkcmConvert cm to TGeom's cm.
static const Double_tfgkeVEnergy in eV
static const Double_tfgkgcm3Density in g/cm^3
static const Double_tfgkmicronConvert micron to TGeom's cm.
static const Double_tfgkmmConvert mm to TGeom's cm.
private:
Int_tfDebug! Debug flag/level

Class Charts

Inheritance Chart:
TObject
AliITSv11Geometry
AliITSUv0Layer
AliITSUv1Layer
AliITSv11GeometrySDD
AliITSv11GeometrySPD
AliITSv11GeometrySSD
AliITSv11GeometrySupport

Function documentation

void IntersectLines(Double_t m, Double_t x0, Double_t y0, Double_t n, Double_t x1, Double_t y1, Double_t& xi, Double_t& yi) const
 Given the two lines, one passing by (x0,y0) with slope m and
 the other passing by (x1,y1) with slope n, returns the coordinates
 of the intersecting point (xi,yi)
 Inputs:
    Double_t   m     The slope of the first line
    Double_t  x0,y0  The x and y coord. of the first point
    Double_t   n     The slope of the second line
    Double_t  x1,y1  The x and y coord. of the second point
 Outputs:
    The coordinates xi and yi of the intersection point
 Return:
    none.
 Created:      14 Dec 2009  Mario Sitta
Bool_t IntersectCircle(Double_t m, Double_t x0, Double_t y0, Double_t rr, Double_t xc, Double_t yc, Double_t& xi1, Double_t& yi1, Double_t& xi2, Double_t& yi2)
 Given a lines  passing by (x0,y0) with slope m and a circle with
 radius rr and center (xc,yc), returns the coordinates of the
 intersecting points (xi1,yi1) and (xi2,yi2) (xi1 > xi2)
 Inputs:
    Double_t   m     The slope of the line
    Double_t  x0,y0  The x and y coord. of the point
    Double_t   rr     The radius of the circle
    Double_t  xc,yc  The x and y coord. of the center of circle
 Outputs:
    The coordinates xi and yi of the intersection points
 Return:
    kFALSE if the line does not intercept the circle, otherwise kTRUE
 Created:      18 Dec 2009  Mario Sitta
Double_t Yfrom2Points(Double_t x0, Double_t y0, Double_t x1, Double_t y1, Double_t x) const
 Given the two points (x0,y0) and (x1,y1) and the location x, returns
 the value y corresponding to that point x on the line defined by the
 two points.
 Inputs:
    Double_t  x0  The first x value defining the line
    Double_t  y0  The first y value defining the line
    Double_t  x1  The second x value defining the line
    Double_t  y1  The second y value defining the line
    Double_t   x  The x value for which the y value is wanted.
 Outputs:
    none.
 Return:
    The value y corresponding to the point x on the line defined by
    the two points (x0,y0) and (x1,y1).
Double_t Xfrom2Points(Double_t x0, Double_t y0, Double_t x1, Double_t y1, Double_t y) const
 Given the two points (x0,y0) and (x1,y1) and the location y, returns
 the value x corresponding to that point y on the line defined by the
 two points.
 Inputs:
    Double_t  x0  The first x value defining the line
    Double_t  y0  The first y value defining the line
    Double_t  x1  The second x value defining the line
    Double_t  y1  The second y value defining the line
    Double_t   y  The y value for which the x value is wanted.
 Outputs:
    none.
 Return:
    The value x corresponding to the point y on the line defined by
    the two points (x0,y0) and (x1,y1).
Double_t RmaxFrom2Points(const TGeoPcon* p, Int_t i1, Int_t i2, Double_t z) const
 functions Require at parts of Volume A to be already defined.
 Retruns the value of Rmax corresponding to point z alone the line
 defined by the two points p.Rmax(i1),p-GetZ(i1) and p->GetRmax(i2),
 p->GetZ(i2).
 Inputs:
    TGeoPcon *p  The Polycone where the two points come from
    Int_t    i1  Point 1
    Int_t    i2  Point 2
    Double_t  z  The value of z for which Rmax is to be found
 Outputs:
    none.
 Return:
    Double_t Rmax the value corresponding to z
Double_t RminFrom2Points(const TGeoPcon* p, Int_t i1, Int_t i2, Double_t z) const
 Retruns the value of Rmin corresponding to point z alone the line
 defined by the two points p->GetRmin(i1),p->GetZ(i1) and
 p->GetRmin(i2),  p->GetZ(i2).
 Inputs:
    TGeoPcon *p  The Polycone where the two points come from
    Int_t    i1  Point 1
    Int_t    i2  Point 2
    Double_t  z  The value of z for which Rmax is to be found
 Outputs:
    none.
 Return:
    Double_t Rmax the value corresponding to z
Double_t RFrom2Points(const Double_t* ar, const Double_t* az, Int_t i1, Int_t i2, Double_t z) const
 Retruns the value of Rmin corresponding to point z alone the line
 defined by the two points p->GetRmin(i1),p->GetZ(i1) and
 p->GetRmin(i2), p->GetZ(i2).
 Inputs:
    Double_t az  Array of z values
    Double_t  r  Array of r values
    Int_t    i1  First Point in arrays
    Int_t    i2  Second Point in arrays
    Double_t z   Value z at which r is to be found
 Outputs:
    none.
 Return:
    The value r corresponding to z and the line defined by the two points
Double_t Zfrom2MinPoints(const TGeoPcon* p, Int_t i1, Int_t i2, Double_t r) const
 Retruns the value of Z corresponding to point R alone the line
 defined by the two points p->GetRmin(i1),p->GetZ(i1) and
 p->GetRmin(i2),p->GetZ(i2)
 Inputs:
    TGeoPcon *p  The Poly cone where the two points come from.
    Int_t    i1  First Point in arrays
    Int_t    i2  Second Point in arrays
    Double_t r   Value r min at which z is to be found
 Outputs:
    none.
 Return:
    The value z corresponding to r min and the line defined by
    the two points
Double_t Zfrom2MaxPoints(const TGeoPcon* p, Int_t i1, Int_t i2, Double_t r) const
 Retruns the value of Z corresponding to point R alone the line
 defined by the two points p->GetRmax(i1),p->GetZ(i1) and
 p->GetRmax(i2),p->GetZ(i2)
 Inputs:
    TGeoPcon *p  The Poly cone where the two points come from.
    Int_t    i1  First Point in arrays
    Int_t    i2  Second Point in arrays
    Double_t r   Value r max at which z is to be found
 Outputs:
    none.
 Return:
    The value z corresponding to r max and the line defined by
    the two points
Double_t Zfrom2Points(const Double_t* az, const Double_t* ar, Int_t i1, Int_t i2, Double_t r) const
 Retruns the value of z corresponding to point R alone the line
 defined by the two points p->GetRmax(i1),p->GetZ(i1) and
 p->GetRmax(i2),p->GetZ(i2)
 Inputs:
    Double_t  z  Array of z values
    Double_t ar  Array of r values
    Int_t    i1  First Point in arrays
    Int_t    i2  Second Point in arrays
    Double_t r   Value r at which z is to be found
 Outputs:
    none.
 Return:
    The value z corresponding to r and the line defined by the two points
Double_t RmaxFromZpCone(const TGeoPcon* p, int ip, Double_t tc, Double_t z, Double_t th = 0.0) const
 General Outer Cone surface equation Rmax.
 Intputs:
     TGeoPcon  *p   The poly cone where the initial point comes from
     Int_t     ip   The index in p to get the point location
     Double_t  tc   The angle of that part of the cone is at
     Double_t   z   The value of z to compute Rmax from
     Double_t  th   The perpendicular distance the parralell line is
                    from the point ip.
 Outputs:
     none.
 Return:
     The value Rmax correstponding to the line at angle th, offeset by
     th, and the point p->GetZ/Rmin[ip] at the location z.
Double_t RFromZpCone(const Double_t* ar, const Double_t* az, int ip, Double_t tc, Double_t z, Double_t th = 0.0) const
 General Cone surface equation R(z).
 Intputs:
     Double_t  ar   The array of R values
     Double_t  az   The array of Z values
     Int_t     ip   The index in p to get the point location
     Double_t  tc   The angle of that part of the cone is at
     Double_t   z   The value of z to compute R from
     Double_t  th   The perpendicular distance the parralell line is
                    from the point ip.
 Outputs:
     none.
 Return:
     The value R correstponding to the line at angle th, offeset by
     th, and the point p->GetZ/Rmax[ip] at the locatin z.
Double_t RminFromZpCone(const TGeoPcon* p, Int_t ip, Double_t tc, Double_t z, Double_t th = 0.0) const
 General Inner Cone surface equation Rmin.
 Intputs:
     TGeoPcon  *p   The poly cone where the initial point comes from
     Int_t     ip   The index in p to get the point location
     Double_t  tc   The angle of that part of the cone is at
     Double_t   z   The value of z to compute Rmin from
     Double_t  th   The perpendicular distance the parralell line is
                    from the point ip.
 Outputs:
     none.
 Return:
     The value Rmin correstponding to the line at angle th, offeset by
     th, and the point p->GetZ/Rmin[ip] at the location z.
Double_t ZFromRmaxpCone(const TGeoPcon* p, int ip, Double_t tc, Double_t r, Double_t th = 0.0) const
 General Outer cone Surface equation for z.
 Intputs:
     TGeoPcon  *p   The poly cone where the initial point comes from
     Int_t     ip   The index in p to get the point location
     Double_t  tc   The angle of that part of the cone is at
     Double_t   r   The value of Rmax to compute z from
     Double_t  th   The perpendicular distance the parralell line is
                    from the point ip.
 Outputs:
     none.
 Return:
     The value Z correstponding to the line at angle th, offeset by
     th, and the point p->GetZ/Rmax[ip] at the location r.
Double_t ZFromRmaxpCone(const Double_t* ar, const Double_t* az, Int_t ip, Double_t tc, Double_t r, Double_t th = 0.0) const
 General Outer cone Surface equation for z.
 Intputs:
     Double_t  ar   The array of R values
     Double_t  az   The array of Z values
     Int_t     ip   The index in p to get the point location
     Double_t  tc   The angle of that part of the cone is at
     Double_t   r   The value of Rmax to compute z from
     Double_t  th   The perpendicular distance the parralell line is
                    from the point ip.
 Outputs:
     none.
 Return:
     The value Z correstponding to the line at angle th, offeset by
     th, and the point p->GetZ/Rmax[ip] at the locatin r.
Double_t ZFromRminpCone(const TGeoPcon* p, int ip, Double_t tc, Double_t r, Double_t th = 0.0) const
 General Inner cone Surface equation for z.
 Intputs:
     TGeoPcon  *p   The poly cone where the initial point comes from
     Int_t     ip   The index in p to get the point location
     Double_t  tc   The angle of that part of the cone is at
     Double_t   r   The value of Rmin to compute z from
     Double_t  th   The perpendicular distance the parralell line is
                    from the point ip.
 Outputs:
     none.
 Return:
     The value Z correstponding to the line at angle th, offeset by
     th, and the point p->GetZ/Rmin[ip] at the location r.
void RadiusOfCurvature(Double_t rc, Double_t theta0, Double_t z0, Double_t r0, Double_t theta1, Double_t& z1, Double_t& r1) const
 Given a initial point z0,r0, the initial angle theta0, and the radius
 of curvature, returns the point z1, r1 at the angle theta1. Theta
 measured from the r axis in the clock wise direction [degrees].
 Inputs:
    Double_t rc     The radius of curvature
    Double_t theta0 The starting angle (degrees)
    Double_t z0     The value of z at theta0
    Double_t r0     The value of r at theta0
    Double_t theta1 The ending angle (degrees)
 Outputs:
    Double_t &z1  The value of z at theta1
    Double_t &r1  The value of r at theta1
 Return:
    none.
void InsidePoint(const TGeoPcon* p, Int_t i1, Int_t i2, Int_t i3, Double_t Cthick, TGeoPcon* q, Int_t j1, Bool_t max) const
 Given two lines defined by the points i1, i2,i3 in the TGeoPcon
 class p that intersect at point p->GetZ(i2) return the point z,r
 that is Cthick away in the TGeoPcon class q. If points i1=i2
 and max == kTRUE, then p->GetRmin(i1) and p->GetRmax(i2) are used.
 if points i2=i3 and max=kTRUE then points p->GetRmax(i2) and
 p->GetRmin(i3) are used. If i2=i3 and max=kFALSE, then p->GetRmin(i2)
 and p->GetRmax(i3) are used.
 Inputs:
    TGeoPcon  *p  Class where points i1, i2, and i3 are taken from
    Int_t     i1  First point in class p
    Int_t     i2  Second point in class p
    Int_t     i3  Third point in class p
    Double_t  c   Distance inside the outer surface/inner suface
                  that the point j1 is to be computed for.
    TGeoPcon  *q  Pointer to class for results to be put into.
    Int_t     j1  Point in class q where data is to be stored.
    Bool_t    max if kTRUE, then a Rmax value is computed,
                  else a Rmin valule is computed.
 Output:
    TGeoPcon  *q  Pointer to class for results to be put into.
 Return:
    none.
void InsidePoint(Double_t x0, Double_t y0, Double_t x1, Double_t y1, Double_t x2, Double_t y2, Double_t c, Double_t& x, Double_t& y) const
 Given two intersecting lines defined by the points (x0,y0), (x1,y1) and
 (x1,y1), (x2,y2) {intersecting at (x1,y1)} the point (x,y) a distance
 c away is returned such that two lines a distance c away from the
 lines defined above intersect at (x,y).
 Inputs:
    Double_t  x0 X point on the first intersecting sets of lines
    Double_t  y0 Y point on the first intersecting sets of lines
    Double_t  x1 X point on the first/second intersecting sets of lines
    Double_t  y1 Y point on the first/second intersecting sets of lines
    Double_t  x2 X point on the second intersecting sets of lines
    Double_t  y2 Y point on the second intersecting sets of lines
    Double_t  c  Distance the two sets of lines are from each other
 Output:
    Double_t  x  X point for the intersecting sets of parellel lines
    Double_t  y  Y point for the intersecting sets of parellel lines
 Return:
    none.
void PrintTube(const TGeoTube* a) const
 Prints out the content of the TGeoTube. Usefull for debugging.
 Inputs:
   TGeoTube *a
 Outputs:
   none.
 Return:
   none.
void PrintTubeSeg(const TGeoTubeSeg* a) const
 Prints out the content of the TGeoTubeSeg. Usefull for debugging.
 Inputs:
   TGeoTubeSeg *a
 Outputs:
   none.
 Return:
   none.
void PrintConeSeg(const TGeoConeSeg* a) const
 Prints out the content of the TGeoConeSeg. Usefull for debugging.
 Inputs:
   TGeoConeSeg *a
 Outputs:
   none.
 Return:
   none.
void PrintBBox(const TGeoBBox* a) const
 Prints out the content of the TGeoBBox. Usefull for debugging.
 Inputs:
   TGeoBBox *a
 Outputs:
   none.
 Return:
   none.
void CreateDefaultMaterials()
 Create ITS materials
 Defined media here should correspond to the one defined in galice.cuts
 File which is red in (AliMC*) fMCApp::Init() { ReadTransPar(); }
 Inputs:
    none.
 Outputs:
   none.
 Return:
   none.
void DrawCrossSection(const TGeoPcon* p, Int_t fillc = 7, Int_t fills = 4050, Int_t linec = 3, Int_t lines = 1, Int_t linew = 4, Int_t markc = 2, Int_t marks = 4, Float_t marksize = 1.0) const
 Draws a cross sectional view of the TGeoPcon, Primarily for debugging.
 A TCanvas should exist first.
  Inputs:
    TGeoPcon  *p  The TGeoPcon to be "drawn"
    Int_t  fillc  The fill color to be used
    Int_t  fills  The fill style to be used
    Int_t  linec  The line color to be used
    Int_t  lines  The line style to be used
    Int_t  linew  The line width to be used
    Int_t  markc  The markder color to be used
    Int_t  marks  The markder style to be used
    Float_t marksize The marker size
 Outputs:
   none.
 Return:
   none.
Bool_t AngleOfIntersectionWithLine(Double_t x0, Double_t y0, Double_t x1, Double_t y1, Double_t xc, Double_t yc, Double_t rc, Double_t& t0, Double_t& t1) const
 Computes the angles, t0 and t1 corresponding to the intersection of
 the line, defined by {x0,y0} {x1,y1}, and the circle, defined by
 its center {xc,yc} and radius r. If the line does not intersect the
 line, function returns kFALSE, otherwise it returns kTRUE. If the
 line is tangent to the circle, the angles t0 and t1 will be the same.
 Inputs:
   Double_t x0   X of first point defining the line
   Double_t y0   Y of first point defining the line
   Double_t x1   X of Second point defining the line
   Double_t y1   Y of Second point defining the line
   Double_t xc   X of Circle center point defining the line
   Double_t yc   Y of Circle center point defining the line
   Double_t r    radius of circle
 Outputs:
   Double_t &t0  First angle where line intersects circle
   Double_t &t1  Second angle where line intersects circle
 Return:
    kTRUE, line intersects circle, kFALSE line does not intersect circle
           or the line is not properly defined point {x0,y0} and {x1,y1}
           are the same point.
Double_t AngleForRoundedCorners0(Double_t dx, Double_t dy, Double_t sdr) const
 Basic function used to determine the ending angle and starting angles
 for rounded corners given the relative distance between the centers
 of the circles and the difference/sum of their radii. Case 0.
 Inputs:
   Double_t dx    difference in x locations of the circle centers
   Double_t dy    difference in y locations of the circle centers
   Double_t sdr   difference or sum of the circle radii
 Outputs:
   none.
 Return:
   the angle in Degrees
Double_t AngleForRoundedCorners1(Double_t dx, Double_t dy, Double_t sdr) const
 Basic function used to determine the ending angle and starting angles
 for rounded corners given the relative distance between the centers
 of the circles and the difference/sum of their radii. Case 1.
 Inputs:
   Double_t dx    difference in x locations of the circle centers
   Double_t dy    difference in y locations of the circle centers
   Double_t sdr   difference or sum of the circle radii
 Outputs:
   none.
 Return:
   the angle in Degrees
void AnglesForRoundedCorners(Double_t x0,Double_t y0, Double_t r0,Double_t x1, Double_t y1,Double_t r1, Double_t &t0,Double_t &t1)
 Function to compute the ending angle, for arc 0, and starting angle,
 for arc 1, such that a straight line will connect them with no
 discontinuities.

/* */
 Inputs:
    Double_t x0  X Coordinate of arc 0 center.
    Double_t y0  Y Coordinate of arc 0 center.
    Double_t r0  Radius of curvature of arc 0. For signe see figure.
    Double_t x1  X Coordinate of arc 1 center.
    Double_t y1  Y Coordinate of arc 1 center.
    Double_t r1  Radius of curvature of arc 1. For signe see figure.
 Outputs:
    Double_t t0  Ending angle of arch 0, with respect to x axis, Degrees.
    Double_t t1  Starting angle of arch 1, with respect to x axis,
                 Degrees.
 Return:
    none.
void MakeFigure1(Double_t x0 = 0.0, Double_t y0 = 0.0, Double_t r0 = 2.0, Double_t x1 = -4.0, Double_t y1 = -2.0, Double_t r1 = 1.0)
 Function to create the figure discribing how the function
 AnglesForRoundedCorners works.

 Inputs:
    Double_t x0  X Coordinate of arc 0 center.
    Double_t y0  Y Coordinate of arc 0 center.
    Double_t r0  Radius of curvature of arc 0. For signe see figure.
    Double_t x1  X Coordinate of arc 1 center.
    Double_t y1  Y Coordinate of arc 1 center.
    Double_t r1  Radius of curvature of arc 1. For signe see figure.
 Outputs:
    none.
 Return:
    none.
AliITSv11Geometry()
{}
AliITSv11Geometry(Int_t debug)
{}
virtual ~AliITSv11Geometry()
 Sets the debug flag for debugging output
{}
void SetDebug(Int_t level = 5)
 Clears the debug flag so no debugging output will be generated
{fDebug=level;}
void SetNoDebug()
 Returns the debug flag value
{fDebug=0;}
Bool_t GetDebug(Int_t level = 1) const
 Static functions

 Define Trig functions for use with degrees (standerd TGeo angles).
 Sine function
{return fDebug>=level;}
Double_t SinD(Double_t deg) const
 Cosine function
{return TMath::Sin(deg*TMath::DegToRad());}
Double_t CosD(Double_t deg) const
 Tangent function
{return TMath::Cos(deg*TMath::DegToRad());}
Double_t TanD(Double_t deg) const
 Determine the intersection of two lines
{return TMath::Tan(deg*TMath::DegToRad());}
void PrintArb8(const TGeoArb8* a) const
 Output functions for debugging

 Prints out the contents of the TGeoArb8
void PrintPcon(const TGeoPcon* a) const
 Prints out the contents of the TGeoPcon
void CreateMaterials()
 Function to create figure needed for this class' documentation
{}