test
CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
plotting.PlotTextBox Class Reference

Public Member Functions

def __init__
 
def addText
 
def Draw
 
def move
 
def width
 

Private Attributes

 _currenty
 
 _fillColor
 
 _lineheight
 
 _pave
 
 _textArgs
 
 _texts
 
 _transparent
 
 _xmax
 
 _xmin
 
 _ymax
 
 _ymin
 

Detailed Description

Class for drawing text and a background box.

Definition at line 1384 of file plotting.py.

Constructor & Destructor Documentation

def plotting.PlotTextBox.__init__ (   self,
  xmin,
  ymin,
  xmax,
  ymax,
  lineheight = 0.04,
  fillColor = ROOT.kWhite,
  transparent = True,
  kwargs 
)
Constructor

Arguments:
xmin        -- X min coordinate of the box (NDC)
ymin        -- Y min coordinate of the box (NDC) (if None, deduced automatically)
xmax        -- X max coordinate of the box (NDC)
ymax        -- Y max coordinate of the box (NDC)
lineheight  -- Line height
fillColor   -- Fill color of the box
transparent -- Should the box be transparent? (in practive the TPave is not created)

Keyword arguments are forwarded to constructor of PlotText

Definition at line 1386 of file plotting.py.

1387  def __init__(self, xmin, ymin, xmax, ymax, lineheight=0.04, fillColor=ROOT.kWhite, transparent=True, **kwargs):
1388  """Constructor
1389 
1390  Arguments:
1391  xmin -- X min coordinate of the box (NDC)
1392  ymin -- Y min coordinate of the box (NDC) (if None, deduced automatically)
1393  xmax -- X max coordinate of the box (NDC)
1394  ymax -- Y max coordinate of the box (NDC)
1395  lineheight -- Line height
1396  fillColor -- Fill color of the box
1397  transparent -- Should the box be transparent? (in practive the TPave is not created)
1398 
1399  Keyword arguments are forwarded to constructor of PlotText
1400  """
1401  # ROOT.TPave Set/GetX1NDC() etc don't seem to work as expected.
1402  self._xmin = xmin
1403  self._xmax = xmax
1404  self._ymin = ymin
1405  self._ymax = ymax
1406  self._lineheight = lineheight
1407  self._fillColor = fillColor
1408  self._transparent = transparent
1409  self._texts = []
1410  self._textArgs = {}
1411  self._textArgs.update(kwargs)
1413  self._currenty = ymax

Member Function Documentation

def plotting.PlotTextBox.addText (   self,
  text 
)
Add text to current position

Definition at line 1414 of file plotting.py.

References plotting.PlotTextBox._currenty, plotting.PlotTextBox._lineheight, plotting.PlotTextBox._textArgs, MEGeom._xmin, HistoParams< T >._xmin, HistoParams< TH2F >._xmin, HistoParams< TProfile2D >._xmin, and plotting.PlotTextBox._xmin.

1415  def addText(self, text):
1416  """Add text to current position"""
1417  self._currenty -= self._lineheight
1418  self._texts.append(PlotText(self._xmin+0.01, self._currenty, text, **self._textArgs))
def plotting.PlotTextBox.Draw (   self,
  options = "" 
)
Draw the box and the text to the current TPad.

Arguments:
options -- Forwarded to ROOT.TPave.Draw(), and the Draw() of the contained objects

Definition at line 1448 of file plotting.py.

References plotting.PlotTextBox._transparent, fftjetcms::LookupTable2d.ymin(), PixelClusterizerBase::AccretionCluster.ymin, Exhume::Event.ymin, cscdqm::AddressBox.ymin, AccretionCluster.ymin, and TrackerMap.ymin.

1449  def Draw(self, options=""):
1450  """Draw the box and the text to the current TPad.
1451 
1452  Arguments:
1453  options -- Forwarded to ROOT.TPave.Draw(), and the Draw() of the contained objects
1454  """
1455  if not self._transparent:
1456  ymin = self.ymin
1457  if ymin is None:
1458  ymin = self.currenty - 0.01
1459  self._pave = ROOT.TPave(self.xmin, self.ymin, self.xmax, self.ymax, 0, "NDC")
1460  self._pave.SetFillColor(self.fillColor)
1461  self._pave.Draw(options)
1462  for t in self._texts:
1463  t.Draw(options)
def plotting.PlotTextBox.move (   self,
  dx = 0,
  dy = 0,
  dw = 0,
  dh = 0 
)
Move the box and the contained text objects

