Log of /trunk/hist/histpainter/inc/THistPainter.h
Parent Directory
Revision
25489 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Sep 22 13:05:29 2008 UTC (6 years, 4 months ago) by
brun
File length: 6314 byte(s)
Diff to
previous 24084
From Lorenzo:
-move TVirtualFitter from core to mathcore.
-remove FitPanel method from THistPainter
-new plugins for Fumili and FitPanel. Use now plug-in manager to create FitPanel.
Revision
24084 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Sun Jun 1 15:34:01 2008 UTC (6 years, 7 months ago) by
brun
File length: 6348 byte(s)
Diff to
previous 22694
From Olivier and me:
Split the TGraph classes to move the graphics code to separate classes.
These classes will be moved to the hist directory once the classes will be ok.
The TGraphs are painted via the TVirtualGraphPainter class and its concrete
implementation TGraphPainter.
At the difference of the TH1 classes for which a different painter is created
when drawing each histogram, one single TGraphPainter class is created.
The TGraphPainter class does not have internal state, all the information
from TGraph is passed to the drawing functions via parameters.
Revision
16942 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Sat Nov 25 09:02:22 2006 UTC (8 years, 2 months ago) by
brun
Original Path:
trunk/histpainter/inc/THistPainter.h
File length: 6311 byte(s)
Diff to
previous 15039
Add new static function:
void THistPainter::PaintSpecialObjects(const TObject *obj, Option_t *option)
// Static function to paint special objects like vectors and matrices
// This function is called via gROOT->ProcessLine to paint these objects
// without having a direct dependency of the graphics or histogramming system
Revision
14609 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Apr 10 06:55:14 2006 UTC (8 years, 9 months ago) by
brun
Original Path:
trunk/histpainter/inc/THistPainter.h
File length: 6161 byte(s)
Diff to
previous 14357
-In TVirtualHistPainter.h replace the previous functions:
virtual void SetShowProjectionX() = 0;
virtual void SetShowProjectionY() = 0;
by one single function working for TH2 and TH3
virtual void SetShowProjection(const char *option) = 0;
-In THistPainter add the following functions:
virtual void SetShowProjection(const char *option);
virtual void ShowProjectionX(Int_t px, Int_t py);
virtual void ShowProjectionY(Int_t px, Int_t py);
virtual void ShowProjection3(Int_t px, Int_t py);
-In THistPainter.cxx implement the new function
void THistPainter::ShowProjection3(Int_t px, Int_t py)
// Show projection (specified by fShowProjection) of a TH3
// The drawing option for the projection is in fShowOption.
-In TH3, add the new function:
void TH3::SetShowProjection(const char *option)
// When the mouse is moved in a pad containing a 3-d view of this histogram
// a second canvas shows a projection type given as option.
// To stop the generation of the projections, delete the canvas
// containing the projection.
// option may contain a combination of the characters x,y,z,e
// option = "x" return the x projection into a TH1D histogram
// option = "y" return the y projection into a TH1D histogram
// option = "z" return the z projection into a TH1D histogram
// option = "xy" return the x versus y projection into a TH2D histogram
// option = "yx" return the y versus x projection into a TH2D histogram
// option = "xz" return the x versus z projection into a TH2D histogram
// option = "zx" return the z versus x projection into a TH2D histogram
// option = "yz" return the y versus z projection into a TH2D histogram
// option = "zy" return the z versus y projection into a TH2D histogram
// option can also include the drawing option for the projection, eg to draw
// the xy projection using the draw option "box" do
// myhist.SetShowProjection("xy box");
// This function is typically called from the context menu.
Note that this function is only partially implemented. It works only for the option "xy".
It is included in CVS as a framework for additional developments. see
http://root.cern.ch/phpBB2/viewtopic.php?t=3289
Revision
14357 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Mar 21 15:40:56 2006 UTC (8 years, 10 months ago) by
brun
Original Path:
trunk/histpainter/inc/THistPainter.h
File length: 6133 byte(s)
Diff to
previous 13181
Add two new functions in TH2:
These new functions can be selected via the TH2 context menu.
They are a full implementation of the tutorial DynamicSlices.C
void TH2::SetShowProjectionX()
// When the mouse is moved in a pad containing a 2-d view of this histogram
// a second canvas shows the projection along X corresponding to the
// mouse position along Y.
// To stop the generation of the projections, delete the canvas
// containing the projection.
void TH2::SetShowProjectionY()
// When the mouse is moved in a pad containing a 2-d view of this histogram
// a second canvas shows the projection along Y corresponding to the
// mouse position along X.
// To stop the generation of the projections, delete the canvas
// containing the projection.
Revision
10207 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Oct 5 10:28:24 2004 UTC (10 years, 3 months ago) by
brun
Original Path:
trunk/histpainter/inc/THistPainter.h
File length: 5832 byte(s)
Diff to
previous 8508
An algorithm sent by Ernst-Jan Buis for plotting contours using
the special projections for viewing skymaps or exposure maps has been
introduced in THistPainter and associated classes.
In Hoption.h a new member HOption.Proj has been introduced
int Proj; // = 1 to get an Aitoff projection, usefull for skymaps or exposure maps..
// = 2 to get a Mercator ptojection
// = 3 to get a Sinusoidal ptojection
// = 4 to get a Parabolic ptojection
in THistpainter::Paint, the following options are supported:
// "AITOFF" : Draw a contour via an AITOFF projection
// "MERCATOR" : Draw a contour via an Mercator projection
// "SINUSOIDAL" : Draw a contour via an Sinusoidal projection
// "PARABOLIC" : Draw a contour via an Parabolic projection
The function THistPainter::RecalculateRange has been modified to take into account these new options
as well as the class TPainter3dAlgorithms.
The picture produced by the new tutorial earth.C is visible at
http://root.cern.ch/root/htmldoc/THistPainter.html#THistPainter:PaintContour
Revision
7998 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Jan 23 23:30:31 2004 UTC (11 years ago) by
brun
Original Path:
trunk/histpainter/inc/THistPainter.h
File length: 5332 byte(s)
Diff to
previous 7589
From Olivier:
TGraph2D is now split into 3 classes:
- TGraph2D (now in hist) to handle the basic graph 2d data
- TGraphDelaunay (in hist) to generate a Delaunay triangulation of a TGraph2D.
- TGraphPainter (in histpainter) to paint a TGraphDelaunay (used via
THistPainter)
- New function GetContourList in TGraph2D
- New option CONT5: draws a TGraph2D as a contour (using Delaunay
triangles).
- New TGraph2D constructor (from a TH2).
The class TSpectrum2 has been removed (still waiting for fixes from Miroslav)
NOTE: it is recommended to make distclean make
or at least
rm hist/src/G* graph/src/G*
Revision
7589 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Nov 13 17:08:24 2003 UTC (11 years, 2 months ago) by
brun
Original Path:
trunk/histpainter/inc/THistPainter.h
File length: 5226 byte(s)
Diff to
previous 7282
From Olivier:
TGraph2D:
- New method FindAllTriangles (it finds all the Delaunay's triangles).
- PaintTriangles handles the paint option TRI, W, and P.
- fNpoints is initialized on the ctors declaration line.
- The triangles painting takes care of log options and of the min and
max values.
- PaintTriangles uses the new THistPainter's method PaintAxis3D to paint
the 3D axis.
THistPainter:
- Option "axis" works on 2D histograms.
- New method PaintAxis3D to paint the 3D axis.
Revision
6156 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Feb 20 22:39:51 2003 UTC (11 years, 11 months ago) by
brun
Original Path:
trunk/histpainter/inc/THistPainter.h
File length: 5093 byte(s)
Diff to
previous 5122
Add a new argument drawGridOnly to THistPainter::PaintAxis.
In THistPainter::PaintHist, PaintAxis is called first to paint the grid only
if a grid has been requested in the pad. A second call to PaintAxis
will draw the axis without the grid.
This change is to make sure that the grid is drawn in the background
and the axis tick marks in the foreground of the pad.
Revision
4610 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed May 29 18:39:44 2002 UTC (12 years, 7 months ago) by
brun
Original Path:
trunk/histpainter/inc/THistPainter.h
File length: 5157 byte(s)
Diff to
previous 4575
A patch by Olivier Couet with the mods to get a TF3 object paint.
The mods include:
-TF3 painting
-TF3 color settings (including context menu)
-Clipping box
Example:
TF3 *fun3 = new TF3("fun3","sin(x*x+y*y+z*z-36)",-2,2,-2,2,-2,2);
fun3->Draw();
Revision
4216 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Mar 21 16:15:43 2002 UTC (12 years, 10 months ago) by
rdm
Original Path:
trunk/histpainter/inc/THistPainter.h
File length: 4925 byte(s)
Diff to
previous 4157
This patch improves to things:
- The background grid on lego and surface plots is now aligned on the
axis main tick marks. It works for optimised and none optimised axis
divisions.
- It is now possible to have non optimised axis divisions (number of
divisions less than 0) on all 3D plots (lego and surfaces) axis and on
the colour palette axis.
Olivier
Revision
4157 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Sat Mar 9 09:49:11 2002 UTC (12 years, 10 months ago) by
brun
Original Path:
trunk/histpainter/inc/THistPainter.h
File length: 4868 byte(s)
Diff to
previous 4073
Add argument Option_t *option to all THistPainter::Paintxxx functions.
The new argument is used in THistPainter::PaintScatterPlot to control
the number of dots. A new drawing option "scat=ff", eg "scat=10" means
draw a scatter plot drawing a number of dots per cell equal to
the cell content times 10. ff is a floating point. One can scale up/down,
eg scat=0.1, scat=3.14, scat=1e-5. Default is "scat=1".
Revision
3915 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Thu Feb 7 09:10:23 2002 UTC (12 years, 11 months ago) by
brun
Original Path:
trunk/histpainter/inc/THistPainter.h
File length: 4653 byte(s)
Diff to
previous 3602
New feature added by Philippe:
I am taking advantage of the fact that we have one painter per histogram
to individualize a little better the stats box.
The HistPainter now handles a pointer to the stats box. In particular this
means that you can rename it and still have it being updated. The stats can
also now be retrieved via hist->GetPainter()->GetStats(); The HistPainter
now keeps contact with the PaveStats box whether its name have changed or not.
Revision
3602 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Mon Jan 7 18:11:00 2002 UTC (13 years ago) by
brun
Original Path:
trunk/histpainter/inc/THistPainter.h
File length: 4446 byte(s)
Diff to
previous 3427
New functions:
virtual void PaintBar();
virtual void PaintBarH();
virtual Int_t PaintInitH();
// The BAR options
// ===============
// When the option "bar" or "hbar" is specified, a bar chart is drawn.
// ----Vertical BAR chart: Options "bar","bar0","bar1","bar2","bar3","bar4"
// The bar is filled with the histogram fill color
// The left side of the bar is drawn with a light fill color
// The right side of the bar is drawn with a dark fill color
// The percentage of the bar drawn with either the light or dark color
// is 0 per cent for option "bar" or "bar0"
// is 10 per cent for option "bar1"
// is 20 per cent for option "bar2"
// is 30 per cent for option "bar3"
// is 40 per cent for option "bar4"
//
// Use TH1::SetBarWidth to control the bar width (default is the bin width)
// Use TH1::SetBarOffset to control the bar offset (default is 0)
// See example in $ROOTSYS/tutorials/hbars.C
//
// ----Horizontal BAR chart: Options "hbar","hbar0","hbar1","hbar2","hbar3","hbar4"
// An horizontal bar is drawn for each bin.
// The bar is filled with the histogram fill color
// The bottom side of the bar is drawn with a light fill color
// The top side of the bar is drawn with a dark fill color
Revision
2600 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Fri Jul 20 13:49:53 2001 UTC (13 years, 6 months ago) by
brun
Original Path:
trunk/histpainter/inc/THistPainter.h
File length: 4097 byte(s)
Diff to
previous 1695
The THistPainter and TLego classes have been extended with
new functions to draw selected regions of a 2-d histogram.
One can create one or more graphical cuts (TCutG objects)
and specify this (these) cuts in option string of the Draw
function. Example, assuming two graphical cuts with name
"cut1" and "cut2", one can do:
h1.Draw("lego");
h2.Draw("[cut1,-cut2],surf,same");
The second Draw will superimpose on top of the first lego plot
a subset of h2 using the "surf" option with:
-all the bins inside cut1
-all the bins outside cut2
Up to 16 cuts may be specified in the cut string delimited by "[..]"
Currently only the following drawing options are sensitive to
the cuts option: col, box, scat, hist, lego, surf and cartesian
coordinates only.
A set of new functions has been added in THistPainter:
virtual Bool_t IsInside(Int_t x, Int_t y);
virtual Bool_t IsInside(Double_t x, Double_t y);
virtual Int_t MakeCuts(char *cutsopt);
The MakeCuts function is called by THistPainter::MakeChopt to fill
the new THistpainter data members: fNcuts, fCutsOpt and fCuts.
The functions IsInside are called by the THistpainter functions
or the TLego functions.
Revision
1205 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Wed Dec 13 15:13:57 2000 UTC (14 years, 1 month ago) by
brun
Original Path:
trunk/histpainter/inc/THistPainter.h
File length: 3649 byte(s)
Diff to
previous 128
W A R N I N G !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
==================================================================
A very long list of changes in this pre-release of version 3.00.
We have modified the signature of many functions (in particular TObject)
to introduce more constness in the system.
You must change your code if your class derives from TObject and uses
one of the modified functions such as ls, Print, Compare, Hash, etc.
The modified functions in TObject have the following signature:
virtual TObject *Clone() const;
virtual Int_t Compare(const TObject *obj) const;
virtual void Delete(Option_t *option=""); // *MENU*
virtual void DrawClass() const; // *MENU*
virtual void DrawClone(Option_t *option="") const; // *MENU*
virtual void Dump() const; // *MENU*
virtual TObject *FindObject(const TObject *obj) const;
virtual char *GetObjectInfo(Int_t px, Int_t py) const;
virtual ULong_t Hash() const;
virtual void Inspect() const; // *MENU*
virtual Bool_t IsEqual(const TObject *obj) const;
virtual void ls(Option_t *option="") const;
virtual void Print(Option_t *option="") const;
A similar operation has been done with classes such as TH1, TVirtualPad,
TTree, etc.
Revision
128 -
(
view)
(
download)
(
as text)
(
annotate)
-
[select for diffs]
Modified
Tue Jun 13 09:52:04 2000 UTC (14 years, 7 months ago) by
brun
Original Path:
trunk/histpainter/inc/THistPainter.h
File length: 3646 byte(s)
Diff to
previous 3
- Many mods in TLego.cxx. Most internal variables changed from
Float_t to Double_t.
- Many mods in THistPainter.cxx to reflect the numerous changes in TGraph,
TVirtualPad, TView, TLego. Most internal variables changed from
Float_t to Double_t.
-Hparam.h parameters changed from Float_t to Double_t.
This form allows you to request diffs between any two revisions of this file.
For each of the two "sides" of the diff,
enter a numeric revision.