Logo ROOT  
Reference Guide
TSVG Class Reference

Interface to SVG.

SVG (Scalable Vector Graphics) is a language for describing two-dimensional graphics in XML. SVG allows high quality vector graphics in HTML pages.

To print a ROOT canvas "c1" into an SVG file simply do:

c1->Print("c1.svg");
return c1
Definition: legend1.C:41

The result is the ASCII file c1.svg.

It can be open directly using a web browser or included in a html document the following way:

<embed width="95%" height="500" src="c1.svg">
include TDocParser_001 C image html pict1_TDocParser_001 png width
Definition: TDocParser.cxx:121

It is best viewed with Internet Explorer and you need the Adobe SVG Viewer

To zoom using the Adobe SVG Viewer, position the mouse over the area you want to zoom and click the right button.

To define the zoom area, use Control+drag to mark the boundaries of the zoom area.

To pan, use Alt+drag. By clicking with the right mouse button on the SVG graphics you will get a pop-up menu giving other ways to interact with the image.

SVG files can be used directly in compressed mode to minimize the time transfer over the network. Compressed SVG files should be created using gzip on a normal ASCII SVG file and should then be renamed using the file extension .svgz.

Definition at line 20 of file TSVG.h.

Public Member Functions

 TSVG ()
 Default SVG constructor. More...
 
 TSVG (const char *filename, Int_t type=-113)
 Initialize the SVG interface. More...
 
virtual ~TSVG ()
 Default SVG destructor. More...
 
void CellArrayBegin (Int_t W, Int_t H, Double_t x1, Double_t x2, Double_t y1, Double_t y2)
 Begin the Cell Array painting. More...
 
void CellArrayEnd ()
 End the Cell Array painting. More...
 
void CellArrayFill (Int_t r, Int_t g, Int_t b)
 Paint the Cell Array. More...
 
void Close (Option_t *opt="")
 Close a SVG file. More...
 
Double_t CMtoSVG (Double_t u)
 
void DrawBox (Double_t x1, Double_t y1, Double_t x2, Double_t y2)
 Draw a Box. More...
 
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. More...
 
void DrawPolyLine (Int_t n, TPoints *xy)
 Draw a PolyLine. More...
 
void DrawPolyLineNDC (Int_t n, TPoints *uv)
 Draw a PolyLine in NDC space. More...
 
void DrawPolyMarker (Int_t n, Double_t *x, Double_t *y)
 Paint PolyMarker. More...
 
void DrawPolyMarker (Int_t n, Float_t *x, Float_t *y)
 Paint PolyMarker. More...
 
void DrawPS (Int_t n, Double_t *xw, Double_t *yw)
 This function defines a path with xw and yw and draw it according the value of nn: More...
 
void DrawPS (Int_t n, Float_t *xw, Float_t *yw)
 Not needed in SVG case. More...
 
void Initialize ()
 Initialize the SVG file. More...
 
void MovePS (Double_t x, Double_t y)
 Move to a new position (ix, iy). More...
 
void NewPage ()
 Start the SVG page. More...
 
void Off ()
 Deactivate an already open SVG file. More...
 
void On ()
 Activate an already open SVG file. More...
 
void Open (const char *filename, Int_t type=-111)
 Open a SVG file. More...
 
void Range (Float_t xrange, Float_t yrange)
 Set the range for the paper in centimetres. More...
 
void SetColor (Float_t r, Float_t g, Float_t b)
 Set color with its R G B components. More...
 
void SetColor (Int_t color=1)
 Set RGB (without alpha channel) color with its color index. More...
 
void SetColorAlpha (Int_t color=1)
 Set RGBa color with its color index. More...
 
void SetFillColor (Color_t cindex=1)
 Set color index for fill areas. More...
 
void SetLineCap (Int_t linecap=0)
 Set the value of the global parameter TSVG::fgLineCap. More...
 
void SetLineColor (Color_t cindex=1)
 Set color index for lines. More...
 
void SetLineJoin (Int_t linejoin=0)
 Set the value of the global parameter TSVG::fgLineJoin. More...
 
void SetLineScale (Float_t=3)
 
void SetLineStyle (Style_t linestyle=1)
 Change the line style. More...
 
void SetLineWidth (Width_t linewidth=1)
 Set the lines width. More...
 
void SetMarkerColor (Color_t cindex=1)
 Set color index for markers. More...
 
void SetTextColor (Color_t cindex=1)
 Set color index for text. More...
 
void Text (Double_t x, Double_t y, const char *string)
 Draw text. More...
 
void Text (Double_t, Double_t, const wchar_t *)
 
void TextNDC (Double_t u, Double_t v, const char *string)
 Write a string of characters in NDC. More...
 