Arguments:
dx -- Movement in x (positive is to right)
dy -- Movement in y (positive is to up)
dw -- Increment of width (negative to decrease width)
dh -- Increment of height (negative to decrease height)

dx and dy affect to both box and text objects, dw and dh
affect the box only.

Definition at line 1422 of file plotting.py.

References plotting.PlotTextBox._texts, MEGeom._xmax, HistoParams< T >._xmax, HistoParams< TH2F >._xmax, HistoParams< TProfile2D >._xmax, plotting.PlotTextBox._xmax, MEGeom._xmin, HistoParams< T >._xmin, HistoParams< TH2F >._xmin, HistoParams< TProfile2D >._xmin, plotting.PlotTextBox._xmin, MEGeom._ymax, HistoParams< T >._ymax, HistoParams< TH2F >._ymax, HistoParams< TProfile2D >._ymax, plotting.PlotTextBox._ymax, MEGeom._ymin, HistoParams< T >._ymin, HistoParams< TH2F >._ymin, HistoParams< TProfile2D >._ymin, and plotting.PlotTextBox._ymin.

Referenced by Vispa.Gui.PortConnection.PointToPointConnection.updateConnection().

1423  def move(self, dx=0, dy=0, dw=0, dh=0):
1424  """Move the box and the contained text objects
1425 
1426  Arguments:
1427  dx -- Movement in x (positive is to right)
1428  dy -- Movement in y (positive is to up)
1429  dw -- Increment of width (negative to decrease width)
1430  dh -- Increment of height (negative to decrease height)
1431 
1432  dx and dy affect to both box and text objects, dw and dh
1433  affect the box only.
1434  """
1435  self._xmin += dx
1436  self._xmax += dx
1437  if self._ymin is not None:
1438  self._ymin += dy
1439  self._ymax += dy
1440 
1441  self._xmax += dw
1442  if self._ymin is not None:
1443  self._ymin -= dh
1444 
1445  for t in self._texts:
1446  t._x += dx
1447  t._y += dy
def plotting.PlotTextBox.width (   self)

Definition at line 1419 of file plotting.py.

References MEGeom._xmax, HistoParams< T >._xmax, HistoParams< TH2F >._xmax, HistoParams< TProfile2D >._xmax, plotting.PlotTextBox._xmax, MEGeom._xmin, HistoParams< T >._xmin, HistoParams< TH2F >._xmin, HistoParams< TProfile2D >._xmin, and plotting.PlotTextBox._xmin.

Referenced by Vispa.Main.MainWindow.MainWindow._saveIni(), Vispa.Views.PropertyView.PropertyView.resizeEvent(), Vispa.Views.PropertyView.PropertyView.sectionResized(), and Vispa.Main.MainWindow.MainWindow.updateStartupScreenGeometry().

1420  def width(self):
1421  return self._xmax-self._xmin

Member Data Documentation

plotting.PlotTextBox._currenty
private

Definition at line 1412 of file plotting.py.

Referenced by plotting.PlotTextBox.addText().

plotting.PlotTextBox._fillColor
private

Definition at line 1406 of file plotting.py.

plotting.PlotTextBox._lineheight
private

Definition at line 1405 of file plotting.py.

Referenced by plotting.PlotTextBox.addText().

plotting.PlotTextBox._pave
private

Definition at line 1458 of file plotting.py.

plotting.PlotTextBox._textArgs
private

Definition at line 1409 of file plotting.py.

Referenced by plotting.PlotTextBox.addText().

plotting.PlotTextBox._texts
private

Definition at line 1408 of file plotting.py.

Referenced by plotting.PlotTextBox.move().

plotting.PlotTextBox._transparent
private

Definition at line 1407 of file plotting.py.

Referenced by plotting.PlotTextBox.Draw().

plotting.PlotTextBox._xmax
private

Definition at line 1402 of file plotting.py.

Referenced by plotting.PlotTextBox.move(), and plotting.PlotTextBox.width().

plotting.PlotTextBox._xmin
private

Definition at line 1401 of file plotting.py.

Referenced by plotting.PlotTextBox.addText(), plotting.PlotTextBox.move(), and plotting.PlotTextBox.width().

plotting.PlotTextBox._ymax
private

Definition at line 1404 of file plotting.py.

Referenced by plotting.PlotTextBox.move().

plotting.PlotTextBox._ymin
private

Definition at line 1403 of file plotting.py.

Referenced by plotting.PlotTextBox.move().