30 static Bool_t& TColor__GrayScaleMode() {
31 static Bool_t grayScaleMode;
34 static TArrayI& TColor__Palette() {
35 static TArrayI globalPalette(0);
38 static TArrayD& TColor__PalettesList() {
39 static TArrayD globalPalettesList(0);
40 return globalPalettesList;
49#define fgGrayscaleMode TColor__GrayScaleMode()
50#define fgPalette TColor__Palette()
51#define fgPalettesList TColor__PalettesList()
1058 Warning(
"TColor",
"color %d already defined", color);
1076 snprintf(aname,32,
"Color%d", color);
1116 gROOT->GetListOfColors()->Remove(
this);
1117 if (
gROOT->GetListOfColors()->IsEmpty()) {
1128 color.TColor::Copy(*
this);
1134 color.TColor::Copy(*
this);
1147 if (initDone)
return;
1150 if (
gROOT->GetListOfColors()->First() ==
nullptr) {
1154 new TColor(2,1,0,0,
"red");
1155 new TColor(3,0,1,0,
"green");
1156 new TColor(4,0,0,1,
"blue");
1157 new TColor(5,1,1,0,
"yellow");
1158 new TColor(6,1,0,1,
"magenta");
1159 new TColor(7,0,1,1,
"cyan");
1160 new TColor(10,0.999,0.999,0.999,
"white");
1161 new TColor(11,0.754,0.715,0.676,
"editcol");
1167 if (c110) c110->
SetRGB(0.999,0.999,.999);
1170 new TColor(20,0.8,0.78,0.67);
1171 new TColor(31,0.54,0.66,0.63);
1172 new TColor(41,0.83,0.81,0.53);
1173 new TColor(30,0.52,0.76,0.64);
1174 new TColor(32,0.51,0.62,0.55);
1175 new TColor(24,0.70,0.65,0.59);
1176 new TColor(21,0.8,0.78,0.67);
1177 new TColor(47,0.67,0.56,0.58);
1178 new TColor(35,0.46,0.54,0.57);
1179 new TColor(33,0.68,0.74,0.78);
1180 new TColor(39,0.5,0.5,0.61);
1181 new TColor(37,0.43,0.48,0.52);
1182 new TColor(38,0.49,0.6,0.82);
1183 new TColor(36,0.41,0.51,0.59);
1184 new TColor(49,0.58,0.41,0.44);
1185 new TColor(43,0.74,0.62,0.51);
1186 new TColor(22,0.76,0.75,0.66);
1187 new TColor(45,0.75,0.51,0.47);
1188 new TColor(44,0.78,0.6,0.49);
1189 new TColor(26,0.68,0.6,0.55);
1190 new TColor(28,0.53,0.4,0.34);
1191 new TColor(25,0.72,0.64,0.61);
1192 new TColor(27,0.61,0.56,0.51);
1193 new TColor(23,0.73,0.71,0.64);
1194 new TColor(42,0.87,0.73,0.53);
1195 new TColor(46,0.81,0.37,0.38);
1196 new TColor(48,0.65,0.47,0.48);
1197 new TColor(34,0.48,0.56,0.6);
1198 new TColor(40,0.67,0.65,0.75);
1199 new TColor(29,0.69,0.81,0.78);
1202 new TColor(8, 0.35,0.83,0.33);
1203 new TColor(9, 0.35,0.33,0.85);
1204 new TColor(12,.3,.3,.3,
"grey12");
1205 new TColor(13,.4,.4,.4,
"grey13");
1206 new TColor(14,.5,.5,.5,
"grey14");
1207 new TColor(15,.6,.6,.6,
"grey15");
1208 new TColor(16,.7,.7,.7,
"grey16");
1209 new TColor(17,.8,.8,.8,
"grey17");
1210 new TColor(18,.9,.9,.9,
"grey18");
1211 new TColor(19,.95,.95,.95,
"grey19");
1212 new TColor(50, 0.83,0.35,0.33);
1225 Int_t maxPretty = 50;
1229 for (i=0 ; i<maxPretty-1 ; i++) {
1230 hue = maxHue-(i+1)*((maxHue-minHue)/maxPretty);
1237 for (i = 1; i < 8; i++) {
1240 if (i == 1) {
r = 0.6;
g = 0.6;
b = 0.6; }
1241 if (
r == 1)
r = 0.9;
else if (
r == 0)
r = 0.1;
1242 if (
g == 1)
g = 0.9;
else if (
g == 0)
g = 0.1;
1243 if (
b == 1)
b = 0.9;
else if (
b == 0)
b = 0.1;
1280 tempbuf.
Form(
"#%02x%02x%02x%02x",
a,
r,
g,
b);
1282 tempbuf.
Form(
"#%02x%02x%02x",
r,
g,
b);
1329 color =
new TColor(colorn,rgb[3*
n]/255.,rgb[3*
n+1]/255.,rgb[3*
n+2]/255.);
1332 else if (
n<10) colorname.
Form(
"%s-%d",
name,10-
n);
1349 color =
new TColor(colorn,rgb[3*
n]/255.,rgb[3*
n+1]/255.,rgb[3*
n+2]/255.);
1352 else if (
n<9) colorname.
Form(
"%s-%d",
name,9-
n);
1364 UChar_t magenta[46]= {255,204,255
1365 ,255,153,255, 204,153,204
1366 ,255,102,255, 204,102,204, 153,102,153
1367 ,255, 51,255, 204, 51,204, 153, 51,153, 102, 51,102
1368 ,255, 0,255, 204, 0,204, 153, 0,153, 102, 0,102, 51, 0, 51};
1370 UChar_t red[46] = {255,204,204
1371 ,255,153,153, 204,153,153
1372 ,255,102,102, 204,102,102, 153,102,102
1373 ,255, 51, 51, 204, 51, 51, 153, 51, 51, 102, 51, 51
1374 ,255, 0, 0, 204, 0, 0, 153, 0, 0, 102, 0, 0, 51, 0, 0};
1376 UChar_t yellow[46] = {255,255,204
1377 ,255,255,153, 204,204,153
1378 ,255,255,102, 204,204,102, 153,153,102
1379 ,255,255, 51, 204,204, 51, 153,153, 51, 102,102, 51
1380 ,255,255, 0, 204,204, 0, 153,153, 0, 102,102, 0, 51, 51, 0};
1382 UChar_t green[46] = {204,255,204
1383 ,153,255,153, 153,204,153
1384 ,102,255,102, 102,204,102, 102,153,102
1385 , 51,255, 51, 51,204, 51, 51,153, 51, 51,102, 51
1386 , 0,255, 0, 0,204, 0, 0,153, 0, 0,102, 0, 0, 51, 0};
1388 UChar_t cyan[46] = {204,255,255
1389 ,153,255,255, 153,204,204
1390 ,102,255,255, 102,204,204, 102,153,153
1391 , 51,255,255, 51,204,204, 51,153,153, 51,102,102
1392 , 0,255,255, 0,204,204, 0,153,153, 0,102,102, 0, 51, 51};
1394 UChar_t blue[46] = {204,204,255
1395 ,153,153,255, 153,153,204
1396 ,102,102,255, 102,102,204, 102,102,153
1397 , 51, 51,255, 51, 51,204, 51, 51,153, 51, 51,102
1398 , 0, 0,255, 0, 0,204, 0, 0,153, 0, 0,102, 0, 0, 51};
1400 UChar_t pink[60] = {255, 51,153, 204, 0,102, 102, 0, 51, 153, 0, 51, 204, 51,102
1401 ,255,102,153, 255, 0,102, 255, 51,102, 204, 0, 51, 255, 0, 51
1402 ,255,153,204, 204,102,153, 153, 51,102, 153, 0,102, 204, 51,153
1403 ,255,102,204, 255, 0,153, 204, 0,153, 255, 51,204, 255, 0,153};
1405 UChar_t orange[60]={255,204,153, 204,153,102, 153,102, 51, 153,102, 0, 204,153, 51
1406 ,255,204,102, 255,153, 0, 255,204, 51, 204,153, 0, 255,204, 0
1407 ,255,153, 51, 204,102, 0, 102, 51, 0, 153, 51, 0, 204,102, 51
1408 ,255,153,102, 255,102, 0, 255,102, 51, 204, 51, 0, 255, 51, 0};
1410 UChar_t spring[60]={153,255, 51, 102,204, 0, 51,102, 0, 51,153, 0, 102,204, 51
1411 ,153,255,102, 102,255, 0, 102,255, 51, 51,204, 0, 51,255, 0
1412 ,204,255,153, 153,204,102, 102,153, 51, 102,153, 0, 153,204, 51
1413 ,204,255,102, 153,255, 0, 204,255, 51, 153,204, 0, 204,255, 0};
1415 UChar_t teal[60] = {153,255,204, 102,204,153, 51,153,102, 0,153,102, 51,204,153
1416 ,102,255,204, 0,255,102, 51,255,204, 0,204,153, 0,255,204
1417 , 51,255,153, 0,204,102, 0,102, 51, 0,153, 51, 51,204,102
1418 ,102,255,153, 0,255,153, 51,255,102, 0,204, 51, 0,255, 51};
1420 UChar_t azure[60] ={153,204,255, 102,153,204, 51,102,153, 0, 51,153, 51,102,204
1421 ,102,153,255, 0,102,255, 51,102,255, 0, 51,204, 0, 51,255
1422 , 51,153,255, 0,102,204, 0, 51,102, 0,102,153, 51,153,204
1423 ,102,204,255, 0,153,255, 51,204,255, 0,153,204, 0,204,255};
1425 UChar_t violet[60]={204,153,255, 153,102,204, 102, 51,153, 102, 0,153, 153, 51,204
1426 ,204,102,255, 153, 0,255, 204, 51,255, 153, 0,204, 204, 0,255
1427 ,153, 51,255, 102, 0,204, 51, 0,102, 51, 0,153, 102, 51,204
1428 ,153,102,255, 102, 0,255, 102, 51,255, 51, 0,204, 51, 0,255};
1453 if (ncolors == 0)
return 0;
1454 Int_t icol = i%ncolors;
1455 if (icol < 0) icol = 0;
1517 if (hue > 0) { rh = hue;
if (rh > 360) rh = 360; }
1518 if (light > 0) { rl = light;
if (rl > 1) rl = 1; }
1519 if (satur > 0) { rs = satur;
if (rs > 1) rs = 1; }
1522 rm2 = rl*(1.0f + rs);
1524 rm2 = rl + rs - rl*rs;
1525 rm1 = 2.0f*rl - rm2;
1527 if (!rs) {
r = rl;
g = rl;
b = rl;
return; }
1539 if (hue > 360) hue = hue - 360.0f;
1540 if (hue < 0) hue = hue + 360.0f;
1541 if (hue < 60 )
return rn1 + (rn2-rn1)*hue/60.0f;
1542 if (hue < 180)
return rn2;
1543 if (hue < 240)
return rn1 + (rn2-rn1)*(240.0f-hue)/60.0f;
1553 Float_t hh, ll, ss, rr, gg, bb;
1561 r = (
Int_t) (rr * 255.0f);
1562 g = (
Int_t) (gg * 255.0f);
1563 b = (
Int_t) (bb * 255.0f);
1590 i = (
Int_t)floor(hue);
1594 t =
value*(1-satur*(1-
f));
1635 printf(
"Color:%d Red=%f Green=%f Blue=%f Alpha=%f Name=%s\n",
1655 if (rr > 0) {
r = rr;
if (
r > 1)
r = 1; }
1656 if (gg > 0) {
g = gg;
if (
g > 1)
g = 1; }
1657 if (bb > 0) {
b = bb;
if (
b > 1)
b = 1; }
1660 if (
g < minval) minval =
g;
1661 if (
b < minval) minval =
b;
1662 if (
g > maxval) maxval =
g;
1663 if (
b > maxval) maxval =
b;
1666 Float_t mdiff = maxval - minval;
1667 Float_t msum = maxval + minval;
1668 light = 0.5f * msum;
1669 if (maxval != minval) {
1670 rnorm = (maxval -
r)/mdiff;
1671 gnorm = (maxval -
g)/mdiff;
1672 bnorm = (maxval -
b)/mdiff;
1681 satur = mdiff/(2.0f - msum);
1684 hue = 60.0f * (6.0f + bnorm - gnorm);
1685 else if (
g == maxval)
1686 hue = 60.0f * (2.0f + rnorm - bnorm);
1688 hue = 60.0f * (4.0f + gnorm - rnorm);
1727 }
else if (
g == max) {
1728 hue = 2.0f+(
b-
r)/delta;
1730 hue = 4.0f+(
r-
g)/delta;
1734 if (hue < 0.0f) hue += 360.0f;
1743 Float_t rr, gg, bb, hue, light, satur;
1751 h = (
Int_t) (hue/360.0f * 255.0f);
1752 l = (
Int_t) (light * 255.0f);
1753 s = (
Int_t) (satur * 255.0f);
1766 if (
fRed < 0)
return;
1772 if (nplanes == 0) nplanes = 16;
1783 Float_t dr, dg, db, lr, lg, lb;
1789 if (nplanes > 8) dark->
SetRGB(dr, dg, db);
1790 else dark->
SetRGB(0.3f,0.3f,0.3f);
1797 if (nplanes > 8) light->
SetRGB(lr, lg, lb);
1798 else light->
SetRGB(0.8f,0.8f,0.8f);
1825 if (hexcolor && *hexcolor ==
'#') {
1827 if (sscanf(hexcolor+1,
"%02x%02x%02x", &
r, &
g, &
b) == 3)
1830 ::Error(
"TColor::GetColor(const char*)",
"incorrect color string");
1916 if (
r > 255)
r = 255;
1917 if (
g > 255)
g = 255;
1918 if (
b > 255)
b = 255;
1944 if (nplanes >= 24) thres = 1.0f/255.0f;
1948 while ((color = (
TColor*)next())) {
1972 if (
n < 0)
return -1;
1980 if (!color)
return -1;
1988 TColor *colorb =
nullptr;
1990 if (colorb)
return nb;
1993 colors->AddAtAndExpand(colorb,nb);
2004 if (
n < 0)
return -1;
2012 if (!color)
return -1;
2020 TColor *colord =
nullptr;
2022 if (colord)
return nd;
2025 colors->AddAtAndExpand(colord,nd);
2036 if (
n < 0)
return -1;
2043 for (
Int_t i = 0; i < ncolors; i++) {
2057 ::Error(
"TColor::GetColorTransparent",
"color with index %d not defined",
n);
2089 ::Warning(
"TColor::Number2Pixel",
"color with index %d not defined", ci);
2125 if (
r > 255)
r = 255;
2126 if (
g > 255)
g = 255;
2127 if (
b > 255)
b = 255;
2163 r = color.
fRed / 257;
2180 tempbuf.
Form(
"#%02x%02x%02x",
r,
g,
b);
2203 out <<
" Int_t ci; // for color index setting" << std::endl;
2204 out <<
" TColor *color; // for color definition with alpha" << std::endl;
2213 out<<
" ci = "<<ci<<
";"<<std::endl;
2214 out<<
" color = new TColor(ci, "<<
r<<
", "<<
g<<
", "<<
b<<
", "
2215 <<
"\" \", "<<
a<<
");"<<std::endl;
2221 out<<
" ci = TColor::GetColor("<<quote<<
cname.Data()<<quote<<
");"<<std::endl;
2248 while ((color = (
TColor*) iColor()))
2271 std::ifstream
f(fileName.
Data());
2273 ::Error(
"TColor::CreateColorPalette(const TString)",
"%s does not exist or cannot be opened", fileName.
Data());
2279 std::vector<Float_t> reds, greens, blues;
2280 while (
f >>
r >>
g >>
b) {
2282 if (r < 0. || r > 1.) {
2283 ::Error(
"TColor::CreateColorPalette(const TString)",
"Red value %f outside [0,1] on line %d of %s ",
r,
2284 nLines, fileName.
Data());
2288 if (g < 0. || g > 1.) {
2289 ::Error(
"TColor::CreateColorPalette(const TString)",
"Green value %f outside [0,1] on line %d of %s ",
g,
2290 nLines, fileName.
Data());
2294 if (b < 0. || b > 1.) {
2295 ::Error(
"TColor::CreateColorPalette(const TString)",
"Blue value %f outside [0,1] on line %d of %s ",
b,
2296 nLines, fileName.
Data());
2300 reds.emplace_back(
r);
2301 greens.emplace_back(
g);
2302 blues.emplace_back(
b);
2306 ::Error(
"TColor::CreateColorPalette(const TString)",
"Found insufficient color lines (%d) on %s", nLines,
2314 for (
Int_t i = 0; i < nLines; ++i) {
2315 new TColor(reds.at(i), greens.at(i), blues.at(i), alpha);
2387 if(Number < 2 || NColors < 1){
2394 for (
c = 0;
c < Number;
c++) {
2395 if (Red[
c] < 0 || Red[
c] > 1.0 ||
2396 Green[
c] < 0 || Green[
c] > 1.0 ||
2397 Blue[
c] < 0 || Blue[
c] > 1.0 ||
2398 Stops[
c] < 0 || Stops[
c] > 1.0) {
2403 if (Stops[
c-1] > Stops[
c]) {
2413 for (
g = 1;
g < Number;
g++) {
2415 nColorsGradient = (
Int_t) (floor(NColors*Stops[
g]) - floor(NColors*Stops[
g-1]));
2416 for (
c = 0;
c < nColorsGradient;
c++) {
2418 Float_t(Green[
g-1] +
c * (Green[
g] - Green[
g-1])/ nColorsGradient),
2419 Float_t(Blue[
g-1] +
c * (Blue[
g] - Blue[
g-1]) / nColorsGradient),
2570 static Int_t paletteType = 0;
2572 Int_t palette[50] = {19,18,17,16,15,14,13,12,11,20,
2573 21,22,23,24,25,26,27,28,29,30, 8,
2574 31,32,33,34,35,36,37,38,39,40, 9,
2575 41,42,43,44,45,47,48,49,46,50, 2,
2576 7, 6, 5, 4, 3, 2,1};
2582 for (i=0;i<ncolors;i++)
fgPalette.fArray[i] = palette[i];
2588 if (ncolors == 1 &&
colors ==
nullptr) {
2591 for (i=0;i<ncolors-1;i++)
fgPalette.fArray[i] = 51+i;
2598 if (
colors ==
nullptr && ncolors>50) {
2607 if (paletteType == ncolors && same_alpha)
return;
2609 for (i=0;i<255;i++)
fgPalette.fArray[i] = Idx+i;
2610 paletteType = ncolors;
2613 if (alphas>0 && !same_alpha) {
2615 for (i=0;i<255;i++) {
2625 Double_t stops[9] = { 0.0000, 0.1250, 0.2500, 0.3750, 0.5000, 0.6250, 0.7500, 0.8750, 1.0000};
2631 Double_t red[9] = { 0./255., 9./255., 13./255., 17./255., 24./255., 32./255., 27./255., 25./255., 29./255.};
2632 Double_t green[9] = { 0./255., 0./255., 0./255., 2./255., 37./255., 74./255., 113./255., 160./255., 221./255.};
2633 Double_t blue[9] = { 28./255., 42./255., 59./255., 78./255., 98./255., 129./255., 154./255., 184./255., 221./255.};
2641 Double_t red[9] = { 0./255., 32./255., 64./255., 96./255., 128./255., 160./255., 192./255., 224./255., 255./255.};
2642 Double_t green[9] = { 0./255., 32./255., 64./255., 96./255., 128./255., 160./255., 192./255., 224./255., 255./255.};
2643 Double_t blue[9] = { 0./255., 32./255., 64./255., 96./255., 128./255., 160./255., 192./255., 224./255., 255./255.};
2651 Double_t red[9] = { 0./255., 45./255., 99./255., 156./255., 212./255., 230./255., 237./255., 234./255., 242./255.};
2652 Double_t green[9] = { 0./255., 0./255., 0./255., 45./255., 101./255., 168./255., 238./255., 238./255., 243./255.};
2653 Double_t blue[9] = { 0./255., 1./255., 1./255., 3./255., 9./255., 8./255., 11./255., 95./255., 230./255.};
2661 Double_t red[9] = { 0./255., 22./255., 44./255., 68./255., 93./255., 124./255., 160./255., 192./255., 237./255.};
2662 Double_t green[9] = { 0./255., 16./255., 41./255., 67./255., 93./255., 125./255., 162./255., 194./255., 241./255.};
2663 Double_t blue[9] = { 97./255., 100./255., 99./255., 99./255., 93./255., 68./255., 44./255., 26./255., 74./255.};
2671 Double_t red[9] = { 0./255., 5./255., 15./255., 35./255., 102./255., 196./255., 208./255., 199./255., 110./255.};
2672 Double_t green[9] = { 0./255., 48./255., 124./255., 192./255., 206./255., 226./255., 97./255., 16./255., 0./255.};
2673 Double_t blue[9] = { 99./255., 142./255., 198./255., 201./255., 90./255., 22./255., 13./255., 8./255., 2./255.};
2681 Double_t red[9] = { 242./255., 234./255., 237./255., 230./255., 212./255., 156./255., 99./255., 45./255., 0./255.};
2682 Double_t green[9] = { 243./255., 238./255., 238./255., 168./255., 101./255., 45./255., 0./255., 0./255., 0./255.};
2683 Double_t blue[9] = { 230./255., 95./255., 11./255., 8./255., 9./255., 3./255., 1./255., 1./255., 0./255.};
2691 Double_t red[9] = { 0.2082, 0.0592, 0.0780, 0.0232, 0.1802, 0.5301, 0.8186, 0.9956, 0.9764};
2692 Double_t green[9] = { 0.1664, 0.3599, 0.5041, 0.6419, 0.7178, 0.7492, 0.7328, 0.7862, 0.9832};
2693 Double_t blue[9] = { 0.5293, 0.8684, 0.8385, 0.7914, 0.6425, 0.4662, 0.3499, 0.1968, 0.0539};
2701 Double_t red[9] = { 0.0000, 0.0956, 0.0098, 0.2124, 0.6905, 0.9242, 0.7914, 0.7596, 1.0000};
2702 Double_t green[9] = { 0.0000, 0.1147, 0.3616, 0.5041, 0.4577, 0.4691, 0.6905, 0.9237, 1.0000};
2703 Double_t blue[9] = { 0.0000, 0.2669, 0.3121, 0.1318, 0.2236, 0.6741, 0.9882, 0.9593, 1.0000};
2711 Double_t red[9] = {13./255., 23./255., 25./255., 63./255., 76./255., 104./255., 137./255., 161./255., 206./255.};
2712 Double_t green[9] = {95./255., 67./255., 37./255., 21./255., 0./255., 12./255., 35./255., 52./255., 79./255.};
2713 Double_t blue[9] = { 4./255., 3./255., 2./255., 6./255., 11./255., 22./255., 49./255., 98./255., 208./255.};
2721 Double_t red[9] = {0./255., 61./255., 89./255., 122./255., 143./255., 160./255., 185./255., 204./255., 231./255.};
2722 Double_t green[9] = {0./255., 0./255., 0./255., 0./255., 14./255., 37./255., 72./255., 132./255., 235./255.};
2723 Double_t blue[9] = {0./255., 140./255., 224./255., 144./255., 4./255., 5./255., 6./255., 9./255., 13./255.};
2731 Double_t red[9] = { 14./255., 7./255., 2./255., 0./255., 5./255., 11./255., 55./255., 131./255., 229./255.};
2732 Double_t green[9] = {105./255., 56./255., 26./255., 1./255., 42./255., 74./255., 131./255., 171./255., 229./255.};
2733 Double_t blue[9] = { 2./255., 21./255., 35./255., 60./255., 92./255., 113./255., 160./255., 185./255., 229./255.};
2741 Double_t red[9] = { 0./255., 0./255., 0./255., 70./255., 148./255., 231./255., 235./255., 237./255., 244./255.};
2742 Double_t green[9] = { 0./255., 0./255., 0./255., 0./255., 0./255., 69./255., 67./255., 216./255., 244./255.};
2743 Double_t blue[9] = { 0./255., 102./255., 228./255., 231./255., 177./255., 124./255., 137./255., 20./255., 244./255.};
2751 Double_t red[9] = { 50./255., 56./255., 63./255., 68./255., 93./255., 121./255., 165./255., 192./255., 241./255.};
2752 Double_t green[9] = { 66./255., 81./255., 91./255., 96./255., 111./255., 128./255., 155./255., 189./255., 241./255.};
2753 Double_t blue[9] = { 97./255., 91./255., 75./255., 65./255., 77./255., 103./255., 143./255., 167./255., 217./255.};
2761 Double_t red[9] = { 145./255., 166./255., 167./255., 156./255., 131./255., 114./255., 101./255., 112./255., 132./255.};
2762 Double_t green[9] = { 158./255., 178./255., 179./255., 181./255., 163./255., 154./255., 144./255., 152./255., 159./255.};
2763 Double_t blue[9] = { 190./255., 199./255., 201./255., 192./255., 176./255., 169./255., 160./255., 166./255., 190./255.};
2771 Double_t red[9] = { 93./255., 91./255., 99./255., 108./255., 130./255., 125./255., 132./255., 155./255., 174./255.};
2772 Double_t green[9] = { 126./255., 124./255., 128./255., 129./255., 131./255., 121./255., 119./255., 153./255., 173./255.};
2773 Double_t blue[9] = { 103./255., 94./255., 87./255., 85./255., 80./255., 85./255., 107./255., 120./255., 146./255.};
2781 Double_t red[9] = { 24./255., 40./255., 69./255., 90./255., 104./255., 114./255., 120./255., 132./255., 103./255.};
2782 Double_t green[9] = { 29./255., 52./255., 94./255., 127./255., 150./255., 162./255., 159./255., 151./255., 101./255.};
2783 Double_t blue[9] = { 29./255., 52./255., 96./255., 132./255., 162./255., 181./255., 184./255., 186./255., 131./255.};
2791 Double_t red[9] = { 46./255., 38./255., 61./255., 92./255., 113./255., 121./255., 132./255., 150./255., 191./255.};
2792 Double_t green[9] = { 46./255., 36./255., 40./255., 69./255., 110./255., 135./255., 131./255., 92./255., 34./255.};
2793 Double_t blue[9] = { 46./255., 80./255., 74./255., 70./255., 81./255., 105./255., 165./255., 211./255., 225./255.};
2801 Double_t red[9] = { 0./255., 4./255., 12./255., 30./255., 52./255., 101./255., 142./255., 190./255., 237./255.};
2802 Double_t green[9] = { 0./255., 40./255., 86./255., 121./255., 140./255., 172./255., 187./255., 213./255., 240./255.};
2803 Double_t blue[9] = { 0./255., 9./255., 14./255., 18./255., 21./255., 23./255., 27./255., 35./255., 101./255.};
2811 Double_t red[9] = { 198./255., 206./255., 206./255., 211./255., 198./255., 181./255., 161./255., 171./255., 244./255.};
2812 Double_t green[9] = { 103./255., 133./255., 150./255., 172./255., 178./255., 174./255., 163./255., 175./255., 244./255.};
2813 Double_t blue[9] = { 49./255., 54./255., 55./255., 66./255., 91./255., 130./255., 184./255., 224./255., 244./255.};
2821 Double_t red[9] = { 243./255., 243./255., 240./255., 240./255., 241./255., 239./255., 186./255., 151./255., 129./255.};
2822 Double_t green[9] = { 0./255., 46./255., 99./255., 149./255., 194./255., 220./255., 183./255., 166./255., 147./255.};
2823 Double_t blue[9] = { 6./255., 8./255., 36./255., 91./255., 169./255., 235./255., 246./255., 240./255., 233./255.};
2831 Double_t red[9] = { 22./255., 19./255., 19./255., 25./255., 35./255., 53./255., 88./255., 139./255., 210./255.};
2832 Double_t green[9] = { 0./255., 32./255., 69./255., 108./255., 135./255., 159./255., 183./255., 198./255., 215./255.};
2833 Double_t blue[9] = { 77./255., 96./255., 110./255., 116./255., 110./255., 100./255., 90./255., 78./255., 70./255.};
2841 Double_t red[9] = { 68./255., 116./255., 165./255., 182./255., 189./255., 180./255., 145./255., 111./255., 71./255.};
2842 Double_t green[9] = { 37./255., 82./255., 135./255., 178./255., 204./255., 225./255., 221./255., 202./255., 147./255.};
2843 Double_t blue[9] = { 16./255., 55./255., 105./255., 147./255., 196./255., 226./255., 232./255., 224./255., 178./255.};
2851 Double_t red[9] = { 61./255., 99./255., 136./255., 181./255., 213./255., 225./255., 198./255., 136./255., 24./255.};
2852 Double_t green[9] = { 149./255., 140./255., 96./255., 83./255., 132./255., 178./255., 190./255., 135./255., 22./255.};
2853 Double_t blue[9] = { 214./255., 203./255., 168./255., 135./255., 110./255., 100./255., 111./255., 113./255., 22./255.};
2861 Double_t red[9] = { 76./255., 120./255., 156./255., 183./255., 197./255., 180./255., 162./255., 154./255., 140./255.};
2862 Double_t green[9] = { 34./255., 35./255., 42./255., 69./255., 102./255., 137./255., 164./255., 188./255., 197./255.};
2863 Double_t blue[9] = { 64./255., 69./255., 78./255., 105./255., 142./255., 177./255., 205./255., 217./255., 198./255.};
2871 Double_t red[9] = { 37./255., 102./255., 157./255., 188./255., 196./255., 214./255., 223./255., 235./255., 251./255.};
2872 Double_t green[9] = { 37./255., 29./255., 25./255., 37./255., 67./255., 91./255., 132./255., 185./255., 251./255.};
2873 Double_t blue[9] = { 37./255., 32./255., 33./255., 45./255., 66./255., 98./255., 137./255., 187./255., 251./255.};
2881 Double_t red[9] = { 79./255., 100./255., 119./255., 137./255., 153./255., 172./255., 192./255., 205./255., 250./255.};
2882 Double_t green[9] = { 63./255., 79./255., 93./255., 103./255., 115./255., 135./255., 167./255., 196./255., 250./255.};
2883 Double_t blue[9] = { 51./255., 59./255., 66./255., 61./255., 62./255., 70./255., 110./255., 160./255., 250./255.};
2891 Double_t red[9] = { 43./255., 44./255., 50./255., 66./255., 125./255., 172./255., 178./255., 155./255., 157./255.};
2892 Double_t green[9] = { 63./255., 63./255., 85./255., 101./255., 138./255., 163./255., 122./255., 51./255., 39./255.};
2893 Double_t blue[9] = { 121./255., 101./255., 58./255., 44./255., 47./255., 55./255., 57./255., 44./255., 43./255.};
2901 Double_t red[9] = { 0./255., 41./255., 62./255., 79./255., 90./255., 87./255., 99./255., 140./255., 228./255.};
2902 Double_t green[9] = { 0./255., 57./255., 81./255., 93./255., 85./255., 70./255., 71./255., 125./255., 228./255.};
2903 Double_t blue[9] = { 95./255., 91./255., 91./255., 82./255., 60./255., 43./255., 44./255., 112./255., 228./255.};
2911 Double_t red[9] = { 49./255., 59./255., 72./255., 88./255., 114./255., 141./255., 176./255., 205./255., 222./255.};
2912 Double_t green[9] = { 78./255., 72./255., 66./255., 57./255., 59./255., 75./255., 106./255., 142./255., 173./255.};
2913 Double_t blue[9] = { 78./255., 55./255., 46./255., 40./255., 39./255., 39./255., 40./255., 41./255., 47./255.};
2921 Double_t red[9] = { 243./255., 222./255., 201./255., 185./255., 165./255., 158./255., 166./255., 187./255., 219./255.};
2922 Double_t green[9] = { 94./255., 108./255., 132./255., 135./255., 125./255., 96./255., 68./255., 51./255., 61./255.};
2923 Double_t blue[9] = { 7./255., 9./255., 12./255., 19./255., 45./255., 89./255., 118./255., 146./255., 118./255.};
2931 Double_t red[9] = { 19./255., 44./255., 74./255., 105./255., 137./255., 166./255., 194./255., 206./255., 220./255.};
2932 Double_t green[9] = { 19./255., 28./255., 40./255., 55./255., 82./255., 110./255., 159./255., 181./255., 220./255.};
2933 Double_t blue[9] = { 19./255., 42./255., 68./255., 96./255., 129./255., 157./255., 188./255., 203./255., 220./255.};
2941 Double_t red[9] = { 33./255., 44./255., 70./255., 99./255., 140./255., 165./255., 199./255., 211./255., 216./255.};
2942 Double_t green[9] = { 38./255., 50./255., 76./255., 105./255., 140./255., 165./255., 191./255., 189./255., 167./255.};
2943 Double_t blue[9] = { 55./255., 67./255., 97./255., 124./255., 140./255., 166./255., 163./255., 129./255., 52./255.};
2951 Double_t red[9] = { 0./255., 33./255., 73./255., 124./255., 136./255., 152./255., 159./255., 171./255., 223./255.};
2952 Double_t green[9] = { 0./255., 43./255., 92./255., 124./255., 134./255., 126./255., 121./255., 144./255., 223./255.};
2953 Double_t blue[9] = { 0./255., 43./255., 68./255., 76./255., 73./255., 64./255., 72./255., 114./255., 223./255.};
2961 Double_t red[9] = { 5./255., 18./255., 45./255., 124./255., 193./255., 223./255., 205./255., 128./255., 49./255.};
2962 Double_t green[9] = { 48./255., 134./255., 207./255., 230./255., 193./255., 113./255., 28./255., 0./255., 7./255.};
2963 Double_t blue[9] = { 6./255., 15./255., 41./255., 121./255., 193./255., 226./255., 208./255., 130./255., 49./255.};
2971 Double_t red[9] = { 180./255., 106./255., 104./255., 135./255., 164./255., 188./255., 189./255., 165./255., 144./255.};
2972 Double_t green[9] = { 72./255., 126./255., 154./255., 184./255., 198./255., 207./255., 205./255., 190./255., 179./255.};
2973 Double_t blue[9] = { 41./255., 120./255., 158./255., 188./255., 194./255., 181./255., 145./255., 100./255., 62./255.};
2981 Double_t red[9] = { 57./255., 72./255., 94./255., 117./255., 136./255., 154./255., 174./255., 192./255., 215./255.};
2982 Double_t green[9] = { 0./255., 33./255., 68./255., 109./255., 140./255., 171./255., 192./255., 196./255., 209./255.};
2983 Double_t blue[9] = { 116./255., 137./255., 173./255., 201./255., 200./255., 201./255., 203./255., 190./255., 187./255.};
2991 Double_t red[9] = { 31./255., 71./255., 123./255., 160./255., 210./255., 222./255., 214./255., 199./255., 183./255.};
2992 Double_t green[9] = { 40./255., 117./255., 171./255., 211./255., 231./255., 220./255., 190./255., 132./255., 65./255.};
2993 Double_t blue[9] = { 234./255., 214./255., 228./255., 222./255., 210./255., 160./255., 105./255., 60./255., 34./255.};
3001 Double_t red[9] = { 123./255., 108./255., 109./255., 126./255., 154./255., 172./255., 188./255., 196./255., 218./255.};
3002 Double_t green[9] = { 184./255., 138./255., 130./255., 133./255., 154./255., 175./255., 188./255., 196./255., 218./255.};
3003 Double_t blue[9] = { 208./255., 130./255., 109./255., 99./255., 110./255., 122./255., 150./255., 171./255., 218./255.};
3011 Double_t red[9] = { 105./255., 106./255., 122./255., 143./255., 159./255., 172./255., 176./255., 181./255., 207./255.};
3012 Double_t green[9] = { 252./255., 197./255., 194./255., 187./255., 174./255., 162./255., 153./255., 136./255., 125./255.};
3013 Double_t blue[9] = { 146./255., 133./255., 144./255., 155./255., 163./255., 167./255., 166./255., 162./255., 174./255.};
3021 Double_t red[9] = { 171./255., 141./255., 145./255., 152./255., 154./255., 159./255., 163./255., 158./255., 177./255.};
3022 Double_t green[9] = { 236./255., 143./255., 100./255., 63./255., 53./255., 55./255., 44./255., 31./255., 6./255.};
3023 Double_t blue[9] = { 59./255., 48./255., 46./255., 44./255., 42./255., 54./255., 82./255., 112./255., 179./255.};
3031 Double_t red[9] = { 180./255., 190./255., 209./255., 223./255., 204./255., 228./255., 205./255., 152./255., 91./255.};
3032 Double_t green[9] = { 93./255., 125./255., 147./255., 172./255., 181./255., 224./255., 233./255., 198./255., 158./255.};
3033 Double_t blue[9] = { 236./255., 218./255., 160./255., 133./255., 114./255., 132./255., 162./255., 220./255., 218./255.};
3041 Double_t red[9] = { 225./255., 183./255., 162./255., 135./255., 115./255., 111./255., 119./255., 145./255., 211./255.};
3042 Double_t green[9] = { 205./255., 177./255., 166./255., 135./255., 124./255., 117./255., 117./255., 132./255., 172./255.};
3043 Double_t blue[9] = { 186./255., 165./255., 155./255., 135./255., 126./255., 130./255., 150./255., 178./255., 226./255.};
3051 Double_t red[9] = { 39./255., 43./255., 59./255., 63./255., 80./255., 116./255., 153./255., 177./255., 223./255.};
3052 Double_t green[9] = { 39./255., 43./255., 59./255., 74./255., 91./255., 114./255., 139./255., 165./255., 223./255.};
3053 Double_t blue[9] = { 39./255., 50./255., 59./255., 70./255., 85./255., 115./255., 151./255., 176./255., 223./255.};
3061 Double_t red[9] = { 0./255., 38./255., 60./255., 76./255., 84./255., 89./255., 101./255., 128./255., 204./255.};
3062 Double_t green[9] = { 0./255., 10./255., 15./255., 23./255., 35./255., 57./255., 83./255., 123./255., 199./255.};
3063 Double_t blue[9] = { 0./255., 11./255., 22./255., 40./255., 63./255., 86./255., 97./255., 94./255., 85./255.};
3071 Double_t red[9] = { 94./255., 112./255., 141./255., 165./255., 167./255., 140./255., 91./255., 49./255., 27./255.};
3072 Double_t green[9] = { 27./255., 46./255., 88./255., 135./255., 166./255., 161./255., 135./255., 97./255., 58./255.};
3073 Double_t blue[9] = { 42./255., 52./255., 81./255., 106./255., 139./255., 158./255., 155./255., 137./255., 116./255.};
3081 Double_t red[9] = { 30./255., 49./255., 79./255., 117./255., 135./255., 151./255., 146./255., 138./255., 147./255.};
3082 Double_t green[9] = { 63./255., 60./255., 72./255., 90./255., 94./255., 94./255., 68./255., 46./255., 16./255.};
3083 Double_t blue[9] = { 18./255., 28./255., 41./255., 56./255., 62./255., 63./255., 50./255., 36./255., 21./255.};
3091 Double_t red[9] = { 0./255., 30./255., 63./255., 101./255., 143./255., 152./255., 169./255., 187./255., 230./255.};
3092 Double_t green[9] = { 0./255., 14./255., 28./255., 42./255., 58./255., 61./255., 67./255., 74./255., 91./255.};
3093 Double_t blue[9] = { 39./255., 26./255., 21./255., 18./255., 15./255., 14./255., 14./255., 13./255., 13./255.};
3101 Double_t red[9] = { 149./255., 140./255., 164./255., 179./255., 182./255., 181./255., 131./255., 87./255., 61./255.};
3102 Double_t green[9] = { 62./255., 70./255., 107./255., 136./255., 144./255., 138./255., 117./255., 87./255., 74./255.};
3103 Double_t blue[9] = { 40./255., 38./255., 45./255., 49./255., 49./255., 49./255., 38./255., 32./255., 34./255.};
3111 Double_t red[9] = { 99./255., 112./255., 148./255., 165./255., 179./255., 182./255., 183./255., 183./255., 208./255.};
3112 Double_t green[9] = { 39./255., 40./255., 57./255., 79./255., 104./255., 127./255., 148./255., 161./255., 198./255.};
3113 Double_t blue[9] = { 15./255., 16./255., 18./255., 33./255., 51./255., 79./255., 103./255., 129./255., 177./255.};
3121 Double_t red[9] = { 99./255., 116./255., 154./255., 174./255., 200./255., 196./255., 201./255., 201./255., 230./255.};
3122 Double_t green[9] = { 0./255., 0./255., 8./255., 32./255., 58./255., 83./255., 119./255., 136./255., 173./255.};
3123 Double_t blue[9] = { 5./255., 6./255., 7./255., 9./255., 9./255., 14./255., 17./255., 19./255., 24./255.};
3131 Double_t red[9] = { 82./255., 106./255., 126./255., 141./255., 155./255., 163./255., 142./255., 107./255., 66./255.};
3132 Double_t green[9] = { 62./255., 44./255., 69./255., 107./255., 135./255., 152./255., 149./255., 132./255., 119./255.};
3133 Double_t blue[9] = { 39./255., 25./255., 31./255., 60./255., 73./255., 68./255., 49./255., 72./255., 188./255.};
3141 Double_t red[9] = { 18./255., 29./255., 44./255., 72./255., 116./255., 158./255., 184./255., 208./255., 221./255.};
3142 Double_t green[9] = { 27./255., 46./255., 71./255., 105./255., 146./255., 177./255., 189./255., 190./255., 183./255.};
3143 Double_t blue[9] = { 39./255., 55./255., 80./255., 108./255., 130./255., 133./255., 124./255., 100./255., 76./255.};
3151 Double_t red[9] = { 0./255., 48./255., 119./255., 173./255., 212./255., 224./255., 228./255., 228./255., 245./255.};
3152 Double_t green[9] = { 0./255., 13./255., 30./255., 47./255., 79./255., 127./255., 167./255., 205./255., 245./255.};
3153 Double_t blue[9] = { 0./255., 68./255., 75./255., 43./255., 16./255., 22./255., 55./255., 128./255., 245./255.};
3161 Double_t red[9] = { 34./255., 70./255., 129./255., 187./255., 225./255., 226./255., 216./255., 193./255., 179./255.};
3162 Double_t green[9] = { 48./255., 91./255., 147./255., 194./255., 226./255., 229./255., 196./255., 110./255., 12./255.};
3163 Double_t blue[9] = { 234./255., 212./255., 216./255., 224./255., 206./255., 110./255., 53./255., 40./255., 29./255.};
3171 Double_t red[9] = { 30./255., 55./255., 103./255., 147./255., 174./255., 203./255., 188./255., 151./255., 105./255.};
3172 Double_t green[9] = { 0./255., 65./255., 138./255., 182./255., 187./255., 175./255., 121./255., 53./255., 9./255.};
3173 Double_t blue[9] = { 191./255., 202./255., 212./255., 208./255., 171./255., 140./255., 97./255., 57./255., 30./255.};
3181 Double_t red[9] = { 112./255., 97./255., 113./255., 125./255., 138./255., 159./255., 178./255., 188./255., 225./255.};
3182 Double_t green[9] = { 16./255., 17./255., 24./255., 37./255., 56./255., 81./255., 110./255., 136./255., 189./255.};
3183 Double_t blue[9] = { 38./255., 35./255., 46./255., 59./255., 78./255., 103./255., 130./255., 152./255., 201./255.};
3191 Double_t red[9] = { 18./255., 72./255., 5./255., 23./255., 29./255., 201./255., 200./255., 98./255., 29./255.};
3192 Double_t green[9] = { 0./255., 0./255., 43./255., 167./255., 211./255., 117./255., 0./255., 0./255., 0./255.};
3193 Double_t blue[9] = { 51./255., 203./255., 177./255., 26./255., 10./255., 9./255., 8./255., 3./255., 0./255.};
3201 Double_t red[9] = { 19./255., 42./255., 64./255., 88./255., 118./255., 147./255., 175./255., 187./255., 205./255.};
3202 Double_t green[9] = { 19./255., 55./255., 89./255., 125./255., 154./255., 169./255., 161./255., 129./255., 70./255.};
3203 Double_t blue[9] = { 19./255., 32./255., 47./255., 70./255., 100./255., 128./255., 145./255., 130./255., 75./255.};
3211 Double_t red[9] = { 33./255., 31./255., 42./255., 68./255., 86./255., 111./255., 141./255., 172./255., 227./255.};
3212 Double_t green[9] = { 255./255., 175./255., 145./255., 106./255., 88./255., 55./255., 15./255., 0./255., 0./255.};
3213 Double_t blue[9] = { 255./255., 205./255., 202./255., 203./255., 208./255., 205./255., 203./255., 206./255., 231./255.};
3221 Double_t red[9] = { 0./255., 25./255., 50./255., 79./255., 110./255., 145./255., 181./255., 201./255., 254./255.};
3222 Double_t green[9] = { 0./255., 16./255., 30./255., 46./255., 63./255., 82./255., 101./255., 124./255., 179./255.};
3223 Double_t blue[9] = { 0./255., 12./255., 21./255., 29./255., 39./255., 49./255., 61./255., 74./255., 103./255.};
3231 Double_t red[9] = { 0./255., 13./255., 30./255., 44./255., 72./255., 120./255., 156./255., 200./255., 247./255.};
3232 Double_t green[9] = { 0./255., 36./255., 84./255., 117./255., 141./255., 153./255., 151./255., 158./255., 247./255.};
3233 Double_t blue[9] = { 0./255., 94./255., 100./255., 82./255., 56./255., 66./255., 76./255., 131./255., 247./255.};
3241 Double_t red[9] = { 26./255., 51./255., 43./255., 33./255., 28./255., 35./255., 74./255., 144./255., 246./255.};
3242 Double_t green[9] = { 9./255., 24./255., 55./255., 87./255., 118./255., 150./255., 180./255., 200./255., 222./255.};
3243 Double_t blue[9] = { 30./255., 96./255., 112./255., 114./255., 112./255., 101./255., 72./255., 35./255., 0./255.};
3251 Double_t red[9] = { 0./255., 5./255., 65./255., 97./255., 124./255., 156./255., 189./255., 224./255., 255./255.};
3252 Double_t green[9] = { 32./255., 54./255., 77./255., 100./255., 123./255., 148./255., 175./255., 203./255., 234./255.};
3253 Double_t blue[9] = { 77./255., 110./255., 107./255., 111./255., 120./255., 119./255., 111./255., 94./255., 70./255.};
3259 ::Error(
"SetPalette",
"Unknown palette number %d", ncolors);
3262 paletteType = ncolors;
3265 if (alpha > 0.)
fgPalettesList.fArray[paletteType-51] += alpha/10.0f;
R__EXTERN TApplication * gApplication
static Int_t gDefinedColors
Number of defined colors.
static Float_t gColorThreshold
Color threshold used by GetColor.
static Int_t gLastDefinedColors
Previous number of defined colors.
static Int_t gHighestColorIndex
Highest color index defined.
winID h TVirtualViewer3D TVirtualGLPainter p
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void pixel
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h offset
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t r
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char cname
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void value
void InitializeGraphics(Bool_t only_web=kFALSE)
Initialize the graphics environment.
static void NeedGraphicsLibs()
Static method.
Array of doubles (64 bits per element).
Array of integers (32 bits per element).
The color creation and management class.
void Print(Option_t *option="") const override
Dump this color with its attributes.
Float_t fSaturation
Saturation.
static void SetPalette(Int_t ncolors, Int_t *colors, Float_t alpha=1.)
Static function.
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.
virtual void SetRGB(Float_t r, Float_t g, Float_t b)
Initialize this color and its associated colors.
static void RGBtoHLS(Float_t r, Float_t g, Float_t b, Float_t &h, Float_t &l, Float_t &s)
static Float_t HLStoRGB1(Float_t rn1, Float_t rn2, Float_t huei)
Static method. Auxiliary to HLS2RGB().
static Int_t GetColorPalette(Int_t i)
Static function returning the color number i in current palette.
static const TArrayI & GetPalette()
Static function returning the current active palette.
void ls(Option_t *option="") const override
List this color with its attributes.
static Bool_t SaveColor(std::ostream &out, Int_t ci)
Save a color with index > 228 as a C++ statement(s) on output stream out.
static ULong_t RGB2Pixel(Int_t r, Int_t g, Int_t b)
Convert r,g,b to graphics system dependent pixel value.
static ULong_t Number2Pixel(Int_t ci)
Static method that given a color index number, returns the corresponding pixel value.
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.
static Int_t GetColor(const char *hexcolor)
Static method returning color number for color specified by hex color string of form: "#rrggbb",...
static void InitializeColors()
Initialize colors used by the TCanvas based graphics (via TColor objects).
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:
Float_t fAlpha
Alpha (transparency)
void Copy(TObject &color) const override
Copy this color to obj.
static void InvertPalette()
Invert the current color palette.
static void CreateColorWheel()
Static function steering the creation of all colors in the color wheel.
static Int_t GetColorBright(Int_t color)
Static function: Returns the bright color number corresponding to n If the TColor object does not exi...
static Bool_t IsGrayscale()
Return whether all colors return grayscale values.
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::Ge...
const char * AsHexString() const
Return color as hexadecimal string.
static Int_t GetColorDark(Int_t color)
Static function: Returns the dark color number corresponding to n If the TColor object does not exist...
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., Bool_t setPalette=kTRUE)
Static function creating a color table with several connected linear gradients.
static const char * PixelAsHexString(ULong_t pixel)
Convert machine dependent pixel value (obtained via RGB2Pixel or via Number2Pixel() or via TColor::Ge...
void Allocate()
Make this color known to the graphics system.
ULong_t GetPixel() const
Return pixel value corresponding to this color.
static Int_t CreateColorTableFromFile(TString fileName, Float_t alpha=1.)
Static function creating a color palette based on an input text file.
static void SetColorThreshold(Float_t t)
This method specifies the color threshold used by GetColor to retrieve a color.
Float_t fGreen
Fraction of Green.
static void CreateColorsCircle(Int_t offset, const char *name, UChar_t *rgb)
Create the "circle" colors in the color wheel.
TColor & operator=(const TColor &color)
static Int_t GetNumberOfColors()
Static function returning number of colors in the color palette.
static Int_t GetFreeColorIndex()
Static function: Returns a free color index which can be used to define a user custom color.
Float_t GetSaturation() const
static void HLStoRGB(Float_t h, Float_t l, Float_t s, Float_t &r, Float_t &g, Float_t &b)
TColor()
Default constructor.
Int_t fNumber
Color number identifier.
static void CreateColorsRectangle(Int_t offset, const char *name, UChar_t *rgb)
Create the "rectangular" colors in the color wheel.
Float_t fBlue
Fraction of Blue.
static void CreateColorsGray()
Create the Gray scale colors in the Color Wheel.
virtual void SetAlpha(Float_t a)
virtual ~TColor()
Color destructor.
Float_t fRed
Fraction of Red.
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.
static Int_t GetColorTransparent(Int_t color, Float_t a)
Static function: Returns the transparent color number corresponding to n.
static Bool_t DefinedColors()
Static function returning kTRUE if some new colors have been defined after initialisation or since th...
static void SetGrayscale(Bool_t set=kTRUE)
Set whether all colors should return grayscale values.
The TNamed class is the base class for all named ROOT classes.
void Copy(TObject &named) const override
Copy this to obj.
virtual void SetTitle(const char *title="")
Set the title of the TNamed.
const char * GetName() const override
Returns name of object.
virtual void SetName(const char *name)
Set the name of the TNamed.
virtual void AddAtAndExpand(TObject *obj, Int_t idx)
Add object at position idx.
Mother of all ROOT objects.
virtual void Warning(const char *method, const char *msgfmt,...) const
Issue warning message.
virtual TObject * FindObject(const char *name) const
Must be redefined in derived classes.
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
const char * Data() const
static TString Format(const char *fmt,...)
Static method which formats a string using a printf style format descriptor and return a TString.
void Form(const char *fmt,...)
Formats a string using a printf style format descriptor.
Short_t Max(Short_t a, Short_t b)
Returns the largest of a and b.
Short_t Min(Short_t a, Short_t b)
Returns the smallest of a and b.
Short_t Abs(Short_t d)
Returns the absolute value of parameter Short_t d.
ULong_t fPixel
color pixel value (index in color table)
UShort_t fRed
red component (0..65535)
UShort_t fGreen
green component (0..65535)
UShort_t fBlue
blue component (0..65535)
UShort_t fMask
mask telling which color components are valid