void TextNDC (Double_t, Double_t, const wchar_t *)
 
Double_t UtoSVG (Double_t u)
 Convert U from NDC coordinate to SVG. More...
 
Double_t VtoSVG (Double_t v)
 Convert V from NDC coordinate to SVG. More...
 
Double_t XtoSVG (Double_t x)
 Convert X from world coordinate to SVG. More...
 
Double_t YtoSVG (Double_t y)
 Convert Y from world coordinate to SVG. More...
 
- Public Member Functions inherited from TVirtualPS
 TVirtualPS ()
 VirtualPS default constructor. More...
 
 TVirtualPS (const char *filename, Int_t type=-111)
 VirtualPS constructor. More...
 
virtual ~TVirtualPS ()
 VirtualPS destructor. More...
 
virtual void CellArrayBegin (Int_t W, Int_t H, Double_t x1, Double_t x2, Double_t y1, Double_t y2)=0
 
virtual void CellArrayEnd ()=0
 
virtual void CellArrayFill (Int_t r, Int_t g, Int_t b)=0
 
virtual void Close (Option_t *opt="")=0
 
virtual void DrawBox (Double_t x1, Double_t y1, Double_t x2, Double_t y2)=0
 
virtual 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)=0
 
virtual void DrawPolyMarker (Int_t n, Double_t *x, Double_t *y)=0
 
virtual void DrawPolyMarker (Int_t n, Float_t *x, Float_t *y)=0
 
virtual void DrawPS (Int_t n, Double_t *xw, Double_t *yw)=0
 
virtual void DrawPS (Int_t n, Float_t *xw, Float_t *yw)=0
 
virtual voidGetStream () const
 
virtual Int_t GetType () const
 
virtual void NewPage ()=0
 
virtual void Open (const char *filename, Int_t type=-111)=0
 
virtual void PrintFast (Int_t nch, const char *string="")
 Fast version of Print. More...
 
virtual void PrintRaw (Int_t len, const char *str)
 Print a raw. More...
 
virtual void PrintStr (const char *string="")
 Output the string str in the output buffer. More...
 
virtual void SetColor (Float_t r, Float_t g, Float_t b)=0
 
virtual void SetStream (std::ofstream *os)
 
virtual void SetType (Int_t=-111)
 
virtual void Text (Double_t x, Double_t y, const char *string)=0
 
virtual void Text (Double_t x, Double_t y, const wchar_t *string)=0
 
virtual void WriteInteger (Int_t i, Bool_t space=kTRUE)
 Write one Integer to the file. More...
 
virtual void WriteReal (Float_t r, Bool_t space=kTRUE)
 Write a Real number to the file. More...
 
- Public Member Functions inherited from TNamed
 TNamed ()
 
 TNamed (const char *name, const char *title)
 
 TNamed (const TNamed &named)
 TNamed copy ctor. More...
 
 TNamed (const TString &name, const TString &title)
 
virtual ~TNamed ()
 TNamed destructor. More...
 
virtual void Clear (Option_t *option="")
 Set name and title to empty strings (""). More...
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility. More...
 
virtual Int_t Compare (const TObject *obj) const
 Compare two TNamed objects. More...
 
virtual void Copy (TObject &named) const
 Copy this to obj. More...
 
virtual void FillBuffer (char *&buffer)
 Encode TNamed into output buffer. More...
 
virtual const char * GetName () const
 Returns name of object. More...
 
virtual const char * GetTitle () const
 Returns title of object. More...
 
virtual ULong_t Hash () const
 Return hash value for this object. More...
 
virtual Bool_t IsSortable () const
 
virtual void ls (Option_t *option="") const
 List TNamed name and title. More...
 
TNamedoperator= (const TNamed &rhs)
 TNamed assignment operator. More...
 
virtual void Print (Option_t *option="") const
 Print TNamed name and title. More...
 
virtual void SetName (const char *name)
 Set the name of the TNamed. More...
 
virtual void SetNameTitle (const char *name, const char *title)
 Set all the TNamed parameters (name and title). More...
 
virtual void SetTitle (const char *title="")
 Set the title of the TNamed. More...
 
virtual Int_t Sizeof () const
 Return size of the TNamed part of the TObject. More...
 
- Public Member Functions inherited from TObject
 TObject ()
 TObject constructor. More...
 
 TObject (const TObject &object)
 TObject copy ctor. More...
 
virtual ~TObject ()
 TObject destructor. More...
 
void AbstractMethod (const char *method) const
 Use this method to implement an "abstract" method that you don't want to leave purely abstract. More...
 
virtual void AppendPad (Option_t *option="")
 Append graphics object to current pad. More...
 
virtual void Browse (TBrowser *b)
 Browse object. May be overridden for another default action. More...
 
