Logo ROOT  
Reference Guide
TImage.h
Go to the documentation of this file.
1// @(#)root/graf:$Id$
2// Author: Fons Rademakers, Reiner Rohlfs 15/10/2001
3
4/*************************************************************************
5 * Copyright (C) 2001-2001, Rene Brun, Fons Rademakers and Reiner Rohlfs *
6 * All rights reserved. *
7 * *
8 * For the licensing terms see $ROOTSYS/LICENSE. *
9 * For the list of contributors see $ROOTSYS/README/CREDITS. *
10 *************************************************************************/
11
12#ifndef ROOT_TImage
13#define ROOT_TImage
14
15
16#include "TNamed.h"
17
18#include "TAttImage.h"
19#include "GuiTypes.h"
20#include "TVectorDfwd.h"
21
22class TVirtualPad;
23class TArrayD;
24class TArrayL;
25class TH2D;
26class TPoint;
27class TText;
28
29class TImage : public TNamed, public TAttImage {
30
31friend TImage operator+(const TImage &i1, const TImage &s2);
32friend TImage operator/(const TImage &i1, const TImage &s2);
33
34public:
35 // Defines image file types
37 kXpm = 0,
56 };
57
59 kPlain = 0, // regular 2D text
70 };
71
72 enum ECharType {
73 kUTF8 = 0,
74 kChar = 1,
75 kUnicode = 4
76 };
77
78 enum ETileType {
83 };
84
88 };
89
96 };
97
98protected:
99 TImage(const char *file) : TNamed(file, "") { }
100 TImage() { }
101
102public:
103 TImage(const TImage &img) : TNamed(img), TAttImage(img) { }
105 { TNamed::operator=(img); TAttImage::operator=(img); return *this; }
106 TImage(UInt_t /*w*/, UInt_t /*h*/) : TNamed(), TAttImage() { }
107
108 virtual ~TImage() { }
109
110 // Cloning
111 virtual TObject *Clone(const char *) const { return 0; }
112
113 // Input / output
114 virtual void ReadImage(const char * /*file*/, EImageFileTypes /*type*/ = TImage::kUnknown) {}
115 virtual void WriteImage(const char * /*file*/, EImageFileTypes /*type*/ = TImage::kUnknown) {}
116 virtual void SetImage(const Double_t * /*imageData*/, UInt_t /*width*/, UInt_t /*height*/, TImagePalette * /*palette*/ = 0) {}
117 virtual void SetImage(const TArrayD & /*imageData*/, UInt_t /*width*/, TImagePalette * /*palette*/ = 0) {}
118 virtual void SetImage(const TVectorD & /*imageData*/, UInt_t /*width*/, TImagePalette * /*palette*/ = 0) {}
119 virtual void SetImage(Pixmap_t /*pxm*/, Pixmap_t /*mask*/ = 0) {}
120
121 // Create an image from the given pad. (See TASImage::FromPad)
122 virtual void FromPad(TVirtualPad * /*pad*/, Int_t /*x*/ = 0, Int_t /*y*/ = 0, UInt_t /*w*/ = 0, UInt_t /*h*/ = 0) {}
123
124 // Restore the image original size. (See TASImage::UnZoom)
125 virtual void UnZoom() {}
126
127 // Zoom the image. (See TASImage::Zoom)
128 virtual void Zoom(UInt_t /*offX*/, UInt_t /*offY*/, UInt_t /*width*/, UInt_t /*height*/) {}
129
130 // Flip the image by a multiple of 90 degrees. (See TASImage::Flip)
131 virtual void Flip(Int_t /*flip*/ = 180) {}
132
133 // Converts image to Gray. (See TASImage::Gray)
134 virtual void Gray(Bool_t /*on*/ = kTRUE) {}
135 virtual Bool_t IsGray() const { return kFALSE; }
136
137 // Mirror the image. (See TASImage::Mirror)
138 virtual void Mirror(Bool_t /*vert*/ = kTRUE) {}
139
140 // Scale the image. (See TASImage::Scale)
141 virtual void Scale(UInt_t /*width*/, UInt_t /*height*/) {}
142
143 // Slice the image. (See TASImage::Slice)
144 virtual void Slice(UInt_t /*xStart*/, UInt_t /*xEnd*/, UInt_t /*yStart*/, UInt_t /*yEnd*/,
145 UInt_t /*toWidth*/, UInt_t /*toHeight*/) {}
146
147 // Tile the image. (See TASImage::Tile)
148 virtual void Tile(UInt_t /*width*/, UInt_t /*height*/) {}
149
150 // Crop the image. (See TASImage::Crop)
151 virtual void Crop(Int_t /*x*/ = 0, Int_t /*y*/ = 0, UInt_t /*width*/ = 0, UInt_t /*height*/ = 0) {}
152
153 // Enlarge image. (See TASImage::Pad)
154 virtual void Pad(const char * /*color*/ = "#FFFFFFFF", UInt_t /*left*/ = 0,
155 UInt_t /*right*/ = 0, UInt_t /*top*/ = 0, UInt_t /*bottom*/ = 0) {}
156
157 // Gaussian blurr. (See TASImage::Blur)
158 virtual void Blur(Double_t /*horizontal*/ = 3, Double_t /*vertical*/ = 3) { }
159
160 // Reduces colordepth of an image. (See TASImage::Vectorize)
161 virtual Double_t *Vectorize(UInt_t /*max_colors*/ = 256, UInt_t /*dither*/ = 4, Int_t /*opaque_threshold*/ = 0) { return 0; }
162
163 // (See TASImage::HSV)
164 virtual void HSV(UInt_t /*hue*/ = 0, UInt_t /*radius*/ = 360, Int_t /*H*/ = 0, Int_t /*S*/ = 0, Int_t /*V*/ = 0,
165 Int_t /*x*/ = 0, Int_t /*y*/ = 0, UInt_t /*width*/ = 0, UInt_t /*height*/ = 0) {}
166
167 // Render multipoint gradient inside a rectangle. (See TASImage::Gradient)
168 virtual void Gradient(UInt_t /*angle*/ = 0, const char * /*colors*/ = "#FFFFFF #000000", const char * /*offsets*/ = 0,
169 Int_t /*x*/ = 0, Int_t /*y*/ = 0, UInt_t /*width*/ = 0, UInt_t /*height*/ = 0) {}
170
171 // Merge two images. (See TASImage::Merge)
172 virtual void Merge(const TImage * /*im*/, const char * /*op*/ = "alphablend", Int_t /*x*/ = 0, Int_t /*y*/ = 0) {}
173
174 // Append image. (See TASImage::Append)
175 virtual void Append(const TImage * /*im*/, const char * /*option*/ = "+", const char * /*color*/ = "#00000000") {}
176
177 // Bevel effect. (See TASImage::Bevel)
178 virtual void Bevel(Int_t /*x*/ = 0, Int_t /*y*/ = 0, UInt_t /*width*/ = 0, UInt_t /*height*/ = 0,
179 const char * /*hi*/ = "#ffdddddd", const char * /*lo*/ = "#ff555555",
180 UShort_t /*thick*/ = 1, Bool_t /*pressed*/ = kFALSE) {}
181
182 virtual void BeginPaint(Bool_t /*fast*/ = kTRUE) {}
183 virtual void EndPaint() {}
184 virtual void DrawLine(UInt_t /*x1*/, UInt_t /*y1*/, UInt_t /*x2*/, UInt_t /*y2*/,
185 const char * /*col*/ = "#000000", UInt_t /*thick*/ = 1) {}
186 virtual void DrawDashLine(UInt_t /*x1*/, UInt_t /*y1*/, UInt_t /*x2*/, UInt_t /*y2*/, UInt_t /*nDash*/,
187 const char * /*pDash*/, const char * /*col*/ = "#000000", UInt_t /*thick*/ = 1) {}
188 virtual void DrawBox(Int_t /*x1*/, Int_t /*y1*/, Int_t /*x2*/, Int_t /*y2*/,
189 const char * /*col*/ = "#000000", UInt_t /*thick*/ = 1, Int_t /*mode*/ = 0) {}
190 virtual void DrawRectangle(UInt_t /*x*/, UInt_t /*y*/, UInt_t /*w*/, UInt_t /*h*/,
191 const char * /*col*/ = "#000000", UInt_t /*thick*/ = 1) {}
192 virtual void FillRectangle(const char * /*col*/ = 0, Int_t /*x*/ = 0, Int_t /*y*/ = 0,
193 UInt_t /*width*/ = 0, UInt_t /*height*/ = 0) {}
194 virtual void DrawPolyLine(UInt_t /*nn*/, TPoint * /*xy*/, const char * /*col*/ = "#000000",
195 UInt_t /*thick*/ = 1, TImage::ECoordMode /*mode*/ = kCoordModeOrigin) {}
196 virtual void PutPixel(Int_t /*x*/, Int_t /*y*/, const char * /*col*/ = "#000000") {}
197 virtual void PolyPoint(UInt_t /*npt*/, TPoint * /*ppt*/, const char * /*col*/ = "#000000",
199 virtual void DrawSegments(UInt_t /*nseg*/, Segment_t * /*seg*/, const char * /*col*/ = "#000000", UInt_t /*thick*/ = 1) {}
200 virtual void DrawText(Int_t /*x*/ = 0, Int_t /*y*/ = 0, const char * /*text*/ = "", Int_t /*size*/ = 12,
201 const char * /*color*/ = 0, const char * /*font*/ = "fixed",
202 EText3DType /*type*/ = TImage::kPlain, const char * /*fore_file*/ = 0, Float_t /*angle*/ = 0) { }
203 virtual void DrawText(TText * /*text*/, Int_t /*x*/ = 0, Int_t /*y*/ = 0) { }
204 virtual void FillPolygon(UInt_t /*npt*/, TPoint * /*ppt*/, const char * /*col*/ = "#000000",
205 const char * /*stipple*/ = 0, UInt_t /*w*/ = 16, UInt_t /*h*/ = 16) {}
206 virtual void FillPolygon(UInt_t /*npt*/, TPoint * /*ppt*/, TImage * /*tile*/) {}
207 virtual void CropPolygon(UInt_t /*npt*/, TPoint * /*ppt*/) {}
208 virtual void DrawFillArea(UInt_t /*npt*/, TPoint * /*ppt*/, const char * /*col*/ = "#000000",
209 const char * /*stipple*/ = 0, UInt_t /*w*/ = 16, UInt_t /*h*/ = 16) {}
210 virtual void DrawFillArea(UInt_t /*npt*/, TPoint * /*ppt*/, TImage * /*tile*/) {}
211 virtual void FillSpans(UInt_t /*npt*/, TPoint * /*ppt*/, UInt_t * /*widths*/, const char * /*col*/ = "#000000",
212 const char * /*stipple*/ = 0, UInt_t /*w*/ = 16, UInt_t /*h*/ = 16) {}
213 virtual void FillSpans(UInt_t /*npt*/, TPoint * /*ppt*/, UInt_t * /*widths*/, TImage * /*tile*/) {}
214 virtual void CropSpans(UInt_t /*npt*/, TPoint * /*ppt*/, UInt_t * /*widths*/) {}
215 virtual void CopyArea(TImage * /*dst*/, Int_t /*xsrc*/, Int_t /*ysrc*/, UInt_t /*w*/, UInt_t /*h*/,
216 Int_t /*xdst*/ = 0, Int_t /*ydst*/ = 0, Int_t /*gfunc*/ = 3, EColorChan /*chan*/ = kAllChan) {}
217 virtual void DrawCellArray(Int_t /*x1*/, Int_t /*y1*/, Int_t /*x2*/, Int_t /*y2*/, Int_t /*nx*/, Int_t /*ny*/, UInt_t * /*ic*/) {}
218 virtual void FloodFill(Int_t /*x*/, Int_t /*y*/, const char * /*col*/, const char * /*min_col*/, const char * /*max_col*/ = 0) {}
219 virtual void DrawCubeBezier(Int_t /*x1*/, Int_t /*y1*/, Int_t /*x2*/, Int_t /*y2*/, Int_t /*x3*/, Int_t /*y3*/, const char * /*col*/ = "#000000", UInt_t /*thick*/ = 1) {}
220 virtual void DrawStraightEllips(Int_t /*x*/, Int_t /*y*/, Int_t /*rx*/, Int_t /*ry*/, const char * /*col*/ = "#000000", Int_t /*thick*/ = 1) {}
221 virtual void DrawCircle(Int_t /*x*/, Int_t /*y*/, Int_t /*r*/, const char * /*col*/ = "#000000", Int_t /*thick*/ = 1) {}
222 virtual void DrawEllips(Int_t /*x*/, Int_t /*y*/, Int_t /*rx*/, Int_t /*ry*/, Int_t /*angle*/, const char * /*col*/ = "#000000", Int_t /*thick*/ = 1) {}
223 virtual void DrawEllips2(Int_t /*x*/, Int_t /*y*/, Int_t /*rx*/, Int_t /*ry*/, Int_t /*angle*/, const char * /*col*/ = "#000000", Int_t /*thick*/ = 1) {}
224
225 virtual void SetEditable(Bool_t /*on*/ = kTRUE) {}
226 virtual Bool_t IsEditable() const { return kFALSE; }
227
228 virtual UInt_t GetWidth() const { return 0; }
229 virtual UInt_t GetHeight() const { return 0; }
230 virtual Bool_t IsValid() const { return kTRUE; }
231 virtual TImage *GetScaledImage() const { return 0; }
232
233 virtual TArrayL *GetPixels(Int_t /*x*/= 0, Int_t /*y*/= 0, UInt_t /*w*/ = 0, UInt_t /*h*/ = 0) { return 0; }
234 virtual TArrayD *GetArray(UInt_t /*w*/ = 0, UInt_t /*h*/ = 0, TImagePalette * = gWebImagePalette) { return 0; }
235 virtual Pixmap_t GetPixmap() { return 0; }
236 virtual Pixmap_t GetMask() { return 0; }
237 virtual UInt_t *GetArgbArray() { return 0; }
238 virtual UInt_t *GetRgbaArray() { return 0; }
239 virtual Double_t *GetVecArray() { return 0; }
240 virtual UInt_t *GetScanline(UInt_t /*y*/) { return 0; }
241 virtual void GetImageBuffer(char ** /*buffer*/, int* /*size*/, EImageFileTypes /*type*/ = TImage::kPng) {}
242 virtual Bool_t SetImageBuffer(char ** /*buffer*/, EImageFileTypes /*type*/ = TImage::kPng) { return kFALSE; }
243 virtual void PaintImage(Drawable_t /*wid*/, Int_t /*x*/, Int_t /*y*/, Int_t /*xsrc*/ = 0, Int_t /*ysrc*/ = 0, UInt_t /*wsrc*/ = 0, UInt_t /*hsrc*/ = 0, Option_t * /*opt*/ = "") { }
244 virtual void FromWindow(Drawable_t /*wid*/, Int_t /*x*/ = 0, Int_t /*y*/ = 0, UInt_t /*w*/ = 0, UInt_t /*h*/ = 0) {}
245 virtual void FromGLBuffer(UChar_t* /*buf*/, UInt_t /*w*/, UInt_t /*h*/) {}
246 static EImageFileTypes GetImageFileTypeFromFilename(const char* opt);
247
248 static TImage *Create();
249 static TImage *Open(const char *file, EImageFileTypes type = kUnknown);
250 static TImage *Open(char **data);
251 static TImage *Open(const char *name, const Double_t *imageData, UInt_t width, UInt_t height, TImagePalette *palette);
252 static TImage *Open(const char *name, const TArrayD &imageData, UInt_t width, TImagePalette *palette = 0);
253 static TImage *Open(const char *name, const TVectorD &imageData, UInt_t width, TImagePalette *palette = 0);
254
255 TImage &operator+=(const TImage &i) { Append(&i, "+"); return *this; }
256 TImage &operator/=(const TImage &i) { Append(&i, "/"); return *this; }
257
258 virtual void ls(Option_t *option="") const;
259
260 ClassDef(TImage,1) // Abstract image class
261};
262
263
264#endif
Handle_t Pixmap_t
Definition: GuiTypes.h:29
Handle_t Drawable_t
Definition: GuiTypes.h:30
unsigned short UShort_t
Definition: RtypesCore.h:38
unsigned char UChar_t
Definition: RtypesCore.h:36
unsigned int UInt_t
Definition: RtypesCore.h:44
const Bool_t kFALSE
Definition: RtypesCore.h:90
double Double_t
Definition: RtypesCore.h:57
float Float_t
Definition: RtypesCore.h:55
const Bool_t kTRUE
Definition: RtypesCore.h:89
const char Option_t
Definition: RtypesCore.h:64
#define ClassDef(name, id)
Definition: Rtypes.h:322
#define BIT(n)
Definition: Rtypes.h:83
R__EXTERN TImagePalette * gWebImagePalette
Definition: TAttImage.h:110
include TDocParser_001 C image html pict1_TDocParser_001 png width
Definition: TDocParser.cxx:121
char name[80]
Definition: TGX11.cxx:109
int type
Definition: TGX11.cxx:120
Binding & operator=(OUT(*fun)(void))
Array of doubles (64 bits per element).
Definition: TArrayD.h:27
Array of longs (32 or 64 bits per element).
Definition: TArrayL.h:27
TImage attributes.
Definition: TAttImage.h:59
2-D histogram with a double per channel (see TH1 documentation)}
Definition: TH2.h:292
A class to define a conversion from pixel values to pixel color.
Definition: TAttImage.h:33
An abstract interface to image processing library.
Definition: TImage.h:29
virtual void Crop(Int_t=0, Int_t=0, UInt_t=0, UInt_t=0)
Definition: TImage.h:151
virtual void FloodFill(Int_t, Int_t, const char *, const char *, const char *=0)
Definition: TImage.h:218
virtual void Pad(const char *="#FFFFFFFF", UInt_t=0, UInt_t=0, UInt_t=0, UInt_t=0)
Definition: TImage.h:154
virtual void SetEditable(Bool_t=kTRUE)
Definition: TImage.h:225
virtual void FillSpans(UInt_t, TPoint *, UInt_t *, TImage *)
Definition: TImage.h:213
virtual void FromPad(TVirtualPad *, Int_t=0, Int_t=0, UInt_t=0, UInt_t=0)
Definition: TImage.h:122
virtual void FillPolygon(UInt_t, TPoint *, const char *="#000000", const char *=0, UInt_t=16, UInt_t=16)
Definition: TImage.h:204
EColorChan
Definition: TImage.h:90
@ kAlphaChan
Definition: TImage.h:94
@ kRedChan
Definition: TImage.h:91
@ kAllChan
Definition: TImage.h:95
@ kBlueChan
Definition: TImage.h:93
@ kGreenChan
Definition: TImage.h:92
virtual void Blur(Double_t=3, Double_t=3)
Definition: TImage.h:158
ECoordMode
Definition: TImage.h:85
@ kCoordModePrevious
Definition: TImage.h:87
@ kCoordModeOrigin
Definition: TImage.h:86
static TImage * Open(const char *file, EImageFileTypes type=kUnknown)
Open a specified image file.
Definition: TImage.cxx:119
virtual void EndPaint()
Definition: TImage.h:183
EImageFileTypes
Definition: TImage.h:36
@ kBmp
Definition: TImage.h:45
@ kPng
Definition: TImage.h:40
@ kFits
Definition: TImage.h:51
@ kJpeg
Definition: TImage.h:41
@ kXcf
Definition: TImage.h:42
@ kPnm
Definition: TImage.h:44
@ kIco
Definition: TImage.h:46
@ kXml
Definition: TImage.h:53
@ kXpm
Definition: TImage.h:37
@ kPpm
Definition: TImage.h:43
@ kTga
Definition: TImage.h:52
@ kAnimGif
Definition: TImage.h:55
@ kZCompressedXpm
Definition: TImage.h:38
@ kUnknown
Definition: TImage.h:54
@ kXbm
Definition: TImage.h:50
@ kCur
Definition: TImage.h:47
@ kTiff
Definition: TImage.h:49
@ kGZCompressedXpm
Definition: TImage.h:39
@ kGif
Definition: TImage.h:48
virtual UInt_t * GetArgbArray()
Definition: TImage.h:237
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)
Definition: TImage.h:200
virtual void DrawDashLine(UInt_t, UInt_t, UInt_t, UInt_t, UInt_t, const char *, const char *="#000000", UInt_t=1)
Definition: TImage.h:186
virtual void DrawPolyLine(UInt_t, TPoint *, const char *="#000000", UInt_t=1, TImage::ECoordMode=kCoordModeOrigin)
Definition: TImage.h:194
virtual void Slice(UInt_t, UInt_t, UInt_t, UInt_t, UInt_t, UInt_t)
Definition: TImage.h:144
virtual void FillPolygon(UInt_t, TPoint *, TImage *)
Definition: TImage.h:206
TImage(const TImage &img)
Definition: TImage.h:103
virtual UInt_t GetWidth() const
Definition: TImage.h:228
virtual Double_t * Vectorize(UInt_t=256, UInt_t=4, Int_t=0)
Definition: TImage.h:161
virtual void CopyArea(TImage *, Int_t, Int_t, UInt_t, UInt_t, Int_t=0, Int_t=0, Int_t=3, EColorChan=kAllChan)
Definition: TImage.h:215
virtual Bool_t IsGray() const
Definition: TImage.h:135
virtual void ReadImage(const char *, EImageFileTypes=TImage::kUnknown)
Definition: TImage.h:114
TImage(const char *file)
Definition: TImage.h:99
friend TImage operator+(const TImage &i1, const TImage &s2)
Definition: TImage.cxx:192
virtual void DrawFillArea(UInt_t, TPoint *, TImage *)
Definition: TImage.h:210
virtual ~TImage()
Definition: TImage.h:108
ETileType
Definition: TImage.h:78
@ kStretchY
Definition: TImage.h:81
@ kTile
Definition: TImage.h:80
@ kStretchX
Definition: TImage.h:82
@ kStretch
Definition: TImage.h:79
virtual void PutPixel(Int_t, Int_t, const char *="#000000")
Definition: TImage.h:196
virtual void DrawText(TText *, Int_t=0, Int_t=0)
Definition: TImage.h:203
virtual void DrawCellArray(Int_t, Int_t, Int_t, Int_t, Int_t, Int_t, UInt_t *)
Definition: TImage.h:217
virtual void DrawBox(Int_t, Int_t, Int_t, Int_t, const char *="#000000", UInt_t=1, Int_t=0)
Definition: TImage.h:188
virtual void SetImage(const Double_t *, UInt_t, UInt_t, TImagePalette *=0)
Definition: TImage.h:116
static TImage * Create()
Create an image.
Definition: TImage.cxx:36
virtual void Gradient(UInt_t=0, const char *="#FFFFFF #000000", const char *=0, Int_t=0, Int_t=0, UInt_t=0, UInt_t=0)
Definition: TImage.h:168
virtual void Tile(UInt_t, UInt_t)
Definition: TImage.h:148
virtual Bool_t SetImageBuffer(char **, EImageFileTypes=TImage::kPng)
Definition: TImage.h:242
TImage & operator=(const TImage &img)
Definition: TImage.h:104
virtual void DrawLine(UInt_t, UInt_t, UInt_t, UInt_t, const char *="#000000", UInt_t=1)
Definition: TImage.h:184
virtual void FromWindow(Drawable_t, Int_t=0, Int_t=0, UInt_t=0, UInt_t=0)
Definition: TImage.h:244
virtual void PolyPoint(UInt_t, TPoint *, const char *="#000000", TImage::ECoordMode=kCoordModeOrigin)
Definition: TImage.h:197
virtual void SetImage(const TVectorD &, UInt_t, TImagePalette *=0)
Definition: TImage.h:118
virtual void DrawSegments(UInt_t, Segment_t *, const char *="#000000", UInt_t=1)
Definition: TImage.h:199
virtual void Mirror(Bool_t=kTRUE)
Definition: TImage.h:138
virtual void WriteImage(const char *, EImageFileTypes=TImage::kUnknown)
Definition: TImage.h:115
virtual void DrawEllips(Int_t, Int_t, Int_t, Int_t, Int_t, const char *="#000000", Int_t=1)
Definition: TImage.h:222
virtual UInt_t * GetRgbaArray()
Definition: TImage.h:238
virtual Double_t * GetVecArray()
Definition: TImage.h:239
virtual void Gray(Bool_t=kTRUE)
Definition: TImage.h:134
virtual Bool_t IsValid() const
Definition: TImage.h:230
virtual void SetImage(const TArrayD &, UInt_t, TImagePalette *=0)
Definition: TImage.h:117
TImage & operator/=(const TImage &i)
Definition: TImage.h:256
virtual void Append(const TImage *, const char *="+", const char *="#00000000")
Definition: TImage.h:175
virtual void Scale(UInt_t, UInt_t)
Definition: TImage.h:141
virtual void Bevel(Int_t=0, Int_t=0, UInt_t=0, UInt_t=0, const char *="#ffdddddd", const char *="#ff555555", UShort_t=1, Bool_t=kFALSE)
Definition: TImage.h:178
virtual void DrawRectangle(UInt_t, UInt_t, UInt_t, UInt_t, const char *="#000000", UInt_t=1)
Definition: TImage.h:190
virtual void DrawEllips2(Int_t, Int_t, Int_t, Int_t, Int_t, const char *="#000000", Int_t=1)
Definition: TImage.h:223
static EImageFileTypes GetImageFileTypeFromFilename(const char *opt)
Return the image type for the extension specified in filename.
Definition: TImage.cxx:60
virtual void SetImage(Pixmap_t, Pixmap_t=0)
Definition: TImage.h:119
virtual TArrayD * GetArray(UInt_t=0, UInt_t=0, TImagePalette *=gWebImagePalette)
Definition: TImage.h:234
virtual void DrawCircle(Int_t, Int_t, Int_t, const char *="#000000", Int_t=1)
Definition: TImage.h:221
virtual void Merge(const TImage *, const char *="alphablend", Int_t=0, Int_t=0)
Definition: TImage.h:172
virtual void UnZoom()
Definition: TImage.h:125
virtual Pixmap_t GetPixmap()
Definition: TImage.h:235
virtual void Flip(Int_t=180)
Definition: TImage.h:131
TImage(UInt_t, UInt_t)
Definition: TImage.h:106
virtual TImage * GetScaledImage() const
Definition: TImage.h:231
virtual void DrawFillArea(UInt_t, TPoint *, const char *="#000000", const char *=0, UInt_t=16, UInt_t=16)
Definition: TImage.h:208
TImage()
Definition: TImage.h:100
virtual void FromGLBuffer(UChar_t *, UInt_t, UInt_t)
Definition: TImage.h:245
virtual void ls(Option_t *option="") const
List this image with its attributes.
Definition: TImage.cxx:110
virtual UInt_t * GetScanline(UInt_t)
Definition: TImage.h:240
virtual void FillRectangle(const char *=0, Int_t=0, Int_t=0, UInt_t=0, UInt_t=0)
Definition: TImage.h:192
virtual void CropSpans(UInt_t, TPoint *, UInt_t *)
Definition: TImage.h:214
virtual void DrawStraightEllips(Int_t, Int_t, Int_t, Int_t, const char *="#000000", Int_t=1)
Definition: TImage.h:220
virtual void HSV(UInt_t=0, UInt_t=360, Int_t=0, Int_t=0, Int_t=0, Int_t=0, Int_t=0, UInt_t=0, UInt_t=0)
Definition: TImage.h:164
virtual void Zoom(UInt_t, UInt_t, UInt_t, UInt_t)
Definition: TImage.h:128
ECharType
Definition: TImage.h:72
@ kUTF8
Definition: TImage.h:73
@ kChar
Definition: TImage.h:74
@ kUnicode
Definition: TImage.h:75
virtual void FillSpans(UInt_t, TPoint *, UInt_t *, const char *="#000000", const char *=0, UInt_t=16, UInt_t=16)
Definition: TImage.h:211
virtual void DrawCubeBezier(Int_t, Int_t, Int_t, Int_t, Int_t, Int_t, const char *="#000000", UInt_t=1)
Definition: TImage.h:219
virtual void PaintImage(Drawable_t, Int_t, Int_t, Int_t=0, Int_t=0, UInt_t=0, UInt_t=0, Option_t *="")
Definition: TImage.h:243
friend TImage operator/(const TImage &i1, const TImage &s2)
Definition: TImage.cxx:193
TImage & operator+=(const TImage &i)
Definition: TImage.h:255
virtual void GetImageBuffer(char **, int *, EImageFileTypes=TImage::kPng)
Definition: TImage.h:241
EText3DType
Definition: TImage.h:58
@ kPlain
Definition: TImage.h:59
@ kSunkenThick
Definition: TImage.h:65
@ kOutlineFull
Definition: TImage.h:68
@ kShadeAbove
Definition: TImage.h:62
@ kEmbossedThick
Definition: TImage.h:64
@ kOutlineBelow
Definition: TImage.h:67
@ kOutlineAbove
Definition: TImage.h:66
@ kSunken
Definition: TImage.h:61
@ kEmbossed
Definition: TImage.h:60
@ k3DTypes
Definition: TImage.h:69
@ kShadeBelow
Definition: TImage.h:63
virtual TObject * Clone(const char *) const
Make a clone of an object using the Streamer facility.
Definition: TImage.h:111
virtual TArrayL * GetPixels(Int_t=0, Int_t=0, UInt_t=0, UInt_t=0)
Definition: TImage.h:233
virtual void CropPolygon(UInt_t, TPoint *)
Definition: TImage.h:207
virtual Bool_t IsEditable() const
Definition: TImage.h:226
virtual void BeginPaint(Bool_t=kTRUE)
Definition: TImage.h:182
virtual Pixmap_t GetMask()
Definition: TImage.h:236
virtual UInt_t GetHeight() const
Definition: TImage.h:229
The TNamed class is the base class for all named ROOT classes.
Definition: TNamed.h:29
TNamed & operator=(const TNamed &rhs)
TNamed assignment operator.
Definition: TNamed.cxx:51
Mother of all ROOT objects.
Definition: TObject.h:37
Definition: TPoint.h:31
Base class for several text objects.
Definition: TText.h:23
TVirtualPad is an abstract base class for the Pad and Canvas classes.
Definition: TVirtualPad.h:51
Definition: file.py:1