5#ifndef ROOT_TGeoColorScheme
6#define ROOT_TGeoColorScheme
int Int_t
Signed integer 4 bytes (int)
EGeoColorSet
Enumeration of predefined geometry color schemes.
@ kNatural
Natural, material-inspired colors (default)
@ kFlashy
Bright, high-contrast colors for presentations.
@ kHighContrast
Dark, saturated colors for light backgrounds.
Strategy object for assigning colors and transparency to geometry volumes.
virtual Int_t Transparency(const TGeoVolume *vol) const
Compute the transparency for a given volume.
std::function< Int_t(Int_t, EGeoColorSet)> ZFallbackHook_t
Type of user hook for overriding the Z-based fallback coloring.
std::function< Int_t(const TGeoVolume *)> ColorHook_t
Type of user hook for overriding color assignment.
TGeoColorScheme(EGeoColorSet set=EGeoColorSet::kNatural)
Constructor.
virtual Int_t ColorForZ(Int_t Z, EGeoColorSet set) const
Compute fallback color based on material effective Z.
void SetColorHook(ColorHook_t h)
Set a user hook for color assignment.
void SetSet(EGeoColorSet s)
Set the active color set.
virtual Int_t Color(const TGeoVolume *vol) const
Compute the color for a given volume.
EGeoColorSet fSet
Active color set selection.
EGeoColorSet GetSet() const
Get the active color set.
TranspHook_t fTranspHook
Optional user hook for transparency.
static const TGeoMaterial * GetMaterial(const TGeoVolume *vol)
Retrieve the material associated with a geometry volume.
std::function< Int_t(const TGeoVolume *)> TranspHook_t
Type of user hook for overriding transparency assignment.
ZFallbackHook_t fZFallbackHook
Optional user hook for Z fallback.
virtual ~TGeoColorScheme()
Virtual destructor.
void SetZFallbackHook(ZFallbackHook_t h)
Set a user hook for Z-based fallback coloring.
ColorHook_t fColorHook
Optional user hook for color assignment.
void SetTransparencyHook(TranspHook_t h)
Set a user hook for transparency assignment.
Base class describing materials.
TGeoVolume, TGeoVolumeMulti, TGeoVolumeAssembly are the volume classes.