ULong_t CheckedHash ()
 Check and record whether this class has a consistent Hash/RecursiveRemove setup (*) and then return the regular Hash value for this object. More...
 
virtual const char * ClassName () const
 Returns name of class to which the object belongs. More...
 
virtual void Clear (Option_t *="")
 
virtual TObjectClone (const char *newname="") const
 Make a clone of an object using the Streamer facility. More...
 
virtual Int_t Compare (const TObject *obj) const
 Compare abstract method. More...
 
virtual void Copy (TObject &object) const
 Copy this to obj. More...
 
virtual void Delete (Option_t *option="")
 Delete this object. More...
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 Computes distance from point (px,py) to the object. More...
 
virtual void Draw (Option_t *option="")
 Default Draw method for all objects. More...
 
virtual void DrawClass () const
 Draw class inheritance tree of the class to which this object belongs. More...
 
virtual TObjectDrawClone (Option_t *option="") const
 Draw a clone of this object in the current selected pad for instance with: gROOT->SetSelectedPad(gPad). More...
 
virtual void Dump () const
 Dump contents of object on stdout. More...
 
virtual void Error (const char *method, const char *msgfmt,...) const
 Issue error message. More...
 
virtual void Execute (const char *method, const char *params, Int_t *error=0)
 Execute method on this object with the given parameter string, e.g. More...
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=0)
 Execute method on this object with parameters stored in the TObjArray. More...
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 Execute action corresponding to an event at (px,py). More...
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 Issue fatal error message. More...
 
virtual TObjectFindObject (const char *name) const
 Must be redefined in derived classes. More...
 
virtual TObjectFindObject (const TObject *obj) const
 Must be redefined in derived classes. More...
 
virtual Option_tGetDrawOption () const
 Get option used by the graphics system to draw this object. More...
 
virtual const char * GetIconName () const
 Returns mime type name of object. More...
 
virtual const char * GetName () const
 Returns name of object. More...
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 Returns string containing info about the object at position (px,py). More...
 
virtual Option_tGetOption () const
 
virtual const char * GetTitle () const
 Returns title of object. More...
 
virtual UInt_t GetUniqueID () const
 Return the unique object id. More...
 
virtual Bool_t HandleTimer (TTimer *timer)
 Execute action in response of a timer timing out. More...
 
virtual ULong_t Hash () const
 Return hash value for this object. More...
 
Bool_t HasInconsistentHash () const
 Return true is the type of this object is known to have an inconsistent setup for Hash and RecursiveRemove (i.e. More...
 
virtual void Info (const char *method, const char *msgfmt,...) const
 Issue info message. More...
 
virtual Bool_t InheritsFrom (const char *classname) const
 Returns kTRUE if object inherits from class "classname". More...
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 Returns kTRUE if object inherits from TClass cl. More...
 
virtual void Inspect () const
 Dump contents of this object in a graphics canvas. More...
 
void InvertBit (UInt_t f)
 
virtual Bool_t IsEqual (const TObject *obj) const
 Default equal comparison (objects are equal if they have the same address in memory). More...
 
virtual Bool_t IsFolder () const
 Returns kTRUE in case object contains browsable objects (like containers or lists of other objects). More...
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
virtual Bool_t IsSortable () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
virtual void ls (Option_t *option="") const
 The ls function lists the contents of a class on stdout. More...
 
void MayNotUse (const char *method) const
 Use this method to signal that a method (defined in a base class) may not be called in a derived class (in principle against good design since a child class should not provide less functionality than its parent, however, sometimes it is necessary). More...
 
virtual Bool_t Notify ()
 This method must be overridden to handle object notification. More...
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 Use this method to declare a method obsolete. More...
 
void operator delete (void *ptr)
 Operator delete. More...
 
void operator delete[] (void *ptr)
 Operator delete []. More...
 
voidoperator new (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator new[] (size_t sz)
 
voidoperator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 TObject assignment operator. More...
 
virtual void Paint (Option_t *option="")
 This method must be overridden if a class wants to paint itself. More...
 
virtual void Pop ()
 Pop on object drawn in a pad to the top of the display list. More...
 
virtual void Print (Option_t *option="") const
 This method must be overridden when a class wants to print itself. More...
 
virtual Int_t Read (const char *name)
 Read contents of object with specified name from the current directory. More...
 
virtual void RecursiveRemove (TObject *obj)
 Recursively remove this object from a list. More...
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 Save this object in the file specified by filename. More...
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 Save a primitive as a C++ statement(s) on output stream "out". More...
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 Set or unset the user status bits as specified in f. More...
 
virtual void SetDrawOption (Option_t *option="")
 Set drawing option for object. More...
 
virtual void SetUniqueID (UInt_t uid)
 Set the unique object id. More...
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 Issue system error message. More...
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 Set current style settings in this object This function is called when either TCanvas::UseCurrentStyle or TROOT::ForceStyle have been invoked. More...
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 Issue warning message. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0)
 Write this object to the current directory. More...
 
virtual Int_t Write (const char *name=0, Int_t option=0, Int_t bufsize=0) const
 Write this object to the current directory. More...
 
- Public Member Functions inherited from TAttLine
 TAttLine ()
 AttLine default constructor. More...
 
 TAttLine (Color_t lcolor, Style_t lstyle, Width_t lwidth)
 AttLine normal constructor. More...
 
virtual ~TAttLine ()
 AttLine destructor. More...
 
void Copy (TAttLine &attline) const
 Copy this line attributes to a new TAttLine. More...
 
Int_t DistancetoLine (Int_t px, Int_t py, Double_t xp1, Double_t yp1, Double_t xp2, Double_t yp2)
 Compute distance from point px,py to a line. More...
 
virtual Color_t GetLineColor () const
 Return the line color. More...
 
virtual Style_t GetLineStyle () const
 Return the line style. More...
 
virtual Width_t GetLineWidth () const
 Return the line width. More...
 
virtual void Modify ()
 Change current line attributes if necessary. More...
 
virtual void ResetAttLine (Option_t *option="")
 Reset this line attributes to default values. More...
 
virtual void SaveLineAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1, Int_t widdef=1)
 Save line attributes as C++ statement(s) on output stream out. More...
 
