134 if (ix1<0 || ix2 <0 || iy1 < 0 || iy2 <0)
return;
155 if ((fillis == 3) || (fillis == 2)) {
163 if ((fillsi > 0) && (fillsi < 26)) {
203 bordersize = bordersize < 1 ? 1 : bordersize;
215 Short_t pxl,pyl,pxt,pyt,px1,py1,px2,py2;
219 if (px1 < px2) {pxl = px1; pxt = px2;}
220 else {pxl = px2; pxt = px1;}
221 if (py1 > py2) {pyl = py1; pyt = py2;}
222 else {pyl = py2; pyt = py1;}
224 if (bordersize == 1) {
247 frame[0].
fX = pxl; frame[0].
fY = pyl;
248 frame[1].
fX = pxl + bordersize; frame[1].
fY = pyl - bordersize;
249 frame[2].
fX = pxl + bordersize; frame[2].
fY = pyt + bordersize;
250 frame[3].
fX = pxt - bordersize; frame[3].
fY = pyt + bordersize;;
251 frame[4].
fX = pxt; frame[4].
fY = pyt;
252 frame[5].
fX = pxl; frame[5].
fY = pyt;
254 if (
mode == -1) col = lo;
259 frame[0].
fX = pxl; frame[0].
fY = pyl;
260 frame[1].
fX = pxl + bordersize; frame[1].
fY = pyl - bordersize;
261 frame[2].
fX = pxt - bordersize; frame[2].
fY = frame[1].
fY;
262 frame[3].
fX = frame[2].
fX; frame[3].
fY = pyt + bordersize;
263 frame[4].
fX = pxt; frame[4].
fY = pyt;
264 frame[5].
fX = pxt; frame[5].
fY = pyl;
301 else if (ms >= 9 && ms <= 19)
305 const Int_t kBASEMARKER = 8;
307 if (ms == 6) msize *= 0.2;
308 if (ms == 7) msize *= 0.3;
325 if (ms==20) ms = 120;
651 Int_t fais = 0 , fasi = 0;
659 static const UInt_t gCachePtSize = 200;
660 static TPoint gPointCache[gCachePtSize];
664 static char dashList[10];
674 char *dash =
new char[ndashes];
676 for (
int j = 0; j < ndashes; j++) {
678 sscanf(((
TObjString*)tokens->
At(j))->GetName(),
"%d", &it);
679 dash[j] = (char)(it/4);
682 dashSize =
TMath::Min((
int)
sizeof(dashList), ndashes);
683 for (
int i = 0; i < dashSize; i++ ) {
684 dashList[i] = dash[i];
731 if (!
line && ((fais == 3) || (fais == 2)) && (fasi > 100) ) {
738 if (
n+1 < gCachePtSize) {
758 for (
UInt_t i = 0; i <
n; i++) {
765 const char *stipple = (fais == 3) && (fasi > 0) && (fasi < 26) ? (
const char*)
gStipples[fasi] :
nullptr;
770 if (
del)
delete []
pt;
817 const char* pDash,
const char* col,
UInt_t thick)
824 for (
Int_t i = 1; i < nn; i++) {
const unsigned char gStipples[26][32]
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 del
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 x2
Option_t Option_t TPoint TPoint const char x1
Option_t Option_t TPoint xy
Option_t Option_t TPoint TPoint const char mode
Option_t Option_t TPoint TPoint const char y2
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 Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t type
Option_t Option_t TPoint TPoint const char y1
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.
static Width_t GetMarkerLineWidth(Style_t style)
Internal helper function that returns the line width of the given marker style (0 = filled marker)
Size_t fMarkerSize
Marker size.
Style_t fMarkerStyle
Marker style.
static Style_t GetMarkerStyleBase(Style_t style)
Internal helper function that returns the corresponding marker style with line width 1 for the given ...
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.
static Int_t GetColor(const char *hexcolor)
Static method returning color number for color specified by hex color string of form: "#rrggbb",...
const char * AsHexString() const
Return color as hexadecimal string.
Save canvas as an image (GIF, JPEG, PNG, XPM, TIFF etc.).
void NewPage() override
new page
virtual ~TImageDump()
destructor
void DrawBox(Double_t x1, Double_t y1, Double_t x2, Double_t y2) override
Draw a Box.
void CellArrayEnd() override
Cell array end.
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 CellArrayFill(Int_t r, Int_t g, Int_t b) override
Cell array fill.
void DrawPolyMarker(Int_t n, Float_t *x, Float_t *y) override
not used
void Open(const char *filename, Int_t type=-111) override
Open a image file.
void Close(Option_t *opt="") override
Close a image file.
void DrawPS(Int_t n, Float_t *xw, Float_t *yw) override
not used
void Text(Double_t x, Double_t y, const char *string) override
Draw text.
void SetColor(Float_t r, Float_t g, Float_t b) override
Set color with its R G B components.
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) override
Draw a Frame around a box.
Int_t fType
PostScript workstation type.
Int_t XtoPixel(Double_t x)
x to pixel
void CellArrayBegin(Int_t W, Int_t H, Double_t x1, Double_t x2, Double_t y1, Double_t y2) override
cell array begin
virtual void DrawFillArea(UInt_t, TPoint *, const char *="#000000", const char *=nullptr, UInt_t=16, UInt_t=16)
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 DrawText(Int_t=0, Int_t=0, const char *="", Int_t=12, const char *=nullptr, const char *="fixed", EText3DType=TImage::kPlain, const char *=nullptr, Float_t=0)
virtual void FillRectangle(const char *=nullptr, Int_t=0, Int_t=0, UInt_t=0, UInt_t=0)
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 void FillPolygon(UInt_t, TPoint *, const char *="#000000", const char *=nullptr, UInt_t=16, UInt_t=16)
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 BeginPaint(Bool_t=kTRUE)
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.
Int_t GetEntries() const override
Return the number of objects in array (i.e.
TObject * At(Int_t idx) const override
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.
Double_t Floor(Double_t x)
Rounds x downward, returning the largest integral value that is not greater than x.
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.