42TObjArray *REveUtil::fgDefaultColors =
nullptr;
51void ChompTailAndDir(
TString& s,
char c=
'.')
66Bool_t REveUtil::CheckMacro(
const char* mac)
74 TString foo(mac); ChompTailAndDir(foo);
97 gROOT->LoadMacro(mac);
99 TString foo(mac); ChompTailAndDir(foo); foo +=
"()";
109 gROOT->LoadMacro(mac);
123 col[0] = (
UChar_t)(255*
c->GetRed());
124 col[1] = (
UChar_t)(255*
c->GetGreen());
125 col[2] = (
UChar_t)(255*
c->GetBlue());
126 if (alpha) col[3] = 255;
131 col[0] = 255; col[1] = 0; col[2] = 255;
132 if (alpha) col[3] = 255;
143 UChar_t alpha = (255*(100 - transparency))/100;
148 col[0] = (
UChar_t)(255*
c->GetRed());
149 col[1] = (
UChar_t)(255*
c->GetGreen());
150 col[2] = (
UChar_t)(255*
c->GetBlue());
156 col[0] = 255; col[1] = 0; col[2] = 255; col[3] = alpha;
175 if (alpha) col[3] = 255;
191 Int_t off = obj->IsA()->GetDataMemberOffset(varname);
193 throw(eh +
"could not find member '" + varname +
"' in class " + obj->IsA()->
GetName() +
".");
194 return (
Color_t*) (((
char*)obj) + off);
208 if (value < -2.5 || value > 2.5)
210 Error(
"REveUtil::SetColorBrightness",
"value '%f' out of range [-0.5, 0.5].", value);
220 for (
Int_t i = 0; i < n_col; ++i)
229 for (
Int_t i = 0; i < n_col; ++i)
237 croot =
new TColor(*cdef);
259 delete colors->RemoveAt(i);
275 using namespace TMath;
279 minQ += TwoPi(); maxQ += TwoPi();
281 else if (minQ > maxM)
283 minQ -= TwoPi(); maxQ -= TwoPi();
285 return minQ >= minM && maxQ <= maxM;
296 using namespace TMath;
300 minQ += TwoPi(); maxQ += TwoPi();
302 else if (minQ > maxM)
304 minQ -= TwoPi(); maxQ -= TwoPi();
306 return maxQ >= minM && minQ <= maxM;
314 if (minQ>=minM && maxQ<=maxM)
317 else if (minQ<minM && maxQ>maxM)
318 return (maxM-minM)/(maxQ-minQ);
320 else if (minQ>=minM && maxQ>maxM)
321 return (maxM-minQ)/(maxQ-minQ);
323 else if (minQ<minM && maxQ<=maxM)
324 return (maxQ-minM)/(maxQ-minQ);
410 if (--(i->second) <= 0)
414 Warning(
"REveRefBackPtr::DecRefCount",
"element '%s' not found in back-refs.", re->
GetCName());
424 i.first->AddStamp(stamps);
void Error(const char *location, const char *msgfmt,...)
Use this function in case an error occurred.
void Warning(const char *location, const char *msgfmt,...)
Use this function in warning situations.
R__EXTERN TGeoManager * gGeoManager
R__EXTERN TGeoIdentity * gGeoIdentity
const char * GetCName() const
REveException Exception-type thrown by Eve classes.
~REveGeoManagerHolder()
Destructor.
Int_t fNSegments
! previous settings for num segments
TGeoManager * fManager
! hold manager
REveGeoManagerHolder(TGeoManager *new_gmgr=nullptr, Int_t n_seg=0)
Constructor.
void FullRedraw3D(Bool_t resetCameras=kFALSE, Bool_t dropLogicals=kFALSE)
Perform 3D redraw of all scenes and viewers.
virtual ~REveRefBackPtr()
Destructor. Noop, should complain if back-ref list is not empty.
virtual void StampBackPtrElements(UChar_t stamps)
Add given stamps to elements in the list of reverse references.
static Bool_t IsU1IntervalOverlappingByMinMax(Float_t minM, Float_t maxM, Float_t minQ, Float_t maxQ)
Return true if interval Q is overlapping within interval M for U1 variables.
static void LoadMacro(const char *mac)
Makes sure that macro 'mac' is loaded, but do not reload it.
static void Macro(const char *mac)
Execute macro 'mac'. Do not reload the macro.
static Bool_t CheckMacro(const char *mac)
Checks if macro 'mac' is loaded.
static Float_t GetFraction(Float_t minM, Float_t maxM, Float_t minQ, Float_t maxQ)
Get fraction of interval [minQ, maxQ] in [minM, maxM].
static void SetColorBrightness(Float_t value, Bool_t full_redraw=kFALSE)
Tweak all ROOT colors to become brighter (if value > 0) or darker (value < 0).
static Bool_t IsU1IntervalContainedByMinMax(Float_t minM, Float_t maxM, Float_t minQ, Float_t maxQ)
Return true if interval Q is contained within interval M for U1 variables.
static void ColorFromIdx(Color_t ci, UChar_t col[4], Bool_t alpha=kTRUE)
Fill col with RGBA values corresponding to index ci.
static Color_t * FindColorVar(TObject *obj, const char *varname)
Find address of Color_t data-member with name varname in object obj.
static void AssertMacro(const char *mac)
Load and execute macro 'mac' if it has not been loaded yet.
static TObjArray * fgDefaultColors
The color creation and management class.
virtual void SetRGB(Float_t r, Float_t g, Float_t b)
Initialize this color and its associated colors.
virtual void GetRGB(Float_t &r, Float_t &g, Float_t &b) const
static Int_t GetColor(const char *hexcolor)
Static method returning color number for color specified by hex color string of form: "#rrggbb",...
void Copy(TObject &color) const
Copy this color to obj.
An identity transformation.
The manager class for any TGeo geometry.
TObjArray * GetListOfMatrices() const
void SetNsegments(Int_t nseg)
Set number of segments for approximating circles in drawing.
Int_t GetNsegments() const
Get number of segments approximating circles.
Int_t GetEntriesFast() const
virtual void AddAt(TObject *obj, Int_t idx)
Add object at position ids.
TObject * At(Int_t idx) const
Mother of all ROOT objects.
virtual const char * GetName() const
Returns name of object.
const char * Data() const
Ssiz_t Last(char c) const
Find last occurrence of a character c.
TString & Remove(Ssiz_t pos)
R__EXTERN REveManager * gEve
LongDouble_t Power(LongDouble_t x, LongDouble_t y)
Short_t Min(Short_t a, Short_t b)