virtual void SetLineAttributes ()
 Invoke the DialogCanvas Line attributes. More...
 
virtual void SetLineColor (Color_t lcolor)
 Set the line color. More...
 
virtual void SetLineColorAlpha (Color_t lcolor, Float_t lalpha)
 Set a transparent line color. More...
 
virtual void SetLineStyle (Style_t lstyle)
 Set the line style. More...
 
virtual void SetLineWidth (Width_t lwidth)
 Set the line width. More...
 
- Public Member Functions inherited from TAttFill
 TAttFill ()
 AttFill default constructor. More...
 
 TAttFill (Color_t fcolor, Style_t fstyle)
 AttFill normal constructor. More...
 
virtual ~TAttFill ()
 AttFill destructor. More...
 
void Copy (TAttFill &attfill) const
 Copy this fill attributes to a new TAttFill. More...
 
virtual Color_t GetFillColor () const
 Return the fill area color. More...
 
virtual Style_t GetFillStyle () const
 Return the fill area style. More...
 
virtual Bool_t IsTransparent () const
 
virtual void Modify ()
 Change current fill area attributes if necessary. More...
 
virtual void ResetAttFill (Option_t *option="")
 Reset this fill attributes to default values. More...
 
virtual void SaveFillAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1001)
 Save fill attributes as C++ statement(s) on output stream out. More...
 
virtual void SetFillAttributes ()
 Invoke the DialogCanvas Fill attributes. More...
 
virtual void SetFillColor (Color_t fcolor)
 Set the fill area color. More...
 
virtual void SetFillColorAlpha (Color_t fcolor, Float_t falpha)
 Set a transparent fill color. More...
 
virtual void SetFillStyle (Style_t fstyle)
 Set the fill area style. More...
 
- Public Member Functions inherited from TAttMarker
 TAttMarker ()
 TAttMarker default constructor. More...
 
 TAttMarker (Color_t color, Style_t style, Size_t msize)
 TAttMarker normal constructor. More...
 
virtual ~TAttMarker ()
 TAttMarker destructor. More...
 
void Copy (TAttMarker &attmarker) const
 Copy this marker attributes to a new TAttMarker. More...
 
virtual Color_t GetMarkerColor () const
 Return the marker color. More...
 
virtual Size_t GetMarkerSize () const
 Return the marker size. More...
 
virtual Style_t GetMarkerStyle () const
 Return the marker style. More...
 
virtual void Modify ()
 Change current marker attributes if necessary. More...
 
virtual void ResetAttMarker (Option_t *toption="")
 Reset this marker attributes to the default values. More...
 
virtual void SaveMarkerAttributes (std::ostream &out, const char *name, Int_t coldef=1, Int_t stydef=1, Int_t sizdef=1)
 Save line attributes as C++ statement(s) on output stream out. More...
 
virtual void SetMarkerAttributes ()
 Invoke the DialogCanvas Marker attributes. More...
 
virtual void SetMarkerColor (Color_t mcolor=1)
 Set the marker color. More...
 
virtual void SetMarkerColorAlpha (Color_t mcolor, Float_t malpha)
 Set a transparent marker color. More...
 
