Logo ROOT   master
Reference Guide
TGeoOverlap Class Reference

Base class describing geometry overlaps.

Overlaps apply to the nodes contained inside a volume. These should not overlap to each other nor extrude the shape of their mother volume.

Definition at line 37 of file TGeoOverlap.h.

Public Types

enum  EOverlapType { kGeoOverlap = BIT(14), kGeoExtrusion = BIT(15) }
 
- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000, kNotDeleted = 0x02000000, kZombie = 0x04000000, kInconsistent = 0x08000000,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = BIT(0), kOverwrite = BIT(1), kWriteDelete = BIT(2) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = BIT(3) }
 
enum  EStatusBits {
  kCanDelete = BIT(0), kMustCleanup = BIT(3), kIsReferenced = BIT(4), kHasUUID = BIT(5),
  kCannotPick = BIT(6), kNoContextMenu = BIT(8), kInvalidObject = BIT(13)
}
 

Public Member Functions

 TGeoOverlap ()
 Default ctor. More...
 
 TGeoOverlap (const char *name, TGeoVolume *vol1, TGeoVolume *vol2, const TGeoMatrix *matrix1, const TGeoMatrix *matrix2, Bool_t isovlp=kTRUE, Double_t ovlp=0.01)
 Creates a named overlap belonging to volume VOL and having the size OVLP. More...
 
virtual ~TGeoOverlap ()
 Destructor. More...
 
void Browse (TBrowser *b)
 Define double-click action. More...
 
virtual Int_t Compare (const TObject *obj) const
 Method to compare this overlap with another. More...
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Distance to primitive for an overlap. More...
 
virtual void Draw (Option_t *option="")
 Draw the overlap. More...
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Event interception. More...
 
TGeoHMatrixGetFirstMatrix () const
 
TGeoVolumeGetFirstVolume () const
 
Double_t GetOverlap () const
 
TPolyMarker3DGetPolyMarker () const
 
TGeoHMatrixGetSecondMatrix () const
 
TGeoVolumeGetSecondVolume () const
 
Bool_t IsExtrusion () const
 
Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). More...
 
Bool_t IsOverlap () const
 
virtual Bool_t IsSortable () const
 
virtual void Paint (Option_t *option="")
 Paint the overlap. More...
 
virtual void Print (Option_t *option="") const
 Print detailed info. More...
 
virtual void PrintInfo () const
 Print some info. More...
 
void SampleOverlap (Int_t npoints=1000000)
 Draw overlap and sample with random points the overlapping region. More...
 
void SetFirstMatrix (TGeoMatrix *matrix)
 
void SetFirstVolume (TGeoVolume *vol)
 
void SetIsExtrusion (Bool_t flag=kTRUE)
 
void SetIsOverlap (Bool_t flag=kTRUE)
 
void SetNextPoint (Double_t x, Double_t y, Double_t z)
 Set next overlapping point. More...
 
void SetOverlap (Double_t ovlp)
 
void SetSecondMatrix (TGeoMatrix *matrix)
 
void SetSecondVolume (TGeoVolume *vol)
 
virtual void Sizeof3D () const
 Get 3D size of this. More...
 
void Validate () const
 Validate this overlap. More...
 
- Public Member Functions inherited from TNamed
 TNamed ()
 
 TNamed (const char *name, const char *title)
 
 TNamed (const TString &name, const TString &title)
 
 TNamed (const TNamed &named)
 TNamed copy ctor. More...
 
virtual ~TNamed ()
 TNamed destructor. More...
 
virtual void Clear (Option_t *option="")
 Set name and title to empty strings (""). More...
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility. More...
 
virtual void Copy (TObject &named) const
 Copy this to obj. More...
 
virtual void FillBuffer (char *&buffer)
 Encode TNamed into output buffer. More...
 
virtual const char * GetName () const
 Returns name of object. More...
 
virtual const char * GetTitle () const
 Returns title of object. More...
 
virtual ULong_t Hash () const
 Return hash value for this object. More...
 
virtual void ls (Option_t *option="") const
 List TNamed name and title. More...
 
TNamedoperator= (const TNamed &rhs)
 TNamed assignment operator. More...
 
virtual void SetName (const char *name)
 Set the name of the TNamed. More...
 
virtual void SetNameTitle (const char *name, const char *title)
 Set all the TNamed parameters (name and title). More...
 
virtual void SetTitle (const char *title="")
 Set the title of the TNamed. More...
 
virtual Int_t Sizeof () const
 Return size of the TNamed part of the TObject. More...
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor. More...
 
 TObject (const TObject &object)
 TObject copy ctor. More...
 
