Go to the documentation of this file.
2 #include "TGeoOverlap.h"
3 #include "TEveGeoShape.h"
29 std::advance(sit, topNodeIdx);
33 bool drawsChildren =
false;
39 paintShape(topNodeIdx, mtx,
false, drawsChildren);
45 const TGeoHMatrix& parentMtx) {
46 TGeoNode* parentNode = pIt->m_node;
47 int nD = parentNode->GetNdaughters();
54 bool drawsChildren =
false;
57 for (
int n = 0;
n != nD; ++
n) {
59 std::advance(it,
n + dOff);
60 cnt = pcnt +
n + dOff;
62 TGeoHMatrix nm = parentMtx;
63 nm.Multiply(it->m_node->GetMatrix());
65 bool drawsChildrenSecondGen =
false;
72 it->m_node->GetOverlaps(nno);
75 paintShape(cnt, nm,
false, drawsChildrenSecondGen);
80 paintShape(cnt, nm,
false, drawsChildrenSecondGen);
85 drawsChildren |= drawsChildrenSecondGen;
95 std::set<TGLPhysicalShape*>::iterator it =
fHted.begin();
98 return Form(
"TopNode ");
117 nodePopup->Connect(
"Activated(Int_t)",
"FWOverlapTableView",
m_browser,
"chosenItem(Int_t)");
static TGeoManager * getGeoMangeur()
bool paintChildNodesRecurse(FWGeometryTableManagerBase::Entries_i pIt, Int_t idx, const TGeoHMatrix &mtx)
static int tableIdx(TGLPhysicalShape *ps)
FWBoolParameter m_rnrOverlap
FWOverlapTableView * m_browser
FWEveOverlap(FWOverlapTableView *v)
FWGeometryTableManagerBase * tableManager() override
static void getNNodesTotal(TGeoNode *geoNode, int &off)
FWGeometryTableManagerBase * getTableManager() override
TString GetHighlightTooltip() override
void getNodeMatrix(const NodeInfo &nodeInfo, TGeoHMatrix &mat) const
void paintShape(Int_t idx, const TGeoHMatrix &nm, bool volumeColor, bool parentNode)
int getTopNodeIdx() const
void popupMenu(int x, int y, TGLViewer *v) override
FWBoolParameter m_rnrExtrusion
char data[epos_bytes_allocation]
FWPopupMenu * setPopupMenu(int iX, int iY, TGLViewer *v, bool)
Entries_v::iterator Entries_i
std::set< TGLPhysicalShape * > fHted
FWGeometryTableViewBase * browser() override
void Paint(Option_t *option="") override
void Paint(Option_t *option="") override