virtual void SetMarkerSize (Size_t msize=1)
 Set the marker size. More...
 
virtual void SetMarkerStyle (Style_t mstyle=1)
 Set the marker style. More...
 
- Public Member Functions inherited from TAttText
 TAttText ()
 AttText default constructor. More...
 
 TAttText (Int_t align, Float_t angle, Color_t color, Style_t font, Float_t tsize)
 AttText normal constructor. More...
 
virtual ~TAttText ()
 AttText destructor. More...
 
void Copy (TAttText &atttext) const
 Copy this text attributes to a new TAttText. More...
 
virtual Short_t GetTextAlign () const
 Return the text alignment. More...
 
virtual Float_t GetTextAngle () const
 Return the text angle. More...
 
virtual Color_t GetTextColor () const
 Return the text color. More...
 
virtual Font_t GetTextFont () const
 Return the text font. More...
 
virtual Float_t GetTextSize () const
 Return the text size. More...
 
virtual void Modify ()
 Change current text attributes if necessary. More...
 
virtual void ResetAttText (Option_t *toption="")
 Reset this text attributes to default values. More...
 
virtual void SaveTextAttributes (std::ostream &out, const char *name, Int_t alidef=12, Float_t angdef=0, Int_t coldef=1, Int_t fondef=61, Float_t sizdef=1)
 Save text attributes as C++ statement(s) on output stream out. More...
 
virtual void SetTextAlign (Short_t align=11)
 Set the text alignment. More...
 
virtual void SetTextAngle (Float_t tangle=0)
 Set the text angle. More...
 
virtual void SetTextAttributes ()
 Invoke the DialogCanvas Text attributes. More...
 
virtual void SetTextColor (Color_t tcolor=1)
 Set the text color. More...
 
virtual void SetTextColorAlpha (Color_t tcolor, Float_t talpha)
 Set a transparent marker color. More...
 
virtual void SetTextFont (Font_t tfont=62)
 Set the text font. More...
 
virtual void SetTextSize (Float_t tsize=1)
 Set the text size. More...
 
virtual void SetTextSizePixels (Int_t npixels)
 Set the text size in pixels. More...
 

Protected Attributes

Bool_t fBoundingBox
 True when the SVG header is printed. More...
 
Bool_t fRange
 True when a range has been defined. More...
 
Int_t fType
 Workstation type used to know if the SVG is open. More...
 
Float_t fXsize
 Page size along X. More...
 
Float_t fYsize
 Page size along Y. More...
 
Double_t fYsizeSVG
 Page's Y size in SVG units. More...
 
- Protected Attributes inherited from TVirtualPS
char * fBuffer
 
const char * fImplicitCREsc
 
Int_t fLenBuffer
 
Int_t fNByte
 
Bool_t fPrinted
 
Int_t fSizBuffer
 
std::ofstream * fStream
 
- Protected Attributes inherited from TNamed
TString fName
 
TString fTitle
 
- Protected Attributes inherited from TAttLine
Color_t fLineColor
 Line color. More...
 
Style_t fLineStyle
 Line style. More...
 
Width_t fLineWidth
 Line width. More...
 
- Protected Attributes inherited from TAttFill
Color_t fFillColor
 Fill area color. More...
 
Style_t fFillStyle
 Fill area style. More...
 
- Protected Attributes inherited from TAttMarker
Color_t fMarkerColor
 Marker color. More...
 
Size_t fMarkerSize
 Marker size. More...
 
Style_t fMarkerStyle
 Marker style. More...
 
- Protected Attributes inherited from TAttText
Short_t fTextAlign
 Text alignment. More...
 
Float_t fTextAngle
 Text angle. More...
 
Color_t fTextColor
 Text color. More...
 
Font_t fTextFont
 Text font. More...
 
Float_t fTextSize
 Text size. More...
 

Static Protected Attributes

static Int_t fgLineCap = 0
 Appearance of line caps. More...
 
static Int_t fgLineJoin = 0
 Appearance of joining lines. More...
 

Additional Inherited Members

- Public Types inherited from TObject
enum  {
  kIsOnHeap = 0x01000000 , kNotDeleted = 0x02000000 , kZombie = 0x04000000 , kInconsistent = 0x08000000 ,
  kBitMask = 0x00ffffff
}
 
enum  { kSingleKey = BIT(0) , kOverwrite = BIT(1) , kWriteDelete = BIT(2) }
 
enum  EDeprecatedStatusBits { kObjInCanvas = BIT(3) }
 
enum  EStatusBits {
  kCanDelete = BIT(0) , kMustCleanup = BIT(3) , kIsReferenced = BIT(4) , kHasUUID = BIT(5) ,
  kCannotPick = BIT(6) , kNoContextMenu = BIT(8) , kInvalidObject = BIT(13)
}
 