virtual ~TObject ()
 TObject destructor. More...
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract. More...
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad. More...
 
ULong_t CheckedHash ()
 Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object. More...
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs. More...
 
virtual void Delete (Option_t *option="")
 Delete this object. More...
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs. More...
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad for instance with: gROOT->SetSelectedPad(gPad). More...
 
virtual void Dump () const
 Dump contents of object on stdout. More...
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message. More...
 
virtual void Execute (const char *method, const char *params, Int_t *error=0)
 Execute method on this object with the given parameter string, e.g. More...
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=0)
 Execute method on this object with parameters stored in the TObjArray. More...
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message. More...
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes. More...
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes. More...
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object. More...
 
virtual const char * GetIconName () const
 Returns mime type name of object. More...
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py). More...
 
virtual Option_tGetOption () const
 
virtual UInt_t GetUniqueID () const
 Return the unique object id. More...
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out. More...
 
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e. More...
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message. More...
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname". More...
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl. More...
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas. More...
 
void InvertBit (UInt_t f)
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory). More...
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary). More...
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification. More...
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete. More...
 
void operator delete (void *ptr)
 Operator delete. More...
 
void operator delete[] (void *ptr)
 Operator delete []. More...
 
voidoperator new (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator new[] (size_t sz)
 
voidoperator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator. More...
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list. More...
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory. More...
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list. More...
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename. More...
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out". More...
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f. More...
 
void SetBit (UInt_t f)
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object. More...
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id. More...
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message. More...
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. More...
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory. More...
 
- Public Member Functions inherited from TAttLine
 TAttLine ()
 AttLine default constructor. More...
 
 TAttLine (Color_t lcolor, Style_t lstyle, Width_t lwidth)
 AttLine normal constructor. More...
 
virtual ~TAttLine ()
 AttLine destructor. More...
 
void Copy (TAttLine &attline) const
 Copy this line attributes to a new TAttLine. More...
 
Int_t DistancetoLine (Int_t px, Int_t py, Double_t xp1, Double_t yp1, Double_t xp2, Double_t yp2)
 Compute distance from point px,py to a line. More...
 
virtual Color_t GetLineColor () const
 Return the line color. More...
 
virtual Style_t GetLineStyle () const
 Return the line style. More...
 
virtual Width_t GetLineWidth () const
 Return the line width. More...
 
virtual void Modify ()
 Change current line attributes if necessary. More...
 
virtual void ResetAttLine (Option_t *option="")
 Reset this line attributes to default values. More...
 
virtual void SaveLineAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1, Int_t widdef=1)
 Save line attributes as C++ statement(s) on output stream out. More...
 
virtual void SetLineAttributes ()
 Invoke the DialogCanvas Line attributes. More...
 
virtual void SetLineColor (Color_t lcolor)
 Set the line color. More...
 
virtual void SetLineColorAlpha (Color_t lcolor, Float_t lalpha)
 Set a transparent line color. More...
 
virtual void SetLineStyle (Style_t lstyle)
 Set the line style. More...
 
virtual void SetLineWidth (Width_t lwidth)
 Set the line width. More...
 
- Public Member Functions inherited from TAttFill
 TAttFill ()
 AttFill default constructor. More...
 
 TAttFill (Color_t fcolor, Style_t fstyle)
 AttFill normal constructor. More...
 
virtual ~TAttFill ()
 AttFill destructor. More...
 
void Copy (TAttFill &attfill) const
 Copy this fill attributes to a new TAttFill. More...
 
virtual Color_t GetFillColor () const
 Return the fill area color. More...
 
virtual Style_t GetFillStyle () const
 Return the fill area style. More...
 
virtual Bool_t IsTransparent () const
 
virtual void Modify ()
 Change current fill area attributes if necessary. More...
 
virtual void ResetAttFill (Option_t *option="")
 Reset this fill attributes to default values. More...
 
virtual void SaveFillAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1001)
 Save fill attributes as C++ statement(s) on output stream out. More...
 
virtual void SetFillAttributes ()
 Invoke the DialogCanvas Fill attributes. More...
 
virtual void SetFillColor (Color_t fcolor)
 Set the fill area color. More...
 
virtual void SetFillColorAlpha (Color_t fcolor, Float_t falpha)
 Set a transparent fill color. More...
 
virtual void SetFillStyle (Style_t fstyle)
 Set the fill area style. More...
 
- Public Member Functions inherited from TAtt3D
 TAtt3D ()
 
virtual ~TAtt3D ()
 

Protected Attributes

TPolyMarker3DfMarker
 
TGeoHMatrixfMatrix1
 
TGeoHMatrixfMatrix2
 
