ROOT   Reference Guide
TAttFill Class Reference

Fill Area Attributes class.

This class is used (in general by secondary inheritance) by many other classes (graphics, histograms). It holds all the fill area attributes.

## Fill Area attributes

Fill Area attributes are:

## Fill Area color

The fill area color is a color index (integer) pointing in the ROOT color table. The fill area color of any class inheriting from TAttFill can be changed using the method SetFillColor and retrieved using the method GetFillColor. The following table shows the first 50 default colors.

### Color transparency

SetFillColorAlpha(), allows to set a transparent color. In the following example the fill color of the histogram histo is set to blue with a transparency of 35%. The color kBlue itself remains fully opaque.

histo->SetFillColorAlpha(kBlue, 0.35);

The transparency is available on all platforms when the flag OpenGL.CanvasPreferGL is set to 1 in \$ROOTSYS/etc/system.rootrc, or on Mac with the Cocoa backend. On the file output it is visible with PDF, PNG, Gif, JPEG, SVG, TeX... but not PostScript.

### The ROOT Color Wheel.

The wheel contains the recommended 216 colors to be used in web applications. The colors in the Color Wheel are created by TColor::CreateColorWheel.

Using this color set for your text, background or graphics will give your application a consistent appearance across different platforms and browsers.

Colors are grouped by hue, the aspect most important in human perception Touching color chips have the same hue, but with different brightness and vividness.

Colors of slightly different hues clash. If you intend to display colors of the same hue together, you should pick them from the same group.

Each color chip is identified by a mnemonic (eg kYellow) and a number. The keywords, kRed, kBlue, kYellow, kPink, etc are defined in the header file Rtypes.h that is included in all ROOT other header files. We strongly recommend to use these keywords in your code instead of hardcoded color numbers, eg:

myObject.SetFillColor(kRed);
myObject.SetFillColor(kYellow-10);
myLine.SetLineColor(kMagenta+2);

### Special case forcing black&white output.

If the current style fill area color is set to 0, then ROOT will force a black&white output for all objects with a fill area defined and independently of the object fill style.

## Fill Area style

The fill area style defines the pattern used to fill a polygon. The fill area style of any class inheriting from TAttFill can be changed using the method SetFillStyle and retrieved using the method GetFillStyle.

### Conventions for fill styles:

• 0 : hollow
• 1001 : Solid
• 3000+pattern_number (see below)
• 4000 :the window is transparent.
• 4000 to 4100 the window is 100% transparent to 100% opaque.

The pad transparency is visible in binary outputs files like gif, jpg, png etc .. but not in vector graphics output files like PS, PDF and SVG. This convention (fill style > 4000) is kept for backward compatibility. It is better to use the color transparency instead.

pattern_number can have any value from 1 to 25 (see table), or any value from 100 to 999. For the latest the numbering convention is the following:

pattern_number = ijk (FillStyle = 3ijk)
i (1-9) : specify the space between each hatch
1 = 1/2mm 9 = 6mm
j (0-9) : specify angle between 0 and 90 degrees
0 = 0
1 = 10
2 = 20
3 = 30
4 = 45
5 = Not drawn
6 = 60
7 = 70
8 = 80
9 = 90
k (0-9) : specify angle between 90 and 180 degrees
0 = 180
1 = 170
2 = 160
3 = 150
4 = 135
5 = Not drawn
6 = 120
7 = 110
8 = 100
9 = 90

The following table shows the list of pattern styles. The first table displays the 25 fixed patterns. They cannot be customized unlike the hatches displayed in the second table which be customized using:

• gStyle->SetHatchesSpacing() to define the spacing between hatches.
• gStyle->SetHatchesLineWidth() to define the hatches line width.

Definition at line 19 of file TAttFill.h.

## Public Member Functions

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 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 SetFillColorAlpha (Color_t fcolor, Float_t falpha)
Set a transparent fill color. More...

## Protected Attributes

Color_t fFillColor
Fill area color. More...

Style_t fFillStyle
Fill area style. More...

#include <TAttFill.h>

Inheritance diagram for TAttFill:
[legend]

## ◆ TAttFill() [1/2]

 TAttFill::TAttFill ( )

AttFill default constructor.

Default fill attributes are taking from the current style

Definition at line 174 of file TAttFill.cxx.

## ◆ TAttFill() [2/2]

 TAttFill::TAttFill ( Color_t color, Style_t style )

AttFill normal constructor.

• color Fill Color
• style Fill Style

Definition at line 186 of file TAttFill.cxx.

## ◆ ~TAttFill()

 TAttFill::~TAttFill ( )
virtual

AttFill destructor.

Definition at line 195 of file TAttFill.cxx.

## ◆ Copy()

 void TAttFill::Copy ( TAttFill & attfill ) const

Copy this fill attributes to a new TAttFill.

Definition at line 202 of file TAttFill.cxx.

## ◆ IsTransparent()

 Bool_t TAttFill::IsTransparent ( ) const
inlinevirtual

Reimplemented in TGWin32VirtualXProxy.

Definition at line 44 of file TAttFill.h.

## ◆ Modify()

 void TAttFill::Modify ( )
virtual

Change current fill area attributes if necessary.

Definition at line 211 of file TAttFill.cxx.

## ◆ ResetAttFill()

 void TAttFill::ResetAttFill ( Option_t * option = "" )
virtual

Reset this fill attributes to default values.

Reimplemented in TGWin32VirtualXProxy.

Definition at line 225 of file TAttFill.cxx.

## ◆ SaveFillAttributes()

 void TAttFill::SaveFillAttributes ( std::ostream & out, const char * name, Int_t coldef = 1, Int_t stydef = 1001 )
virtual

Save fill attributes as C++ statement(s) on output stream out.

Definition at line 234 of file TAttFill.cxx.

## ◆ SetFillAttributes()

 void TAttFill::SetFillAttributes ( )
virtual

Invoke the DialogCanvas Fill attributes.

Reimplemented in TGWin32VirtualXProxy.

Definition at line 251 of file TAttFill.cxx.

## ◆ SetFillColorAlpha()

 void TAttFill::SetFillColorAlpha ( Color_t fcolor, Float_t falpha )
virtual

Set a transparent fill color.

falpha defines the percentage of the color opacity from 0. (fully transparent) to 1. (fully opaque).

Definition at line 260 of file TAttFill.cxx.

## ◆ fFillColor

 Color_t TAttFill::fFillColor
protected

Fill area color.

Definition at line 28 of file TAttFill.h.

## ◆ fFillStyle

 Style_t TAttFill::fFillStyle
protected

Fill area style.

Definition at line 29 of file TAttFill.h.

The documentation for this class was generated from the following files:
ROOT::RDF::Not
auto Not(F &&f) -> decltype(RDFInternal::NotHelper(Args(), std::forward< F >(f)))
Given a callable with signature bool(T1, T2, ...) return a callable with same signature that returns ...
Definition: RDFHelpers.hxx:86
kMagenta
@ kMagenta
Definition: Rtypes.h:66
kRed
@ kRed
Definition: Rtypes.h:66
TGeant4Unit::mm
static constexpr double mm
Definition: TGeant4SystemOfUnits.h:114
RooFit::FillStyle
RooCmdArg FillStyle(Style_t style)
Definition: RooGlobalFunc.cxx:60
kBlue
@ kBlue
Definition: Rtypes.h:66
kYellow
@ kYellow
Definition: Rtypes.h:66