- Static Public Member Functions inherited from TObject
static Long_t GetDtorOnly ()
 Return destructor only flag. More...
 
static Bool_t GetObjectStat ()
 Get status of object stat flag. More...
 
static void SetDtorOnly (void *obj)
 Set destructor only flag. More...
 
static void SetObjectStat (Bool_t stat)
 Turn on/off tracking of objects in the TObjectTable. More...
 
- Static Public Member Functions inherited from TAttMarker
static Width_t GetMarkerLineWidth (Style_t style)
 Internal helper function that returns the line width of the given marker style (0 = filled marker) More...
 
static Style_t GetMarkerStyleBase (Style_t style)
 Internal helper function that returns the corresponding marker style with line width 1 for the given style. More...
 
- Protected Types inherited from TObject
enum  { kOnlyPrepStep = BIT(3) }
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 Interface to ErrorHandler (protected). More...
 
void MakeZombie ()
 

#include <TSVG.h>

Inheritance diagram for TSVG:
[legend]

Constructor & Destructor Documentation

◆ TSVG() [1/2]

TSVG::TSVG ( )

Default SVG constructor.

Definition at line 81 of file TSVG.cxx.

◆ TSVG() [2/2]

TSVG::TSVG ( const char *  fname,
Int_t  wtype = -113 
)

Initialize the SVG interface.

  • fname : SVG file name
  • wtype : SVG workstation type. Not used in the SVG driver. But as TSVG inherits from TVirtualPS it should be kept. Anyway it is not necessary to specify this parameter at creation time because it has a default value (which is ignore in the SVG case).

Definition at line 103 of file TSVG.cxx.

◆ ~TSVG()

TSVG::~TSVG ( )
virtual

Default SVG destructor.

Definition at line 163 of file TSVG.cxx.

Member Function Documentation

◆ CellArrayBegin()

void TSVG::CellArrayBegin ( Int_t  W,
Int_t  H,
Double_t  x1,
Double_t  x2,
Double_t  y1,
Double_t  y2 
)
virtual

Begin the Cell Array painting.

Implements TVirtualPS.

Definition at line 2082 of file TSVG.cxx.

◆ CellArrayEnd()

void TSVG::CellArrayEnd ( )
virtual

End the Cell Array painting.

Implements TVirtualPS.

Definition at line 2099 of file TSVG.cxx.

◆ CellArrayFill()

void TSVG::CellArrayFill ( Int_t  r,
Int_t  g,
Int_t  b 
)
virtual

Paint the Cell Array.

Implements TVirtualPS.

Definition at line 2091 of file TSVG.cxx.

◆ Close()

void TSVG::Close ( Option_t opt = "")
virtual

Close a SVG file.

Implements TVirtualPS.

Definition at line 171 of file TSVG.cxx.

◆ CMtoSVG()

Double_t TSVG::CMtoSVG ( Double_t  u)
inline

Definition at line 42 of file TSVG.h.

◆ DrawBox()

void TSVG::DrawBox ( Double_t  x1,
Double_t  y1,
Double_t  x2,
Double_t  y2 
)
virtual

Draw a Box.

Implements TVirtualPS.

Definition at line 211 of file TSVG.cxx.

◆ DrawFrame()

void TSVG::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 
)
virtual

Draw a Frame around a box.

  • mode = -1 the box looks as it is behind the screen
  • mode = 1 the box looks as it is in front of the screen
  • border is the border size in already pre-computed SVG units dark is the color for the dark part of the frame light is the color for the light part of the frame

Implements TVirtualPS.

Definition at line 291 of file TSVG.cxx.

◆ DrawPolyLine()

void TSVG::DrawPolyLine ( Int_t  nn,
TPoints xy 
)

Draw a PolyLine.

Draw a polyline through the points xy.

  • If NN=1 moves only to point x,y.
  • If NN=0 the x,y are written in the SVG file according to the current transformation.
  • If NN>0 the line is clipped as a line.
  • If NN<0 the line is clipped as a fill area.

Definition at line 447 of file TSVG.cxx.

◆ DrawPolyLineNDC()

void TSVG::DrawPolyLineNDC ( Int_t  nn,
TPoints xy 
)

Draw a PolyLine in NDC space.

Draw a polyline through the points xy. –If NN=1 moves only to point x,y. –If NN=0 the x,y are written in the SVG file according to the current transformation. –If NN>0 the line is clipped as a line.

  • If NN<0 the line is clipped as a fill area.

Definition at line 518 of file TSVG.cxx.

◆ DrawPolyMarker() [1/2]

void TSVG::DrawPolyMarker ( Int_t  n,
Double_t x,
Double_t y 
)
virtual

