95      Error(
"ctor", 
"path not valid");
 
 
  140      Error(
"Align", 
"Not performed. Geometry in LOCKED mode !");
 
  144      Error(
"Align", 
"Cannot align using gGeoIdentity. Use some default matrix constructor to represent identities.");
 
  149      Error(
"Align", 
"Cannot align division nodes: %s\n", node->
GetName());
 
  160      for (i = 0; i < 
fLevel; i++) {
 
  164         id[i] = 
vd->GetIndex(node);
 
  171      for (i = 0; i < 
fLevel; i++) {
 
  188               Fatal(
"Align", 
"Cannot make copy node for %s", node->
GetName());
 
  198            vm->GetNodes()->RemoveAt(
id[i]);
 
  199            vm->GetNodes()->AddAt(
nnode, 
id[i]);
 
  223      Int_t nd = 
vm->GetNdaughters();
 
  225      if (
nnode->GetMatrix()->IsShared()) {
 
  227         for (i = 0; i < nd; i++) {
 
  228            node = 
vm->GetNode(i);
 
  237            if (
cs->GetBoolNode()->GetRightMatrix() != 
nnode->GetMatrix())
 
  251               Error(
"Align", 
"Cannot clone node %s", node->
GetName());
 
  259            vm->GetNodes()->RemoveAt(i);
 
  264            Error(
"Align", 
"The matrix replaced for %s is not actually shared", 
GetName());
 
  267         if (
vd->GetShape()->IsComposite()) {
 
  269            if (
cs->GetBoolNode()->GetRightMatrix()->IsShared()) {
 
  270               if (!
nnode->GetMatrix()->IsIdentity()) {
 
  271                  Error(
"Align", 
"The composite shape having a shared matrix on the subtracted branch must be " 
  272                                 "positioned using identity matrix.");
 
  289      if (!
newmat->IsRegistered())
 
  290         newmat->RegisterYourself();
 
  305   for (i = 
fLevel - 1; i > 0; i--) {
 
  314         vd->GetVoxels()->SetNeedRebuild();
 
  336              "The check for overlaps for node: \n%s\n cannot be performed since the node is declared possibly " 
  342         while ((node = 
GetNode(--i))) {
 
  348                 "The check for overlaps for assembly node: \n%s\n cannot be performed since the parent %s is declared " 
  349                 "possibly overlapping",
 
 
  454      printf(
" local matrix:\n");
 
  459      printf(
" global matrix:\n");
 
  466      printf(
" original local matrix:\n");
 
 
  487      Error(
"SetBranchAsState", 
"no state available");
 
  491      Error(
"SetBranchAsState", 
"not implemented for full cache");
 
 
  543      Error(
"SetPath", 
"wrong path -> maybe RestoreMasterVolume");
 
 
  557      Fatal(
"SetBranchAsState", 
"no state available");
 
 
  591      TString errmsg(
"Cannot define a physical node link without a closed geometry and a valid path !");
 
 
  621      Warning(
"SetPhysicalNode", 
"Physical node changed for entry %s", 
GetName());
 
 
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize id
 
R__EXTERN TGeoManager * gGeoManager
 
R__EXTERN TGeoIdentity * gGeoIdentity
 
Composite shapes are Boolean combinations of two or more shape components.
 
Matrix class used for computing global transformations Should NOT be used for node definition.
 
void Clear(Option_t *option="") override
clear the data for this matrix
 
virtual Bool_t cd(const char *path="")
Browse the tree of nodes starting from fTopNode according to pathname.
 
static Bool_t IsLocked()
Check lock state.
 
TVirtualGeoPainter * GetGeomPainter()
Make a default painter if none present. Returns pointer to it.
 
Bool_t CheckPath(const char *path) const
Check if a geometry path is valid without changing the state of the current navigator.
 
TObjArray * GetListOfGShapes() const
 
TGeoHMatrix * GetCurrentMatrix() const
 
TGeoNode * GetTopNode() const
 
TGeoNodeCache * GetCache() const
 
void SetCheckedNode(TGeoNode *node)
Assign a given node to be checked for overlaps. Any other overlaps will be ignored.
 
void CdTop()
Make top level node the current node.
 
Int_t PushPath(Int_t startlevel=0)
 
Geometrical transformation package.
 
void Print(Option_t *option="") const override
print the matrix in 4x4 format
 
Class providing navigation API for TGeo geometries.
 
Special pool of reusable nodes.
 
void * GetMatrices() const
 
A node containing local transformation.
 
A node represent a volume positioned inside another.They store links to both volumes and to the TGeoM...
 
Bool_t IsOverlapping() const
 
TGeoVolume * GetVolume() const
 
virtual TGeoMatrix * GetMatrix() const =0
 
virtual TGeoNode * MakeCopyNode() const
 
void CheckOverlaps(Double_t ovlp=0.1, Option_t *option="")
Check overlaps bigger than OVLP hierarchically, starting with this node.
 
The knowledge of the path to the objects that need to be misaligned is essential since there is no ot...
 
const TGeoHMatrix * fMatrix
 
~TGeoPNEntry() override
Destructor.
 
void SetPhysicalNode(TGeoPhysicalNode *node)
Setter for the corresponding physical node.
 
TGeoHMatrix * fGlobalOrig
 
TGeoPNEntry()
Default constructor.
 
void SetMatrix(const TGeoHMatrix *matrix)
Set the additional matrix for this node entry.
 
Physical nodes are the actual 'touchable' objects in the geometry, representing a path of positioned ...
 
void SetBranchAsState()
Set node branch according to current state.
 
TGeoNode * GetMother(Int_t levup=1) const
Return parent at LEVUP generation.
 
TGeoNode * GetNode(Int_t level=-1) const
Return node in branch at LEVEL. If not specified, return last leaf.
 
void Refresh()
Refresh this physical node.
 
Bool_t SetPath(const char *path)
Specify the path for this node.
 
void SetVisibility(Bool_t flag=kTRUE)
 
TGeoPhysicalNode()
Default constructor.
 
void SetAligned(Bool_t flag=kTRUE)
 
void Paint(Option_t *option="") override
Paint this node and its content according to visualization settings.
 
void Print(Option_t *option="") const override
Print info about this node.
 
~TGeoPhysicalNode() override
Destructor.
 
void SetVisibleFull(Bool_t flag=kTRUE)
 
Bool_t IsMatchingState(TGeoNavigator *nav) const
Checks if a given navigator state matches this physical node.
 
void SetMatrixOrig(const TGeoMatrix *local)
Allows PN entries (or users) to preset the local original matrix for the last node pointed by the pat...
 
TGeoHMatrix * GetMatrix(Int_t level=-1) const
Return global matrix for node at LEVEL.
 
void Draw(Option_t *option="") override
Draw this node.
 
TGeoHMatrix * fMatrixOrig
 
Bool_t Align(TGeoMatrix *newmat=nullptr, TGeoShape *newshape=nullptr, Bool_t check=kFALSE, Double_t ovlp=0.001)
Align a physical node with a new relative matrix/shape.
 
TGeoVolume * GetVolume(Int_t level=-1) const
Return volume associated with node at LEVEL in the branch.
 
void SetIsVolAtt(Bool_t flag=kTRUE)
 
TGeoShape * GetShape(Int_t level=-1) const
Return shape associated with volume.
 
The shape encapsulating an assembly (union) of volumes.
 
Base abstract class for all shapes.
 
virtual Bool_t IsComposite() const
 
TGeoVolume, TGeoVolumeMulti, TGeoVolumeAssembly are the volume classes.
 
virtual TGeoVolume * CloneVolume() const
Clone this volume.
 
TGeoShape * GetShape() const
 
virtual Bool_t IsAssembly() const
Returns true if the volume is an assembly or a scaled assembly.
 
Finder class handling voxels.
 
The TNamed class is the base class for all named ROOT classes.
 
const char * GetName() const override
Returns name of object.
 
void AddAt(TObject *obj, Int_t idx) override
Add object at position ids.
 
virtual void AddAtAndExpand(TObject *obj, Int_t idx)
Add object at position idx.
 
void Delete(Option_t *option="") override
Remove all objects from the array AND delete all heap based objects.
 
TObject * At(Int_t idx) const override
 
TObject * UncheckedAt(Int_t i) const
 
TObject * RemoveAt(Int_t idx) override
Remove object at index idx.
 
void Add(TObject *obj) override
 
virtual void Warning(const char *method, const char *msgfmt,...) const
Issue warning message.
 
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
 
virtual void Fatal(const char *method, const char *msgfmt,...) const
Issue fatal error message.
 
const char * Data() const
 
Abstract class for geometry painters.