Logo ROOT  
Reference Guide
TMarker.h
Go to the documentation of this file.
1// @(#)root/graf:$Id$
2// Author: Rene Brun 12/05/95
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_TMarker
13#define ROOT_TMarker
14
15
16#include "TObject.h"
17#include "TAttMarker.h"
18#include "TAttBBox2D.h"
19
20class TPoint;
21
22class TMarker : public TObject, public TAttMarker, public TAttBBox2D {
23
24protected:
25 Double_t fX; ///< X position of marker (left,center,etc..)
26 Double_t fY; ///< Y position of marker (left,center,etc..)
27
28public:
29 // TMarker status bits
30 enum {
31 kMarkerNDC = BIT(14) ///< Marker position is in NDC
32 };
33
34 TMarker();
35 TMarker(Double_t x, Double_t y, Int_t marker);
36 TMarker(const TMarker &marker);
37 virtual ~TMarker();
38
39 void Copy(TObject &marker) const;
40 virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
41 virtual void Draw(Option_t *option="");
42 virtual void DrawMarker(Double_t x, Double_t y);
43 virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py);
44 Double_t GetX() const {return fX;}
45 Double_t GetY() const {return fY;}
46 virtual void ls(Option_t *option="") const;
47 virtual void Paint(Option_t *option="");
48 virtual void PaintMarker(Double_t x, Double_t y);
49 virtual void PaintMarkerNDC(Double_t u, Double_t v);
50 virtual void Print(Option_t *option="") const;
51 virtual void SavePrimitive(std::ostream &out, Option_t *option = "");
52 virtual void SetNDC(Bool_t isNDC=kTRUE);
53 virtual void SetX(Double_t x) { fX = x;} // *MENU*
54 virtual void SetY(Double_t y) { fY = y;} // *MENU*
55
56 virtual Rectangle_t GetBBox();
57 virtual TPoint GetBBoxCenter();
58 virtual void SetBBoxCenter(const TPoint &p);
59 virtual void SetBBoxCenterX(const Int_t x);
60 virtual void SetBBoxCenterY(const Int_t y);
61 virtual void SetBBoxX1(const Int_t x);
62 virtual void SetBBoxX2(const Int_t x);
63 virtual void SetBBoxY1(const Int_t y);
64 virtual void SetBBoxY2(const Int_t y);
65
66 static void DisplayMarkerTypes();
67 static void DisplayMarkerLineWidths();
68
69 ClassDef(TMarker,3) //Marker
70};
71
72#endif
73
int Int_t
Definition: RtypesCore.h:45
bool Bool_t
Definition: RtypesCore.h:63
double Double_t
Definition: RtypesCore.h:59
const Bool_t kTRUE
Definition: RtypesCore.h:100
const char Option_t
Definition: RtypesCore.h:66
#define ClassDef(name, id)
Definition: Rtypes.h:325
#define BIT(n)
Definition: Rtypes.h:85
Abstract base class for elements drawn in the editor.
Definition: TAttBBox2D.h:19
Marker Attributes class.
Definition: TAttMarker.h:19
Manages Markers.
Definition: TMarker.h:22
Double_t fX
X position of marker (left,center,etc..)
Definition: TMarker.h:25
virtual void SetX(Double_t x)
Definition: TMarker.h:53
virtual void SetBBoxCenter(const TPoint &p)
Set center of the BoundingBox.
Definition: TMarker.cxx:427
virtual void SetNDC(Bool_t isNDC=kTRUE)
Set NDC mode on if isNDC = kTRUE, off otherwise.
Definition: TMarker.cxx:366
virtual void SavePrimitive(std::ostream &out, Option_t *option="")
Save primitive as a C++ statement(s) on output stream out.
Definition: TMarker.cxx:349
TMarker()
Marker default constructor.
Definition: TMarker.cxx:55
Double_t fY
Y position of marker (left,center,etc..)
Definition: TMarker.h:26
virtual void SetBBoxCenterY(const Int_t y)
Set Y coordinate of the center of the BoundingBox.
Definition: TMarker.cxx:446
virtual void SetBBoxX2(const Int_t x)
Set right hand side of BoundingBox to a value (resize in x direction on right)
Definition: TMarker.cxx:467
virtual void Print(Option_t *option="") const
Dump this marker with its attributes.
Definition: TMarker.cxx:337
virtual void Paint(Option_t *option="")
Paint this marker with its current attributes.
Definition: TMarker.cxx:306
virtual void SetY(Double_t y)
Definition: TMarker.h:54
virtual void SetBBoxY2(const Int_t y)
Set bottom of BoundingBox to a value (resize in y direction on bottom)
Definition: TMarker.cxx:488
virtual Rectangle_t GetBBox()
Return the bounding Box of the Line.
Definition: TMarker.cxx:400
virtual void Draw(Option_t *option="")
Draw this marker with its current attributes.
Definition: TMarker.cxx:198
void Copy(TObject &marker) const
Copy this marker to marker.
Definition: TMarker.cxx:92
virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py)
Execute action corresponding to one event.
Definition: TMarker.cxx:223
virtual void SetBBoxCenterX(const Int_t x)
Set X coordinate of the center of the BoundingBox.
Definition: TMarker.cxx:437
virtual ~TMarker()
Marker default destructor.
Definition: TMarker.cxx:75
virtual void PaintMarker(Double_t x, Double_t y)
Draw this marker with new coordinates.
Definition: TMarker.cxx:321
virtual TPoint GetBBoxCenter()
Return the center of the BoundingBox as TPoint in pixels.
Definition: TMarker.cxx:415
static void DisplayMarkerLineWidths()
Display the table of markers with different line widths and their numbers.
Definition: TMarker.cxx:136
virtual void SetBBoxY1(const Int_t y)
Set top of BoundingBox to a value (resize in y direction on top)
Definition: TMarker.cxx:477
virtual Int_t DistancetoPrimitive(Int_t px, Int_t py)
Compute distance from point px,py to a marker.
Definition: TMarker.cxx:176
virtual void SetBBoxX1(const Int_t x)
Set left hand side of BoundingBox to a value (resize in x direction on left)
Definition: TMarker.cxx:456
virtual void ls(Option_t *option="") const
List this marker with its attributes.
Definition: TMarker.cxx:297
Double_t GetX() const
Definition: TMarker.h:44
virtual void DrawMarker(Double_t x, Double_t y)
Draw this marker with new coordinates.
Definition: TMarker.cxx:207
@ kMarkerNDC
Marker position is in NDC.
Definition: TMarker.h:31
static void DisplayMarkerTypes()
Display the table of markers with their numbers.
Definition: TMarker.cxx:103
virtual void PaintMarkerNDC(Double_t u, Double_t v)
Draw this marker with new coordinates in NDC.
Definition: TMarker.cxx:330
Double_t GetY() const
Definition: TMarker.h:45
Mother of all ROOT objects.
Definition: TObject.h:37
Definition: TPoint.h:31
Double_t y[n]
Definition: legend1.C:17
Double_t x[n]
Definition: legend1.C:17
Rectangle structure (maps to the X11 XRectangle structure)
Definition: GuiTypes.h:361