Paint PolyMarker.

Implements TVirtualPS.

Definition at line 991 of file TSVG.cxx.

◆ DrawPolyMarker() [2/2]

void TSVG::DrawPolyMarker ( Int_t  n,
Float_t x,
Float_t y 
)
virtual

Paint PolyMarker.

Implements TVirtualPS.

Definition at line 582 of file TSVG.cxx.

◆ DrawPS() [1/2]

void TSVG::DrawPS ( Int_t  nn,
Double_t xw,
Double_t yw 
)
virtual

This function defines a path with xw and yw and draw it according the value of nn:

  • If nn>0 a line is drawn.
  • If nn<0 a closed polygon is drawn.

Implements TVirtualPS.

Definition at line 1402 of file TSVG.cxx.

◆ DrawPS() [2/2]

void TSVG::DrawPS ( Int_t  n,
Float_t xw,
Float_t yw 
)
virtual

Not needed in SVG case.

Implements TVirtualPS.

Definition at line 2107 of file TSVG.cxx.

◆ Initialize()

void TSVG::Initialize ( )

Initialize the SVG file.

The main task of the function is to output the SVG header file which consist in <title>, <desc> and <defs>. The HeaderPS provided by the user program is written in the <defs> part.

Definition at line 1508 of file TSVG.cxx.

◆ MovePS()

void TSVG::MovePS ( Double_t  ix,
Double_t  iy 
)

Move to a new position (ix, iy).

The move is done in relative coordinates which allows to have short numbers which decrease the size of the file. This function use the full power of the SVG's paths by using the horizontal and vertical move whenever it is possible.

Definition at line 1543 of file TSVG.cxx.

◆ NewPage()

void TSVG::NewPage ( )
virtual

Start the SVG page.

This function initialize the pad conversion coefficients and output the <svg> directive which is close later in the the function Close.

Implements TVirtualPS.

Definition at line 1564 of file TSVG.cxx.

◆ Off()

void TSVG::Off ( )

Deactivate an already open SVG file.

Definition at line 203 of file TSVG.cxx.

◆ On()

void TSVG::On ( )

Activate an already open SVG file.

Definition at line 187 of file TSVG.cxx.

◆ Open()

void TSVG::Open ( const char *  filename,
Int_t  type = -111 
)
virtual

Open a SVG file.

Implements TVirtualPS.

Definition at line 113 of file TSVG.cxx.

◆ Range()

void TSVG::Range ( Float_t  xrange,
Float_t  yrange 
)

Set the range for the paper in centimetres.

Definition at line 1596 of file TSVG.cxx.

◆ SetColor() [1/2]

void TSVG::SetColor ( Float_t  r,
Float_t  g,
Float_t  b 
)
virtual

Set color with its R G B components.

  • r: % of red in [0,1] –g: % of green in [0,1]
  • b: % of blue in [0,1]

Implements TVirtualPS.

Definition at line 1777 of file TSVG.cxx.

◆ SetColor() [2/2]

void TSVG::SetColor ( Int_t  color = 1)

Set RGB (without alpha channel) color with its color index.

Definition at line 1759 of file TSVG.cxx.

◆ SetColorAlpha()

void TSVG::SetColorAlpha ( Int_t  color = 1)

Set RGBa color with its color index.

Definition at line 1743 of file TSVG.cxx.

◆ SetFillColor()

void TSVG::SetFillColor ( Color_t  cindex = 1)
virtual

Set color index for fill areas.

Reimplemented from TAttFill.

Definition at line 1649 of file TSVG.cxx.

◆ SetLineCap()

void TSVG::SetLineCap ( Int_t  linecap = 0)

Set the value of the global parameter TSVG::fgLineCap.

This parameter determines the appearance of line caps in a SVG output. It takes one argument which may be:

  • 0 (butt caps)
  • 1 (round caps)
  • 2 (projecting caps) The default value is 0 (butt caps).

To change the line cap behaviour just do:

gStyle->SetCapLinePS(2); // Set the PS line cap to projecting.
R__EXTERN TStyle * gStyle
Definition: TStyle.h:410
void SetCapLinePS(Int_t capline=0)
Set the line cap method used for PostScript, PDF and SVG output. See TPostScript::SetLineCap for deta...
Definition: TStyle.h:291

Definition at line 1704 of file TSVG.cxx.

◆ SetLineColor()

void TSVG::SetLineColor ( Color_t  cindex = 1)
virtual

Set color index for lines.

Reimplemented from TAttLine.

Definition at line 1658 of file TSVG.cxx.

◆ SetLineJoin()

void TSVG::SetLineJoin ( Int_t  linejoin = 0)

Set the value of the global parameter TSVG::fgLineJoin.

