Logo ROOT  
Reference Guide
TGraph2DPainter.h
Go to the documentation of this file.
1// @(#)root/histpainter:$Id: TGraph2DPainter.h,v 1.00
2// Author: Olivier Couet
3
4/*************************************************************************
5 * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
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_TGraph2DPainter
13#define ROOT_TGraph2DPainter
14
15
16//////////////////////////////////////////////////////////////////////////
17// //
18// TGraph2DPainter //
19// //
20// helper class to draw 2D graphs //
21// //
22//////////////////////////////////////////////////////////////////////////
23
24#include "TObject.h"
25
26class TGraph2D;
27class TGraphDelaunay;
29class TList;
30
31class TGraph2DPainter : public TObject {
32
33protected:
34
35 Double_t *fX; //!Pointer to fGraph2D->fX
36 Double_t *fY; //!Pointer to fGraph2D->fY
37 Double_t *fZ; //!Pointer to fGraph2D->fZ
38 Double_t *fXN; //!Pointer to fDelaunay->fXN
39 Double_t *fYN; //!Pointer to fDelaunay->fYN
40 Double_t *fEX; //!Pointer to fGraph2D->fXE
41 Double_t *fEY; //!Pointer to fGraph2D->fYE
42 Double_t *fEZ; //!Pointer to fGraph2D->fZE
43 Double_t fXNmin; //!Equal to fDelaunay->fXNmin
44 Double_t fXNmax; //!Equal to fDelaunay->fXNmax
45 Double_t fYNmin; //!Equal to fDelaunay->fYNmin
46 Double_t fYNmax; //!Equal to fDelaunay->fYNmax
49 Double_t fYmin; //! fGraph2D->fHistogram limits
53 Int_t fNpoints; //!Equal to fGraph2D->fNpoints
54 Int_t fNdt; //!Equal to fDelaunay->fNdt
55 Int_t *fPTried; //!Pointer to fDelaunay->fPTried
56 Int_t *fNTried; //!Pointer to fDelaunay->fNTried
57 Int_t *fMTried; //!Pointer to fDelaunay->fMTried
58
59
60 TGraphDelaunay *fDelaunay; // Pointer to the TGraphDelaunay2D to be painted
61 TGraphDelaunay2D *fDelaunay2D; // Pointer to the TGraphDelaunay2D to be painted
62 TGraph2D *fGraph2D; // Pointer to the TGraph2D in fDelaunay
63
64 void FindTriangles();
65 void PaintLevels(Int_t *v, Double_t *x, Double_t *y, Int_t nblev=0, Double_t *glev=0);
67
68 void PaintTriangles_old(Option_t *option);
69 void PaintTriangles_new(Option_t *option);
70
71public:
72
76
77 virtual ~TGraph2DPainter();
78
80 void Paint(Option_t *option);
81 void PaintContour(Option_t *option);
82 void PaintErrors(Option_t *option);
83 void PaintPolyMarker(Option_t *option);
84 void PaintPolyLine(Option_t *option);
85 void PaintTriangles(Option_t *option);
86
87 ClassDef(TGraph2DPainter,1) // TGraph2D painter
88};
89
90#endif
int Int_t
Definition: RtypesCore.h:41
double Double_t
Definition: RtypesCore.h:55
const char Option_t
Definition: RtypesCore.h:62
#define ClassDef(name, id)
Definition: Rtypes.h:326
The TGraphDelaunay painting class.
void PaintContour(Option_t *option)
Paints the 2D graph as a contour plot.
void Paint(Option_t *option)
Paint a TGraphDelaunay according to the value of "option":
Int_t * fNTried
Pointer to fDelaunay->fPTried.
Double_t * fYN
Pointer to fDelaunay->fXN.
TGraphDelaunay * fDelaunay
Pointer to fDelaunay->fMTried.
Double_t * fZ
Pointer to fGraph2D->fY.
TGraphDelaunay2D * fDelaunay2D
virtual ~TGraph2DPainter()
TGraph2DPainter destructor.
TGraph2D * fGraph2D
void PaintErrors(Option_t *option)
Paints the 2D graph as error bars.
Double_t * fXN
Pointer to fGraph2D->fZ.
Int_t * fMTried
Pointer to fDelaunay->fNTried.
void FindTriangles()
Find triangles in fDelaunay and initialise the TGraph2DPainter values needed to paint triangles or fi...
Int_t * fPTried
Equal to fDelaunay->fNdt.
Double_t fXNmin
Pointer to fGraph2D->fZE.
void PaintLevels(Int_t *v, Double_t *x, Double_t *y, Int_t nblev=0, Double_t *glev=0)
Paints one triangle.
Int_t fNdt
Equal to fGraph2D->fNpoints.
Double_t * fEZ
Pointer to fGraph2D->fYE.
TList * GetContourList(Double_t contour)
Returns the X and Y graphs building a contour.
Double_t fYmax
fGraph2D->fHistogram limits
void PaintPolyMarker0(Int_t n, Double_t *x, Double_t *y)
Paints a circle at each vertex. Each circle background is white.
void PaintTriangles(Option_t *option)
Paints the 2D graph as triangles.
void PaintPolyMarker(Option_t *option)
Paints the 2D graph as PaintPolyMarker.
Double_t * fY
Pointer to fGraph2D->fX.
Double_t fYNmin
Equal to fDelaunay->fXNmax.
Double_t * fEY
Pointer to fGraph2D->fXE.
void PaintPolyLine(Option_t *option)
Paints the 2D graph as PaintPolyLine.
TGraph2DPainter()
TGraph2DPainter default constructor.
void PaintTriangles_old(Option_t *option)
Paints the 2D graph as triangles (old implementation)
Double_t fYNmax
Equal to fDelaunay->fYNmin.
Double_t fXmin
Equal to fDelaunay->fYNmax.
Double_t * fEX
Pointer to fDelaunay->fYN.
Double_t fXNmax
Equal to fDelaunay->fXNmin.
void PaintTriangles_new(Option_t *option)
Paints the 2D graph as triangles (new implementation)
Graphics object made of three arrays X, Y and Z with the same number of points each.
Definition: TGraph2D.h:40
TGraphDelaunay2D generates a Delaunay triangulation of a TGraph2D.
TGraphDelaunay generates a Delaunay triangulation of a TGraph2D.
A doubly linked list.
Definition: TList.h:44
Mother of all ROOT objects.
Definition: TObject.h:37
Double_t y[n]
Definition: legend1.C:17
Double_t x[n]
Definition: legend1.C:17
const Int_t n
Definition: legend1.C:16