Double_t fOverlap
 
TGeoVolumefVolume1
 
TGeoVolumefVolume2
 
- Protected Attributes inherited from TNamed
TString fName
 
TString fTitle
 
- Protected Attributes inherited from TAttLine
Color_t fLineColor
 Line color. More...
 
Style_t fLineStyle
 Line style. More...
 
Width_t fLineWidth
 Line width. More...
 
- Protected Attributes inherited from TAttFill
Color_t fFillColor
 Fill area color. More...
 
Style_t fFillStyle
 Fill area style. More...
 

Private Member Functions

 TGeoOverlap (const TGeoOverlap &)=delete
 
TGeoOverlapoperator= (const TGeoOverlap &)=delete
 

Additional Inherited Members

- Static Public Member Functions inherited from TObject
static Long_t GetDtorOnly ()
 Return destructor only flag. More...
 
static Bool_t GetObjectStat ()
 Get status of object stat flag. More...
 
static void SetDtorOnly (void *obj)
 Set destructor only flag. More...
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable. More...
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected). More...
 
void MakeZombie ()
 

#include <TGeoOverlap.h>

Inheritance diagram for TGeoOverlap:
[legend]

Member Enumeration Documentation

◆ EOverlapType

Enumerator
kGeoOverlap 
kGeoExtrusion 

Definition at line 43 of file TGeoOverlap.h.

Constructor & Destructor Documentation

◆ TGeoOverlap() [1/3]

TGeoOverlap::TGeoOverlap ( const TGeoOverlap )
privatedelete

◆ TGeoOverlap() [2/3]

TGeoOverlap::TGeoOverlap ( )

Default ctor.

Definition at line 39 of file TGeoOverlap.cxx.

◆ TGeoOverlap() [3/3]

TGeoOverlap::TGeoOverlap ( const char *  name,
TGeoVolume vol1,
TGeoVolume vol2,
const TGeoMatrix matrix1,
const TGeoMatrix matrix2,
Bool_t  isovlp = kTRUE,
Double_t  ovlp = 0.01 
)

Creates a named overlap belonging to volume VOL and having the size OVLP.

Definition at line 52 of file TGeoOverlap.cxx.

◆ ~TGeoOverlap()

TGeoOverlap::~TGeoOverlap ( )
virtual

Destructor.

Definition at line 74 of file TGeoOverlap.cxx.

Member Function Documentation

◆ Browse()

void TGeoOverlap::Browse ( TBrowser b)
virtual

Define double-click action.

Reimplemented from TObject.

Definition at line 84 of file TGeoOverlap.cxx.

◆ Compare()

Int_t TGeoOverlap::Compare ( const TObject obj) const
virtual

Method to compare this overlap with another.

Returns : -1 - this is smaller than OBJ 0 - equal 1 - greater

Reimplemented from TNamed.

Definition at line 96 of file TGeoOverlap.cxx.

◆ DistancetoPrimitive()

Int_t TGeoOverlap::DistancetoPrimitive ( Int_t  px,
Int_t  py 
)
virtual

Distance to primitive for an overlap.

Reimplemented from TObject.

Definition at line 116 of file TGeoOverlap.cxx.

◆ Draw()

void TGeoOverlap::Draw ( Option_t option = "")
virtual

Draw the overlap.

One daughter will be blue, the other green, extruding points red.

Reimplemented from TObject.

Definition at line 125 of file TGeoOverlap.cxx.

◆ ExecuteEvent()

void TGeoOverlap::ExecuteEvent ( Int_t  event,
Int_t  px,
Int_t  py 
)
virtual

Event interception.

Reimplemented from TObject.

Definition at line 134 of file TGeoOverlap.cxx.

◆ GetFirstMatrix()

TGeoHMatrix* TGeoOverlap::GetFirstMatrix ( ) const
inline

Definition at line 75 of file TGeoOverlap.h.

◆ GetFirstVolume()

TGeoVolume* TGeoOverlap::GetFirstVolume ( ) const
inline

Definition at line 73 of file TGeoOverlap.h.

◆ GetOverlap()

Double_t TGeoOverlap::GetOverlap ( ) const
inline

Definition at line 77 of file TGeoOverlap.h.

◆ GetPolyMarker()

TPolyMarker3D* TGeoOverlap::GetPolyMarker ( ) const
inline

Definition at line 72 of file TGeoOverlap.h.

◆ GetSecondMatrix()

TGeoHMatrix* TGeoOverlap::GetSecondMatrix ( ) const
inline

Definition at line 76 of file TGeoOverlap.h.

◆ GetSecondVolume()

TGeoVolume* TGeoOverlap::GetSecondVolume ( ) const
inline