This parameter determines the appearance of joining lines in a SVG output. It takes one argument which may be:

  • 0 (miter join)
  • 1 (round join)
  • 2 (bevel join) The default value is 0 (miter join).

To change the line join behaviour just do:

gStyle->SetJoinLinePS(2); // Set the PS line join to bevel.
void SetJoinLinePS(Int_t joinline=0)
Set the line join method used for PostScript, PDF and SVG output. See TPostScript::SetLineJoin for de...
Definition: TStyle.h:290

Definition at line 1680 of file TSVG.cxx.

◆ SetLineScale()

void TSVG::SetLineScale ( Float_t  = 3)
inline

Definition at line 68 of file TSVG.h.

◆ SetLineStyle()

void TSVG::SetLineStyle ( Style_t  linestyle = 1)
virtual

Change the line style.

  • linestyle = 2 dashed
  • linestyle = 3 dotted
  • linestyle = 4 dash-dotted
  • linestyle = else solid (1 in is used most of the time)

Reimplemented from TAttLine.

Definition at line 1719 of file TSVG.cxx.

◆ SetLineWidth()

void TSVG::SetLineWidth ( Width_t  linewidth = 1)
virtual

Set the lines width.

Reimplemented from TAttLine.

Definition at line 1727 of file TSVG.cxx.

◆ SetMarkerColor()

void TSVG::SetMarkerColor ( Color_t  cindex = 1)
virtual

Set color index for markers.

Reimplemented from TAttMarker.

Definition at line 1735 of file TSVG.cxx.

◆ SetTextColor()

void TSVG::SetTextColor ( Color_t  cindex = 1)
virtual

Set color index for text.

Reimplemented from TAttText.

Definition at line 1795 of file TSVG.cxx.

◆ Text() [1/2]

void TSVG::Text ( Double_t  xx,
Double_t  yy,
const char *  chars 
)
virtual

Draw text.

  • xx: x position of the text
  • yy: y position of the text
  • chars: text to be drawn

Implements TVirtualPS.

Definition at line 1807 of file TSVG.cxx.

◆ Text() [2/2]

void TSVG::Text ( Double_t  ,
Double_t  ,
const wchar_t *   
)
inlinevirtual

Implements TVirtualPS.

Definition at line 72 of file TSVG.h.

◆ TextNDC() [1/2]

void TSVG::TextNDC ( Double_t  u,
Double_t  v,
const char *  string 
)

Write a string of characters in NDC.

Definition at line 2036 of file TSVG.cxx.

◆ TextNDC() [2/2]

void TSVG::TextNDC ( Double_t  ,
Double_t  ,
const wchar_t *   
)
inline

Definition at line 74 of file TSVG.h.

◆ UtoSVG()

Double_t TSVG::UtoSVG ( Double_t  u)

Convert U from NDC coordinate to SVG.

Definition at line 2046 of file TSVG.cxx.

◆ VtoSVG()

Double_t TSVG::VtoSVG ( Double_t  v)

Convert V from NDC coordinate to SVG.

Definition at line 2055 of file TSVG.cxx.

◆ XtoSVG()

Double_t TSVG::XtoSVG ( Double_t  x)

Convert X from world coordinate to SVG.

Definition at line 2064 of file TSVG.cxx.

◆ YtoSVG()

Double_t TSVG::YtoSVG ( Double_t  y)

Convert Y from world coordinate to SVG.

Definition at line 2073 of file TSVG.cxx.

Member Data Documentation

◆ fBoundingBox

Bool_t TSVG::fBoundingBox
protected

True when the SVG header is printed.

Definition at line 26 of file TSVG.h.

◆ fgLineCap

Int_t TSVG::fgLineCap = 0
staticprotected

Appearance of line caps.

Definition at line 31 of file TSVG.h.

◆ fgLineJoin

Int_t TSVG::fgLineJoin = 0
staticprotected

Appearance of joining lines.

Definition at line 30 of file TSVG.h.

◆ fRange

Bool_t TSVG::fRange
protected

True when a range has been defined.

Definition at line 27 of file TSVG.h.

◆ fType

Int_t TSVG::fType
protected

Workstation type used to know if the SVG is open.

Definition at line 25 of file TSVG.h.

◆ fXsize

Float_t TSVG::fXsize
protected

Page size along X.

Definition at line 23 of file TSVG.h.

◆ fYsize

Float_t TSVG::fYsize
protected

Page size along Y.

Definition at line 24 of file TSVG.h.

◆ fYsizeSVG

Double_t TSVG::fYsizeSVG
protected

Page's Y size in SVG units.

Definition at line 28 of file TSVG.h.

Libraries for TSVG:
[legend]

The documentation for this class was generated from the following files: