This tutorial demonstrates how to use radial gradients, custom colors, transparency.
Requires ROOT built for OS X with –enable-cocoa.
{
for (
int n = 0;
n < 2; ++
n)
if (gradient) {
gradient->SetColorAlpha(0, 0.2 +
gRandom->
Rndm() * 0.8);
gradient->SetColorAlpha(1, 0.2 +
gRandom->
Rndm() * 0.8);
} else {
::Error(
"CreateRandomGradientFill",
"failed to find new gradient color with index %d",
indx);
}
}
{
::Error(
"add_ellipse",
"failed to find a new color index for a gradient fill");
return false;
}
return true;
}
{
auto cnv =
new TCanvas(
"radialgradients",
"radial gradients", 800, 800);
if (!
cnv->UseGL() && !
cnv->IsWeb())
"This macro requires either OpenGL or Web canvas to correctly handle gradient colors");
for (unsigned i = 0; i < 100; ++i)
}
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
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.
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
R__EXTERN TRandom * gRandom
R__EXTERN TStyle * gStyle
static Int_t GetRadialGradient(Double_t r, const std::vector< Int_t > &colors, const std::vector< Double_t > &positions={})
Static function: Returns the radial gradient color number corresponding to specified parameters.
void SetRadialGradient(const Point ¢er, Double_t radius)
Set radial gradient.
virtual void SetSeed(ULong_t seed=0)
Set the random generator seed.
Double_t Rndm() override
Machine independent random number generator.
virtual UInt_t Integer(UInt_t imax)
Returns a random integer uniformly distributed on the interval [ 0, imax-1 ].
void SetCanvasPreferGL(Bool_t prefer=kTRUE)
- Author
- Timur Pocheptsov
Definition in file radialgradients.C.