ROOT 6.10/09 Reference Guide |
The color creation and management class.
Colors are defined by their red, green and blue components, simply called the RGB components. The colors are also known by the hue, light and saturation components also known as the HLS components. When a new color is created the components of both color systems are computed.
At initialization time, a table of colors is generated. An existing color can be retrieved by its index:
Then it can be manipulated. For example its RGB components can be modified:
A new color can be created the following way:
Two sets of colors are initialized;
The following image displays the 50 basic colors.
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 (e.g. 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. It is better to use these keywords in user code instead of hardcoded color numbers, e.g.:
The complete list of predefined color names is the following:
Note the special role of color kWhite
(color number 0). It is the default background color also. For instance in a PDF or PS files (as paper is usually white) it is simply not painted. To have a white color behaving like the other color the simplest is to define an other white color not attached to the color index 0:
The dark and bright color are used to give 3-D effects when drawing various boxes (see TWbox, TPave, TPaveText, TPaveLabel, etc).
One can toggle between a grayscale preview and the regular colored mode using TCanvas::SetGrayscale()
. Note that in grayscale mode, access via RGB will return grayscale values according to ITU standards (and close to b&w printer gray-scales), while access via HLS returns de-saturated gray-scales. The image below shows the ROOT color wheel in grayscale mode.
It is often very useful to represent a variable with a color map. The concept of "color palette" allows to do that. One color palette is active at any time. This "current palette" is set using:
This function has two parameters: the number of colors in the palette and an array of containing the indices of colors in the palette. The following small example demonstrates how to define and use the color palette:
To define more a complex palette with a continuous gradient of color, one should use the static function TColor::CreateGradientColorTable()
. The following example demonstrates how to proceed:
The function TColor::CreateGradientColorTable()
automatically calls gStyle->SetPalette()
, so there is not need to add one.
After a call to TColor::CreateGradientColorTable()
it is sometimes useful to store the newly create palette for further use. In particular, it is recommended to do if one wants to switch between several user define palettes. To store a palette in an array it is enough to do:
Later on to reuse the palette MyPalette
it will be enough to do
As only one palette is active, one need to use TExec
to be able to display plots using different palettes on the same pad. The following macro illustrate this feature.
gStyle->SetPalette(num)
. num
can be taken within the following enum:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
To make a graphics object transparent it is enough to set its color to a transparent one. The color transparency is defined via its alpha component. The alpha value varies from 0.
(fully transparent) to 1.
(fully opaque). To set the alpha value of an existing color it is enough to do:
A new color can be created transparent the following way:
An example of transparency usage with parallel coordinates can be found in parallelcoordtrans.C.
To ease the creation of a transparent color the static method GetColorTransparent(Int_t color, Float_t a)
is provided. In the following example the trans_red
color index point to a red color 30% transparent. The alpha value of the color index kRed
is not modified.
This function is also used in the methods SetFillColorAlpha()
, SetLineColorAlpha()
, SetMarkerColorAlpha()
and SetTextColorAlpha()
. 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.
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 ... but not PostScript. The following macro gives an example of transparency usage:
Public Member Functions | |
TColor () | |
Default constructor. More... | |
TColor (Int_t color, Float_t r, Float_t g, Float_t b, const char *name="", Float_t a=1) | |
Normal color constructor. More... | |
TColor (Float_t r, Float_t g, Float_t b, Float_t a=1) | |
Fast TColor constructor. More... | |
TColor (const TColor &color) | |
Color copy constructor. More... | |
virtual | ~TColor () |
Color destructor. More... | |
const char * | AsHexString () const |
Return color as hexadecimal string. More... | |
void | Copy (TObject &color) const |
Copy this color to obj. More... | |
Float_t | GetAlpha () const |
Float_t | GetBlue () const |
virtual Float_t | GetGrayscale () const |
Float_t | GetGreen () const |
virtual void | GetHLS (Float_t &h, Float_t &l, Float_t &s) const |
Float_t | GetHue () const |
Float_t | GetLight () const |
Int_t | GetNumber () const |
ULong_t | GetPixel () const |
Return pixel value corresponding to this color. More... | |
Float_t | GetRed () const |
virtual void | GetRGB (Float_t &r, Float_t &g, Float_t &b) const |
Float_t | GetSaturation () const |
virtual void | ls (Option_t *option="") const |
List this color with its attributes. More... | |
virtual void | Print (Option_t *option="") const |
Dump this color with its attributes. More... | |
virtual void | SetAlpha (Float_t a) |
virtual void | SetRGB (Float_t r, Float_t g, Float_t b) |
Initialize this color and its associated colors. More... | |
Public Member Functions inherited from TNamed | |
TNamed () | |
TNamed (const char *name, const char *title) | |
TNamed (const TString &name, const TString &title) | |
TNamed (const TNamed &named) | |
TNamed copy ctor. More... | |
virtual | ~TNamed () |
virtual void | Clear (Option_t *option="") |
Set name and title to empty strings (""). More... | |
virtual TObject * | Clone (const char *newname="") const |
Make a clone of an object using the Streamer facility. More... | |
virtual Int_t | Compare (const TObject *obj) const |
Compare two TNamed objects. More... | |
virtual void | FillBuffer (char *&buffer) |
Encode TNamed into output buffer. More... | |
virtual const char * | GetName () const |
Returns name of object. More... | |
virtual const char * | GetTitle () const |
Returns title of object. More... | |
virtual ULong_t | Hash () const |
Return hash value for this object. More... | |
virtual Bool_t | IsSortable () const |
TNamed & | operator= (const TNamed &rhs) |
TNamed assignment operator. More... | |
virtual void | SetName (const char *name) |
Set the name of the TNamed. More... | |
virtual void | SetNameTitle (const char *name, const char *title) |
Set all the TNamed parameters (name and title). More... | |
virtual void | SetTitle (const char *title="") |
Set the title of the TNamed. More... | |
virtual Int_t | Sizeof () const |
Return size of the TNamed part of the TObject. More... | |
Public Member Functions inherited from TObject | |
TObject () | |
TObject constructor. More... | |
TObject (const TObject &object) | |
TObject copy ctor. More... | |
virtual | ~TObject () |
TObject destructor. More... | |
void | AbstractMethod (const char *method) const |
Use this method to implement an "abstract" method that you don't want to leave purely abstract. More... | |
virtual void | AppendPad (Option_t *option="") |
Append graphics object to current pad. More... | |
virtual void | Browse (TBrowser *b) |
Browse object. May be overridden for another default action. More... | |
virtual const char * | ClassName () const |
Returns name of class to which the object belongs. More... | |
virtual void | Delete (Option_t *option="") |
Delete this object. More... | |
virtual Int_t | DistancetoPrimitive (Int_t px, Int_t py) |
Computes distance from point (px,py) to the object. More... | |
virtual void | Draw (Option_t *option="") |
Default Draw method for all objects. More... | |
virtual void | DrawClass () const |
Draw class inheritance tree of the class to which this object belongs. More... | |
virtual TObject * | DrawClone (Option_t *option="") const |
Draw a clone of this object in the current selected pad for instance with: gROOT->SetSelectedPad(gPad) . More... | |
virtual void | Dump () const |
Dump contents of object on stdout. More... | |
virtual void | Error (const char *method, const char *msgfmt,...) const |
Issue error message. More... | |
virtual void | Execute (const char *method, const char *params, Int_t *error=0) |
Execute method on this object with the given parameter string, e.g. More... | |
virtual void | Execute (TMethod *method, TObjArray *params, Int_t *error=0) |
Execute method on this object with parameters stored in the TObjArray. More... | |
virtual void | ExecuteEvent (Int_t event, Int_t px, Int_t py) |
Execute action corresponding to an event at (px,py). More... | |
virtual void | Fatal (const char *method, const char *msgfmt,...) const |
Issue fatal error message. More... | |
virtual TObject * | FindObject (const char *name) const |
Must be redefined in derived classes. More... | |
virtual TObject * | FindObject (const TObject *obj) const |
Must be redefined in derived classes. More... | |
virtual Option_t * | GetDrawOption () const |
Get option used by the graphics system to draw this object. More... | |
virtual const char * | GetIconName () const |
Returns mime type name of object. More... | |
virtual char * | GetObjectInfo (Int_t px, Int_t py) const |
Returns string containing info about the object at position (px,py). More... | |
virtual Option_t * | GetOption () const |
virtual UInt_t | GetUniqueID () const |
Return the unique object id. More... | |
virtual Bool_t | HandleTimer (TTimer *timer) |
Execute action in response of a timer timing out. More... | |
virtual void | Info (const char *method, const char *msgfmt,...) const |
Issue info message. More... | |
virtual Bool_t | InheritsFrom (const char *classname) const |
Returns kTRUE if object inherits from class "classname". More... | |
virtual Bool_t | InheritsFrom (const TClass *cl) const |
Returns kTRUE if object inherits from TClass cl. More... | |
virtual void | Inspect () const |
Dump contents of this object in a graphics canvas. More... | |
void | InvertBit (UInt_t f) |
virtual Bool_t | IsEqual (const TObject *obj) const |
Default equal comparison (objects are equal if they have the same address in memory). More... | |
virtual Bool_t | IsFolder () const |
Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). More... | |
Bool_t | IsOnHeap () const |
Bool_t | IsZombie () const |
void | MayNotUse (const char *method) const |
Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary). More... | |
virtual Bool_t | Notify () |
This method must be overridden to handle object notification. More... | |
void | Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const |
Use this method to declare a method obsolete. More... | |
void | operator delete (void *ptr) |
Operator delete. More... | |
void | operator delete[] (void *ptr) |
Operator delete []. More... | |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, void *vp) |
void * | operator new[] (size_t sz) |
void * | operator new[] (size_t sz, void *vp) |
TObject & | operator= (const TObject &rhs) |
TObject assignment operator. More... | |
virtual void | Paint (Option_t *option="") |
This method must be overridden if a class wants to paint itself. More... | |
virtual void | Pop () |
Pop on object drawn in a pad to the top of the display list. More... | |
virtual Int_t | Read (const char *name) |
Read contents of object with specified name from the current directory. More... | |
virtual void | RecursiveRemove (TObject *obj) |
Recursively remove this object from a list. More... | |
void | ResetBit (UInt_t f) |
virtual void | SaveAs (const char *filename="", Option_t *option="") const |
Save this object in the file specified by filename. More... | |
virtual void | SavePrimitive (std::ostream &out, Option_t *option="") |
Save a primitive as a C++ statement(s) on output stream "out". More... | |
void | SetBit (UInt_t f, Bool_t set) |
Set or unset the user status bits as specified in f. More... | |
void | SetBit (UInt_t f) |
virtual void | SetDrawOption (Option_t *option="") |
Set drawing option for object. More... | |
virtual void | SetUniqueID (UInt_t uid) |
Set the unique object id. More... | |
virtual void | SysError (const char *method, const char *msgfmt,...) const |
Issue system error message. More... | |
Bool_t | TestBit (UInt_t f) const |
Int_t | TestBits (UInt_t f) const |
virtual void | UseCurrentStyle () |
Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. More... | |
virtual void | Warning (const char *method, const char *msgfmt,...) const |
Issue warning message. More... | |
virtual Int_t | Write (const char *name=0, Int_t option=0, Int_t bufsize=0) |
Write this object to the current directory. More... | |
virtual Int_t | Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const |
Write this object to the current directory. More... | |
Static Public Member Functions | |
static void | CreateColorsCircle (Int_t offset, const char *name, UChar_t *rgb) |
Create the "circle" colors in the color wheel. More... | |
static void | CreateColorsGray () |
Create the Gray scale colors in the Color Wheel. More... | |
static void | CreateColorsRectangle (Int_t offset, const char *name, UChar_t *rgb) |
Create the "rectangular" colors in the color wheel. More... | |
static void | CreateColorWheel () |
Static function steering the creation of all colors in the color wheel. More... | |
static Int_t | CreateGradientColorTable (UInt_t Number, Double_t *Stops, Double_t *Red, Double_t *Green, Double_t *Blue, UInt_t NColors, Float_t alpha=1.) |
Static function creating a color table with several connected linear gradients. More... | |
static Int_t | GetColor (const char *hexcolor) |
Static method returning color number for color specified by hex color string of form: "#rrggbb", where rr, gg and bb are in hex between [0,FF], e.g. More... | |
static Int_t | GetColor (Float_t r, Float_t g, Float_t b) |
Static method returning color number for color specified by r, g and b. More... | |
static Int_t | GetColor (Int_t r, Int_t g, Int_t b) |
Static method returning color number for color specified by r, g and b. More... | |
static Int_t | GetColor (ULong_t pixel) |
Static method returning color number for color specified by system dependent pixel value. More... | |
static Int_t | GetColorBright (Int_t color) |
Static function: Returns the bright color number corresponding to n If the TColor object does not exist, it is created. More... | |
static Int_t | GetColorDark (Int_t color) |
Static function: Returns the dark color number corresponding to n If the TColor object does not exist, it is created. More... | |
static Int_t | GetColorPalette (Int_t i) |
Static function returning the color number i in current palette. More... | |
static Int_t | GetColorTransparent (Int_t color, Float_t a) |
Static function: Returns the transparent color number corresponding to n. More... | |
static Int_t | GetFreeColorIndex () |
Static function: Returns a free color index which can be used to define a user custom color. More... | |
static Int_t | GetNumberOfColors () |
Static function returning number of colors in the color palette. More... | |
static void | HLS2RGB (Float_t h, Float_t l, Float_t s, Float_t &r, Float_t &g, Float_t &b) |
Static method to compute RGB from HLS. More... | |
static void | HLS2RGB (Int_t h, Int_t l, Int_t s, Int_t &r, Int_t &g, Int_t &b) |
Static method to compute RGB from HLS. More... | |
static void | HLStoRGB (Float_t h, Float_t l, Float_t s, Float_t &r, Float_t &g, Float_t &b) |
static void | HSV2RGB (Float_t h, Float_t s, Float_t v, Float_t &r, Float_t &g, Float_t &b) |
Static method to compute RGB from HSV: More... | |
static void | InitializeColors () |
Initialize colors used by the TCanvas based graphics (via TColor objects). More... | |
static Bool_t | IsGrayscale () |
Return whether all colors return grayscale values. More... | |
static ULong_t | Number2Pixel (Int_t ci) |
Static method that given a color index number, returns the corresponding pixel value. More... | |
static void | Pixel2RGB (ULong_t pixel, Int_t &r, Int_t &g, Int_t &b) |
Convert machine dependent pixel value (obtained via RGB2Pixel or via Number2Pixel() or via TColor::GetPixel()) to r,g,b triplet. More... | |
static void | Pixel2RGB (ULong_t pixel, Float_t &r, Float_t &g, Float_t &b) |
Convert machine dependent pixel value (obtained via RGB2Pixel or via Number2Pixel() or via TColor::GetPixel()) to r,g,b triplet. More... | |
static const char * | PixelAsHexString (ULong_t pixel) |
Convert machine dependent pixel value (obtained via RGB2Pixel or via Number2Pixel() or via TColor::GetPixel()) to a hexadecimal string. More... | |
static void | RGB2HLS (Float_t r, Float_t g, Float_t b, Float_t &h, Float_t &l, Float_t &s) |
Static method to compute HLS from RGB. More... | |
static void | RGB2HLS (Int_t r, Int_t g, Int_t b, Int_t &h, Int_t &l, Int_t &s) |
Static method to compute HLS from RGB. More... | |
static void | RGB2HSV (Float_t r, Float_t g, Float_t b, Float_t &h, Float_t &s, Float_t &v) |
Static method to compute HSV from RGB. More... | |
static ULong_t | RGB2Pixel (Int_t r, Int_t g, Int_t b) |
Convert r,g,b to graphics system dependent pixel value. More... | |
static ULong_t | RGB2Pixel (Float_t r, Float_t g, Float_t b) |
Convert r,g,b to graphics system dependent pixel value. More... | |
static void | RGBtoHLS (Float_t r, Float_t g, Float_t b, Float_t &h, Float_t &l, Float_t &s) |
static void | SaveColor (std::ostream &out, Int_t ci) |
Save a color with index > 228 as a C++ statement(s) on output stream out. More... | |
static void | SetGrayscale (Bool_t set=kTRUE) |
Set whether all colors should return grayscale values. More... | |
static void | SetPalette (Int_t ncolors, Int_t *colors, Float_t alpha=1.) |
Static function. More... | |
Static Public Member Functions inherited from TObject | |
static Long_t | GetDtorOnly () |
Return destructor only flag. More... | |
static Bool_t | GetObjectStat () |
Get status of object stat flag. More... | |
static void | SetDtorOnly (void *obj) |
Set destructor only flag. More... | |
static void | SetObjectStat (Bool_t stat) |
Turn on/off tracking of objects in the TObjectTable. More... | |
Protected Attributes | |
Int_t | fNumber |
Color number identifier. More... | |
Protected Attributes inherited from TNamed | |
TString | fName |
TString | fTitle |
Private Member Functions | |
void | Allocate () |
Make this color known to the graphics system. More... | |
Static Private Member Functions | |
static Float_t | HLStoRGB1 (Float_t rn1, Float_t rn2, Float_t huei) |
Static method. Auxiliary to HLS2RGB(). More... | |
Private Attributes | |
Float_t | fAlpha |
Alpha (transparency) More... | |
Float_t | fBlue |
Fraction of Blue. More... | |
Float_t | fGreen |
Fraction of Green. More... | |
Float_t | fHue |
Hue. More... | |
Float_t | fLight |
Light. More... | |
Float_t | fRed |
Fraction of Red. More... | |
Float_t | fSaturation |
Saturation. More... | |
Additional Inherited Members | |
Public Types inherited from TObject | |
enum | { kIsOnHeap = 0x01000000, kNotDeleted = 0x02000000, kZombie = 0x04000000, kBitMask = 0x00ffffff } |
enum | { kSingleKey = BIT(0), kOverwrite = BIT(1), kWriteDelete = BIT(2) } |
enum | EStatusBits { kCanDelete = BIT(0), kMustCleanup = BIT(3), kObjInCanvas = BIT(3), kIsReferenced = BIT(4), kHasUUID = BIT(5), kCannotPick = BIT(6), kNoContextMenu = BIT(8), kInvalidObject = BIT(13) } |
Protected Member Functions inherited from TObject | |
virtual void | DoError (int level, const char *location, const char *fmt, va_list va) const |
Interface to ErrorHandler (protected). More... | |
void | MakeZombie () |
#include <TColor.h>
TColor::TColor | ( | ) |
Default constructor.
Definition at line 957 of file TColor.cxx.
TColor::TColor | ( | Int_t | color, |
Float_t | r, | ||
Float_t | g, | ||
Float_t | b, | ||
const char * | name = "" , |
||
Float_t | a = 1 |
||
) |
Normal color constructor.
Initialize a color structure. Compute the RGB and HLS color components.
Definition at line 968 of file TColor.cxx.
Fast TColor constructor.
It creates a color with an index just above the current highest one. It does not name the color. This is useful to create palettes.
Definition at line 1012 of file TColor.cxx.
TColor::TColor | ( | const TColor & | color | ) |
Color copy constructor.
Definition at line 1039 of file TColor.cxx.
|
virtual |
Color destructor.
Definition at line 1030 of file TColor.cxx.
|
private |
Make this color known to the graphics system.
Definition at line 1692 of file TColor.cxx.
const char * TColor::AsHexString | ( | ) | const |
Return color as hexadecimal string.
This string can be directly passed to, for example, TGClient::GetColorByName(). String will be reused so copy immediately if needed.
Definition at line 1175 of file TColor.cxx.
Create the "circle" colors in the color wheel.
Definition at line 1228 of file TColor.cxx.
|
static |
Create the Gray scale colors in the Color Wheel.
Definition at line 1212 of file TColor.cxx.
Create the "rectangular" colors in the color wheel.
Definition at line 1248 of file TColor.cxx.
|
static |
Static function steering the creation of all colors in the color wheel.
Definition at line 1268 of file TColor.cxx.
|
static |
Static function creating a color table with several connected linear gradients.
Returns a positive value on success and -1 on error.
The table is constructed by tracing lines between the given points in RGB space. Each color value may have a value between 0 and 1. The difference between consecutive "Stops" values gives the fraction of space in the whole table that should be used for the interval between the corresponding color values.
Normally the first element of Stops should be 0 and the last should be 1. If this is not true, fewer than NColors will be used in proportion with the total interval between the first and last elements of Stops.
This definition is similar to the povray-definition of gradient color tables.
For instance:
This defines a table in which there are three color end points: RGB = {0, 0, 1}, {1, 0, 0}, and {1, 1, 1} = blue, red, white The first 40% of the table is used to go linearly from blue to red. The remaining 60% of the table is used to go linearly from red to white.
If you define a very short interval such that less than one color fits in it, no colors at all will be allocated. If this occurs for all intervals, ROOT will revert to the default palette.
Original code by Andreas Zoglauer (zog@m) pe.m pg.de
Definition at line 2129 of file TColor.cxx.
|
static |
Static method returning color number for color specified by hex color string of form: "#rrggbb", where rr, gg and bb are in hex between [0,FF], e.g.
"#c0c0c0".
If specified color does not exist it will be created with as name "#rrggbb" with rr, gg and bb in hex between [0,FF].
Definition at line 1707 of file TColor.cxx.
Static method returning color number for color specified by r, g and b.
The r,g,b should be in the range [0,1].
If specified color does not exist it will be created with as name "#rrggbb" with rr, gg and bb in hex between [0,FF].
Definition at line 1726 of file TColor.cxx.
Static method returning color number for color specified by r, g and b.
The r,g,b should be in the range [0,255]. If the specified color does not exist it will be created with as name "#rrggbb" with rr, gg and bb in hex between [0,FF].
Definition at line 1757 of file TColor.cxx.
Static method returning color number for color specified by system dependent pixel value.
Pixel values can be obtained, e.g., from the GUI color picker.
Definition at line 1741 of file TColor.cxx.
Static function: Returns the bright color number corresponding to n If the TColor object does not exist, it is created.
The convention is that the bright color nb = n+150
Definition at line 1817 of file TColor.cxx.
Static function: Returns the dark color number corresponding to n If the TColor object does not exist, it is created.
The convention is that the dark color nd = n+100
Definition at line 1849 of file TColor.cxx.
Static function returning the color number i in current palette.
Definition at line 1356 of file TColor.cxx.
Static function: Returns the transparent color number corresponding to n.
The transparency level is given by the alpha value a.
Definition at line 1880 of file TColor.cxx.
|
static |
Static function: Returns a free color index which can be used to define a user custom color.
Definition at line 1906 of file TColor.cxx.
|
inlinevirtual |
|
static |
Static function returning number of colors in the color palette.
Definition at line 1368 of file TColor.cxx.
ULong_t TColor::GetPixel | ( | ) | const |
Return pixel value corresponding to this color.
This pixel value can be used in the GUI classes. This call does not work in batch mode since it needs to communicate with the graphics system.
Definition at line 1378 of file TColor.cxx.
|
static |
Static method to compute RGB from HLS.
The l and s are between [0,1] and h is between [0,360]. The returned r,g,b triplet is between [0,1].
Definition at line 1395 of file TColor.cxx.
Static method to compute RGB from HLS.
The h,l,s are between [0,255]. The returned r,g,b triplet is between [0,255].
Definition at line 1435 of file TColor.cxx.
Static method. Auxiliary to HLS2RGB().
Definition at line 1420 of file TColor.cxx.
|
static |
Static method to compute RGB from HSV:
The returned r,g,b triplet is between [0,1].
Definition at line 1461 of file TColor.cxx.
|
static |
Initialize colors used by the TCanvas based graphics (via TColor objects).
This method should be called before the ApplicationImp is created (which initializes the GUI colors).
Definition at line 1049 of file TColor.cxx.
|
static |
Return whether all colors return grayscale values.
Definition at line 2060 of file TColor.cxx.
List this color with its attributes.
Reimplemented from TNamed.
Definition at line 1517 of file TColor.cxx.
Static method that given a color index number, returns the corresponding pixel value.
This pixel value can be used in the GUI classes. This call does not work in batch mode since it needs to communicate with the graphics system.
Definition at line 1917 of file TColor.cxx.
Convert machine dependent pixel value (obtained via RGB2Pixel or via Number2Pixel() or via TColor::GetPixel()) to r,g,b triplet.
The r,g,b triplet will be [0,255].
Definition at line 1993 of file TColor.cxx.
Convert machine dependent pixel value (obtained via RGB2Pixel or via Number2Pixel() or via TColor::GetPixel()) to r,g,b triplet.
The r,g,b triplet will be [0,1].
Definition at line 1978 of file TColor.cxx.
|
static |
Convert machine dependent pixel value (obtained via RGB2Pixel or via Number2Pixel() or via TColor::GetPixel()) to a hexadecimal string.
This string can be directly passed to, for example, TGClient::GetColorByName(). String will be reused so copy immediately if needed.
Definition at line 2010 of file TColor.cxx.
Dump this color with its attributes.
Reimplemented from TNamed.
Definition at line 1526 of file TColor.cxx.
|
static |
Static method to compute HLS from RGB.
The r,g,b triplet is between [0,1], hue is between [0,360], light and satur are [0,1].
Definition at line 1535 of file TColor.cxx.
Static method to compute HLS from RGB.
The r,g,b triplet is between [0,255], hue, light and satur are between [0,255].
Definition at line 1628 of file TColor.cxx.
|
static |
Static method to compute HSV from RGB.
Definition at line 1593 of file TColor.cxx.
Convert r,g,b to graphics system dependent pixel value.
The r,g,b triplet must be [0,255].
Definition at line 1955 of file TColor.cxx.
Convert r,g,b to graphics system dependent pixel value.
The r,g,b triplet must be [0,1].
Definition at line 1933 of file TColor.cxx.
Save a color with index > 228 as a C++ statement(s) on output stream out.
Definition at line 2022 of file TColor.cxx.
Set whether all colors should return grayscale values.
Definition at line 2068 of file TColor.cxx.
Static function.
The color palette is used by the histogram classes (see TH1::Draw options). For example TH1::Draw("col") draws a 2-D histogram with cells represented by a box filled with a color CI function of the cell content. if the cell content is N, the color CI used will be the color number in colors[N],etc. If the maximum cell content is > ncolors, all cell contents are scaled to ncolors.
if ncolors <= 0
a default palette (see below) of 50 colors is defined. The colors defined in this palette are OK for coloring pads, labels.
if ncolors == 1 && colors == 0
, a Rainbow Color map is created with 50 colors. It is kept for backward compatibility. Better palettes like kBird are recommended.
High quality predefined palettes with 255 colors are available when colors == 0
. The following value of ncolors
give access to:
These palettes can also be accessed by names:
For example:
Set the current palette as "Bird" (number 57).
The color numbers specified in the palette can be viewed by selecting the item "colors" in the "VIEW" menu of the canvas toolbar. The color parameters can be changed via TColor::SetRGB.
Note that when drawing a 2D histogram h2
with the option "COL" or "COLZ" or with any "CONT" options using the color map, the number of colors used is defined by the number of contours n
specified with: h2->SetContour(n)
Definition at line 2317 of file TColor.cxx.
Initialize this color and its associated colors.
Definition at line 1646 of file TColor.cxx.