Definition at line 74 of file TGeoOverlap.h.

◆ IsExtrusion()

Bool_t TGeoOverlap::IsExtrusion ( ) const
inline

Definition at line 78 of file TGeoOverlap.h.

◆ IsFolder()

Bool_t TGeoOverlap::IsFolder ( ) const
inlinevirtual

Returns kTRUE in case object contains browsable objects (like containers or lists of other objects).

Reimplemented from TObject.

Definition at line 80 of file TGeoOverlap.h.

◆ IsOverlap()

Bool_t TGeoOverlap::IsOverlap ( ) const
inline

Definition at line 79 of file TGeoOverlap.h.

◆ IsSortable()

virtual Bool_t TGeoOverlap::IsSortable ( ) const
inlinevirtual

Reimplemented from TNamed.

Definition at line 81 of file TGeoOverlap.h.

◆ operator=()

TGeoOverlap& TGeoOverlap::operator= ( const TGeoOverlap )
privatedelete

◆ Paint()

void TGeoOverlap::Paint ( Option_t option = "")
virtual

Paint the overlap.

Reimplemented from TObject.

Definition at line 142 of file TGeoOverlap.cxx.

◆ Print()

void TGeoOverlap::Print ( Option_t option = "") const
virtual

Print detailed info.

Reimplemented from TNamed.

Definition at line 150 of file TGeoOverlap.cxx.

◆ PrintInfo()

void TGeoOverlap::PrintInfo ( ) const
virtual

Print some info.

Definition at line 164 of file TGeoOverlap.cxx.

◆ SampleOverlap()

void TGeoOverlap::SampleOverlap ( Int_t  npoints = 1000000)

Draw overlap and sample with random points the overlapping region.

Definition at line 180 of file TGeoOverlap.cxx.

◆ SetFirstMatrix()

void TGeoOverlap::SetFirstMatrix ( TGeoMatrix matrix)
inline

Definition at line 92 of file TGeoOverlap.h.

◆ SetFirstVolume()

void TGeoOverlap::SetFirstVolume ( TGeoVolume vol)
inline

Definition at line 90 of file TGeoOverlap.h.

◆ SetIsExtrusion()

void TGeoOverlap::SetIsExtrusion ( Bool_t  flag = kTRUE)
inline

Definition at line 87 of file TGeoOverlap.h.

◆ SetIsOverlap()

void TGeoOverlap::SetIsOverlap ( Bool_t  flag = kTRUE)
inline

Definition at line 88 of file TGeoOverlap.h.

◆ SetNextPoint()

void TGeoOverlap::SetNextPoint ( Double_t  x,
Double_t  y,
Double_t  z 
)

Set next overlapping point.

Definition at line 172 of file TGeoOverlap.cxx.

◆ SetOverlap()

void TGeoOverlap::SetOverlap ( Double_t  ovlp)
inline

Definition at line 94 of file TGeoOverlap.h.

◆ SetSecondMatrix()

void TGeoOverlap::SetSecondMatrix ( TGeoMatrix matrix)
inline

Definition at line 93 of file TGeoOverlap.h.

◆ SetSecondVolume()

void TGeoOverlap::SetSecondVolume ( TGeoVolume vol)
inline

Definition at line 91 of file TGeoOverlap.h.

◆ Sizeof3D()

void TGeoOverlap::Sizeof3D ( ) const
virtual

Get 3D size of this.

Reimplemented from TAtt3D.

Definition at line 237 of file TGeoOverlap.cxx.

◆ Validate()

void TGeoOverlap::Validate ( ) const

Validate this overlap.

Definition at line 246 of file TGeoOverlap.cxx.

Member Data Documentation

◆ fMarker

TPolyMarker3D* TGeoOverlap::fMarker
protected

Definition at line 58 of file TGeoOverlap.h.

◆ fMatrix1

TGeoHMatrix* TGeoOverlap::fMatrix1
protected

Definition at line 56 of file TGeoOverlap.h.

◆ fMatrix2

TGeoHMatrix* TGeoOverlap::fMatrix2
protected

Definition at line 57 of file TGeoOverlap.h.

◆ fOverlap

Double_t TGeoOverlap::fOverlap
protected

Definition at line 53 of file TGeoOverlap.h.

◆ fVolume1

TGeoVolume* TGeoOverlap::fVolume1
protected

Definition at line 54 of file TGeoOverlap.h.

◆ fVolume2

TGeoVolume* TGeoOverlap::fVolume2
protected

Definition at line 55 of file TGeoOverlap.h.

Libraries for TGeoOverlap:
[legend]

The documentation for this class was generated from the following files: