135 if (ix1<0 || ix2 <0 || iy1 < 0 || iy2 <0)
return;
156 if ((fillis == 3) || (fillis == 2)) {
158 x[0] =
x1;
y[0] = y1;
159 x[1] =
x2;
y[1] = y1;
160 x[2] =
x2;
y[2] = y2;
161 x[3] =
x1;
y[3] = y2;
164 if ((fillsi > 0) && (fillsi < 26)) {
165 x[0] =
x1;
y[0] = y1;
166 x[1] =
x2;
y[1] = y1;
167 x[2] =
x2;
y[2] = y2;
168 x[3] =
x1;
y[3] = y2;
204 bordersize = bordersize < 1 ? 1 : bordersize;
209 lo =
gROOT->GetColor(10);
216 Short_t pxl,pyl,pxt,pyt,px1,py1,px2,py2;
220 if (px1 < px2) {pxl = px1; pxt = px2;}
221 else {pxl = px2; pxt = px1;}
222 if (py1 > py2) {pyl = py1; pyt = py2;}
223 else {pyl = py2; pyt = py1;}
225 if (bordersize == 1) {
237 col =
gROOT->GetColor(light);
239 col =
gROOT->GetColor(10);
248 frame[0].
fX = pxl; frame[0].
fY = pyl;
249 frame[1].
fX = pxl + bordersize; frame[1].
fY = pyl - bordersize;
250 frame[2].
fX = pxl + bordersize; frame[2].
fY = pyt + bordersize;
251 frame[3].
fX = pxt - bordersize; frame[3].
fY = pyt + bordersize;;
252 frame[4].
fX = pxt; frame[4].
fY = pyt;
253 frame[5].
fX = pxl; frame[5].
fY = pyt;
255 if (mode == -1) col = lo;
260 frame[0].
fX = pxl; frame[0].
fY = pyl;
261 frame[1].
fX = pxl + bordersize; frame[1].
fY = pyl - bordersize;
262 frame[2].
fX = pxt - bordersize; frame[2].
fY = frame[1].
fY;
263 frame[3].
fX = frame[2].
fX; frame[3].
fY = pyt + bordersize;
264 frame[4].
fX = pxt; frame[4].
fY = pyt;
265 frame[5].
fX = pxt; frame[5].
fY = pyl;
267 if (mode == -1) col =
hi;
297 if (
ms > 7 &&
ms <= 19)
ms = 20;
298 if (
ms == 4)
ms = 24;
301 const Int_t kBASEMARKER = 8;
303 if (
ms == 6) msize *= 0.2;
304 if (
ms == 7) msize *= 0.3;
638 Int_t fais = 0 , fasi = 0;
646 static const UInt_t gCachePtSize = 200;
647 static TPoint gPointCache[gCachePtSize];
654 static char dashList[10];
655 Int_t dashLength = 0;
665 dash =
new char[ndashes];
667 for (
int j = 0; j < ndashes; j++) {
669 sscanf(((
TObjString*)tokens->
At(j))->GetName(),
"%d", &it);
670 dash[j] = (char)(it/4);
673 dashSize =
TMath::Min((
int)
sizeof(dashList), ndashes);
675 for (
int i = 0; i < dashSize; i++ ) {
676 dashList[i] = dash[i];
677 dashLength += dashList[i];
724 if (!
line && ((fais == 3) || (fais == 2)) && (fasi > 100) ) {
729 if (
n+1 < gCachePtSize) {
749 for (
UInt_t i = 0; i <
n; i++) {
756 const char *stipple = (fais == 3) && (fasi > 0) && (fasi < 26) ? (
const char*)
gStipples[fasi] : 0;
783 if (del)
delete []
pt;
800 const char* pDash,
const char* col,
UInt_t thick)
807 for (
Int_t i = 1; i < nn; i++) {
const unsigned char gStipples[26][32]
static const double x2[5]
static const double x1[5]
float type_of_call hi(const int &, const int &)
static Int_t gCellArrayX2
static Int_t gCellArrayX1
static UInt_t * gCellArrayColors
static Int_t gCellArrayIdx
static Int_t gCellArrayY2
static Int_t gCellArrayY1
R__EXTERN TStyle * gStyle
R__EXTERN TVirtualPS * gVirtualPS
Style_t fFillStyle
Fill area style.
Color_t fFillColor
Fill area color.
Width_t fLineWidth
Line width.
Style_t fLineStyle
Line style.
Color_t fLineColor
Line color.
Color_t fMarkerColor
Marker color.
Size_t fMarkerSize
Marker size.
Style_t fMarkerStyle
Marker style.
virtual void SetTextAlign(Short_t align=11)
Set the text alignment.
Color_t fTextColor
Text color.
Float_t fTextAngle
Text angle.
virtual void SetTextAngle(Float_t tangle=0)
Set the text angle.
virtual void SetTextColor(Color_t tcolor=1)
Set the text color.
virtual void SetTextFont(Font_t tfont=62)
Set the text font.
Font_t fTextFont
Text font.
virtual void SetTextSize(Float_t tsize=1)
Set the text size.
Short_t fTextAlign
Text alignment.
Float_t fTextSize
Text size.
The color creation and management class.
const char * AsHexString() const
Return color as hexadecimal string.
Save canvas as an image (GIF, JPEG, PNG, XPM, TIFF etc.).
void DrawBox(Double_t x1, Double_t y1, Double_t x2, Double_t y2)
Draw a Box.
virtual ~TImageDump()
destructor
void Text(Double_t x, Double_t y, const char *string)
Draw text.
void DrawDashPolyLine(Int_t npoints, TPoint *pt, UInt_t nDash, const char *pDash, const char *col, UInt_t thick)
draw dashed polyline
TImageDump()
Default constructor.
Int_t YtoPixel(Double_t y)
y to pixel
void SetColor(Float_t r, Float_t g, Float_t b)
Set color with its R G B components.
void CellArrayFill(Int_t r, Int_t g, Int_t b)
Cell array fill.
void Close(Option_t *opt="")
Close a image file.
void Open(const char *filename, Int_t type=-111)
Open a image file.
void DrawPS(Int_t n, Float_t *xw, Float_t *yw)
not used
void CellArrayEnd()
Cell array end.
void DrawPolyMarker(Int_t n, Float_t *x, Float_t *y)
not used
void DrawFrame(Double_t xl, Double_t yl, Double_t xt, Double_t yt, Int_t mode, Int_t border, Int_t dark, Int_t light)
Draw a Frame around a box.
void CellArrayBegin(Int_t W, Int_t H, Double_t x1, Double_t x2, Double_t y1, Double_t y2)
cell array begin
Int_t fType
PostScript workstation type.
Int_t XtoPixel(Double_t x)
x to pixel
virtual void FillPolygon(UInt_t, TPoint *, const char *="#000000", const char *=0, UInt_t=16, UInt_t=16)
virtual void DrawText(Int_t=0, Int_t=0, const char *="", Int_t=12, const char *=0, const char *="fixed", EText3DType=TImage::kPlain, const char *=0, Float_t=0)
virtual void DrawDashLine(UInt_t, UInt_t, UInt_t, UInt_t, UInt_t, const char *, const char *="#000000", UInt_t=1)
virtual void DrawPolyLine(UInt_t, TPoint *, const char *="#000000", UInt_t=1, TImage::ECoordMode=kCoordModeOrigin)
virtual void PutPixel(Int_t, Int_t, const char *="#000000")
virtual void DrawCellArray(Int_t, Int_t, Int_t, Int_t, Int_t, Int_t, UInt_t *)
virtual void DrawBox(Int_t, Int_t, Int_t, Int_t, const char *="#000000", UInt_t=1, Int_t=0)
static TImage * Create()
Create an image.
virtual void DrawLine(UInt_t, UInt_t, UInt_t, UInt_t, const char *="#000000", UInt_t=1)
virtual void WriteImage(const char *, EImageFileTypes=TImage::kUnknown)
virtual Bool_t IsValid() const
virtual void DrawRectangle(UInt_t, UInt_t, UInt_t, UInt_t, const char *="#000000", UInt_t=1)
virtual void DrawCircle(Int_t, Int_t, Int_t, const char *="#000000", Int_t=1)
virtual void DrawFillArea(UInt_t, TPoint *, const char *="#000000", const char *=0, UInt_t=16, UInt_t=16)
virtual void FillRectangle(const char *=0, Int_t=0, Int_t=0, UInt_t=0, UInt_t=0)
virtual void BeginPaint(Bool_t=kTRUE)
virtual void SetTitle(const char *title="")
Set the title of the TNamed.
virtual void SetName(const char *name)
Set the name of the TNamed.
virtual const char * GetName() const
Returns name of object.
Int_t GetEntries() const
Return the number of objects in array (i.e.
TObject * At(Int_t idx) const
Collectable string class.
TObjArray * Tokenize(const TString &delim) const
This function is used to isolate sequential tokens in a TString.
Float_t GetImageScaling() const
const char * GetLineStyleString(Int_t i=1) const
Return line style string (used by PostScript).
Base class for several text objects.
TVirtualPS is an abstract interface to Postscript, PDF, SVG.
static constexpr double ms
static constexpr double m2
static constexpr double m3
Short_t Min(Short_t a, Short_t b)