Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

SymbolPointRep Class Reference

#include <SymbolPointRep.h>

Inheritance diagram for SymbolPointRep:

Inheritance graph
[legend]
Collaboration diagram for SymbolPointRep:

Collaboration graph
[legend]
List of all members.

Detailed Description

A PointRep class draws a symbol to represent the value.

The variety of symbols available is enumerated on in the enum Type. the following plot was made with SymbolPointRep.

Bug:
The triangle is upside down, or should have both types.

Requests:
Could add diamond.

symbolpointrep.png

Plot with SymbolPointRep

Author:
Kaustuv <kaustuv@stanford.edu>

Paul F. Kunz <Paul_Kunz@slac.stanford.edu>

Definition at line 38 of file SymbolPointRep.h.

Public Member Functions

virtual RepBaseclone ()
 The clone function returns an object of its own kind which is a copy of this object at this moment.
virtual const Colorcolor () const
 Returns the representation's color.
virtual void displayError (ViewBase &view)
 Display an error message.
virtual void drawProjectedValues (const DataSource *ntuple, TransformBase *transform, ViewBase *view)
virtual const ColorgetColor () const
 Get the color of the representation.
virtual unsigned int getStyle () const
 Returns the style of the point symbol.
virtual const BinToColorgetValueTransform () const
 Returns the value transform.
virtual bool isSelected () const
 Returns true if representation is in selected state, otherwise returns false.
const std::stringname () const
 Returns the name of the representation.
virtual void setColor (const Color &color)
 Sets the color of the representation.
virtual void setErrorOn (const std::string &axis, bool yes=true)
 Sets the display of the error bar.
virtual void setHighLighted (bool yes)
 Sets the highlighted state of the point representation.
virtual void setSelected (bool yes)
 Sets the selection state of the representation.
void setSize (float value)
 Sets the size of the representation.
virtual void setStyle (unsigned int symbol)
 Sets the symbol of the representation.
void setText (const std::string &text)
 Sets the text.
virtual void setValueTransform (BinToColor *)
 Sets the value transform.
float size () const
 Returns the size of the representation.
 SymbolPointRep (const SymbolPointRep &point_rep)
 The copy constructor.
 SymbolPointRep ()
 The default constructor.
 SymbolPointRep (hippodraw::Symbol::Type symbol, float size)
 The following constructor takes the symbol and size as arguments.
virtual void transformPoints (const TransformBase &transform, ViewBase &view)
 Transforms the cached coordinates using transform.
virtual bool xError () const
 Returns true if the point representation displays error on the X axis.
virtual bool yError () const
 Returns true if the point representation displays error on the Y axis.
 ~SymbolPointRep ()
 The destructor.

Protected Member Functions

void beginPlot (unsigned int size, const BinaryTransform *tf, const ViewBase *view)
 Sets the value of cached data members.
bool drawProjectedValue (unsigned int i, const DataSource *ntuple, const BinaryTransform *transform, ViewBase *view)
 Draws a projected value.

Protected Attributes

Color m_color
 The color of the representation.
bool m_desel
 A flag to indicate the representation is de-selected.
ErrorBarRepm_error_rep
 The error bar representation.
bool m_highlite
 Sets the state of highlighting.
std::string m_name
 The name of the representation.
hippodraw::Symbol::Type m_plot_symbol
 The PlotSymbol currently used.
float m_size
 The size of the representation.
std::string m_text
 The text to be displayed before the statistics.
std::vector< double > m_x
 A cache of the points to be drawn on the X axis.
bool m_x_flag
 The x error flag.
std::vector< double > m_y
 A cache of the points to be drawn on the Y axis.
bool m_y_flag
 The y error flag.

Static Protected Attributes

static const Color s_desel_color
 The color of the representation when it is de-selected.

Static Private Member Functions

static void rotate (double &lat, double &lon, double alpha, double beta, double gamma)
 Rotates the coordinate.

Private Attributes

double c_beta
 Cached xOffset of PeriodicBinaryTransform.
double c_gamma
 Cached yOffset of PeriodBinaryTransform.
const PeriodicBinaryTransformc_periodic_tf
 Cached dynamic cast of BinaryTransform to PeriodicBinaryTransform if the BinaryTransform is periodic.
Range c_x_range
 Cached Range on X axis.
Range c_y_range
 Cached Range on X axis.
double m_x_cap
 The X error bar cap length.
double m_y_cap
 The Y error bar cap length.


Constructor & Destructor Documentation

SymbolPointRep::SymbolPointRep hippodraw::Symbol::Type  symbol,
float  size
 

The following constructor takes the symbol and size as arguments.

Definition at line 37 of file SymbolPointRep.cxx.

References PointRepBase::m_error_rep.

SymbolPointRep::SymbolPointRep  ) 
 

The default constructor.

Definition at line 44 of file SymbolPointRep.cxx.

References PointRepBase::m_error_rep.

Referenced by clone().

SymbolPointRep::SymbolPointRep const SymbolPointRep point_rep  ) 
 

The copy constructor.

Definition at line 51 of file SymbolPointRep.cxx.

References ErrorBarRep::clone(), clone(), and PointRepBase::m_error_rep.

SymbolPointRep::~SymbolPointRep  ) 
 

The destructor.

Definition at line 63 of file SymbolPointRep.cxx.

References PointRepBase::m_error_rep.


Member Function Documentation

void SymbolPointRep::beginPlot unsigned int  size,
const BinaryTransform tf,
const ViewBase view
[protected]
 

Sets the value of cached data members.

This member function should be called before any projected values are transformed.

Definition at line 209 of file SymbolPointRep.cxx.

References c_beta, c_gamma, c_periodic_tf, c_x_range, c_y_range, m_x, m_y, hippodraw::Axes::X, and hippodraw::Axes::Y.

Referenced by drawProjectedValues(), and ColorSymbolPointRep::drawProjectedValues().

RepBase * SymbolPointRep::clone  )  [virtual]
 

The clone function returns an object of its own kind which is a copy of this object at this moment.

Implements PointRepBase.

Reimplemented in ColorSymbolPointRep.

Definition at line 68 of file SymbolPointRep.cxx.

References SymbolPointRep().

Referenced by SymbolPointRep().

const Color & RepBase::color  )  const [virtual, inherited]
 

Returns the representation's color.

Todo:
Remove this member in favor of getColor().

Definition at line 61 of file RepBase.cxx.

References RepBase::m_color, RepBase::m_desel, and RepBase::s_desel_color.

Referenced by ContourPointRep::createContours(), drawProjectedValues(), LinePointRep::drawProjectedValues(), ErrorBarRep::drawProjectedValues(), ColumnPointRep::drawProjectedValues(), ColorSymbolPointRep::drawProjectedValues(), ColorBoxPointRep::drawProjectedValues(), and DataRep::getRepColor().

void RepBase::displayError ViewBase view  )  [virtual, inherited]
 

Display an error message.

Display an error message instead of drawing a point. This base class implementation displays a message with the name of the RepBase object.

Definition at line 153 of file RepBase.cxx.

References ViewBase::drawText(), RepBase::m_name, and RepBase::m_size.

bool SymbolPointRep::drawProjectedValue unsigned int  i,
const DataSource ntuple,
const BinaryTransform transform,
ViewBase view
[protected]
 

Draws a projected value.

Draws the projected value index by index if the coordinate is within range. Returns true if the point is drawn, otherwise returns false.

Attention:
The member function beginPlot must be called before a call this member function.

Definition at line 231 of file SymbolPointRep.cxx.

References c_beta, c_gamma, c_periodic_tf, Range::includes(), m_x, m_y, rotate(), hippodraw::Axes::X, and hippodraw::Axes::Y.

Referenced by drawProjectedValues(), and ColorSymbolPointRep::drawProjectedValues().

void SymbolPointRep::drawProjectedValues const DataSource ntuple,
TransformBase transform,
ViewBase view
[virtual]
 

Todo:
Should transform be const in this method.

Implements RepBase.

Reimplemented in ColorSymbolPointRep.

Definition at line 183 of file SymbolPointRep.cxx.

References beginPlot(), RepBase::color(), drawProjectedValue(), PointRepBase::m_error_rep, m_plot_symbol, RepBase::m_size, m_x, m_x_flag, m_y, m_y_flag, and RepBase::size().

const Color & RepBase::getColor  )  const [virtual, inherited]
 

Get the color of the representation.

Definition at line 56 of file RepBase.cxx.

References RepBase::m_color.

Referenced by PointRepXML::createElement().

unsigned int SymbolPointRep::getStyle  )  const [virtual]
 

Returns the style of the point symbol.

Reimplemented from RepBase.

Definition at line 89 of file SymbolPointRep.cxx.

References m_plot_symbol.

const BinToColor * RepBase::getValueTransform  )  const [virtual, inherited]
 

Returns the value transform.

A value transform changes a binary value to some graphical representations such as color. The implementation in this base class returns a null pointer. Derived classes that implement value transform should return a pointer to the object it uses.

Reimplemented in ColorBoxPointRep, ColorSymbolPointRep, and ContourPointRep.

Definition at line 139 of file RepBase.cxx.

Referenced by PointRepXML::createElement().

bool RepBase::isSelected  )  const [virtual, inherited]
 

Returns true if representation is in selected state, otherwise returns false.

Definition at line 77 of file RepBase.cxx.

References RepBase::m_desel.

Referenced by DataRep::isSelected().

const string & RepBase::name  )  const [inherited]
 

Returns the name of the representation.

This name might be used by a Factory.

Definition at line 45 of file RepBase.cxx.

References RepBase::m_name.

Referenced by FuncParmRep::drawProjectedValues(), PointRepXML::setAttributes(), QtDisplay::setContourLevels(), and Inspector::updatePlotTab().

void SymbolPointRep::rotate double &  lat,
double &  lon,
double  alpha,
double  beta,
double  gamma
[static, private]
 

Rotates the coordinate.

Definition at line 134 of file SymbolPointRep.cxx.

References std::cos(), M_PI, and std::sin().

Referenced by drawProjectedValue().

void SymbolPointRep::setColor const Color color  )  [virtual]
 

Sets the color of the representation.

Reimplemented from RepBase.

Definition at line 73 of file SymbolPointRep.cxx.

References PointRepBase::m_error_rep, and RepBase::setColor().

void SymbolPointRep::setErrorOn const std::string axis,
bool  yes = true
[virtual]
 

Sets the display of the error bar.

Sets the display of the error bar on the specified axis to on or off.

Reimplemented from RepBase.

Definition at line 96 of file SymbolPointRep.cxx.

References PointRepBase::m_error_rep, m_x_flag, m_y_flag, ErrorBarRep::setXError(), and ErrorBarRep::setYError().

void RepBase::setHighLighted bool  yes  )  [virtual, inherited]
 

Sets the highlighted state of the point representation.

If yes is true, then the point representation should show the non highlighted regions in some fashion, typically using light gray color instead of its normal color.

See also:
setSelected (bool)

m_ranges.

Definition at line 84 of file RepBase.cxx.

References RepBase::m_highlite.

void PointRepBase::setSelected bool  yes  )  [virtual, inherited]
 

Sets the selection state of the representation.

Also sets the selection state of the ErrorBarRep representation, if any. If yes is false, the point representation should shows its deselected stated by some fashion, typically using a light gray color instead of its normal color.

Reimplemented from RepBase.

Definition at line 36 of file PointRepBase.cxx.

References PointRepBase::m_error_rep, and RepBase::setSelected().

void RepBase::setSize float  value  )  [inherited]
 

Sets the size of the representation.

Definition at line 94 of file RepBase.cxx.

References RepBase::m_size.

Referenced by PointRepXML::createObject(), FunctionRep::FunctionRep(), and DataRep::setRepSize().

void SymbolPointRep::setStyle unsigned int  symbol  )  [virtual]
 

Sets the symbol of the representation.

Derived classes may use this method to set the style of the representation, if they have various styles. This base class implementation does nothing.

Reimplemented from RepBase.

Definition at line 82 of file SymbolPointRep.cxx.

References hippodraw::Axes::convert(), and m_plot_symbol.

void RepBase::setText const std::string text  )  [inherited]
 

Sets the text.

Definition at line 132 of file RepBase.cxx.

References RepBase::m_text.

Referenced by DisplayController::createTextDataRep().

void RepBase::setValueTransform BinToColor  )  [virtual, inherited]
 

Sets the value transform.

The implementation in this base class does nothing. Derived classes that implement a value transform should override this method and take possession of the received object.

Todo:
Should have base class that doesn't know about color and BinToColor class should derive from it.

Reimplemented in ColorBoxPointRep, ColorSymbolPointRep, and ContourPointRep.

Definition at line 146 of file RepBase.cxx.

float RepBase::size  )  const [inherited]
 

Returns the size of the representation.

Definition at line 89 of file RepBase.cxx.

References RepBase::m_size.

Referenced by ContourPointRep::createContours(), ContourPointRep::drawContourTicks(), drawProjectedValues(), LinePointRep::drawProjectedValues(), ErrorBarRep::drawProjectedValues(), ContourPointRep::drawProjectedValues(), ColumnPointRep::drawProjectedValues(), ColorSymbolPointRep::drawProjectedValues(), ColorBoxPointRep::drawProjectedValues(), DisplayController::pointSize(), and PointRepXML::setAttributes().

void SymbolPointRep::transformPoints const TransformBase transform,
ViewBase view
[virtual]
 

Transforms the cached coordinates using transform.

Definition at line 118 of file SymbolPointRep.cxx.

References m_x, m_y, and BinaryTransform::transform().

bool SymbolPointRep::xError  )  const [virtual]
 

Returns true if the point representation displays error on the X axis.

The default implementation returns false. May be overridden by derived classes.

Reimplemented from RepBase.

Definition at line 108 of file SymbolPointRep.cxx.

References m_x_flag.

bool SymbolPointRep::yError  )  const [virtual]
 

Returns true if the point representation displays error on the Y axis.

The default implementation returns false. May be overridden by derived classes.

Reimplemented from RepBase.

Definition at line 113 of file SymbolPointRep.cxx.

References m_y_flag.


Member Data Documentation

double SymbolPointRep::c_beta [private]
 

Cached xOffset of PeriodicBinaryTransform.

Definition at line 78 of file SymbolPointRep.h.

Referenced by beginPlot(), and drawProjectedValue().

double SymbolPointRep::c_gamma [private]
 

Cached yOffset of PeriodBinaryTransform.

Definition at line 82 of file SymbolPointRep.h.

Referenced by beginPlot(), and drawProjectedValue().

const PeriodicBinaryTransform* SymbolPointRep::c_periodic_tf [private]
 

Cached dynamic cast of BinaryTransform to PeriodicBinaryTransform if the BinaryTransform is periodic.

Definition at line 74 of file SymbolPointRep.h.

Referenced by beginPlot(), and drawProjectedValue().

Range SymbolPointRep::c_x_range [private]
 

Cached Range on X axis.

Definition at line 85 of file SymbolPointRep.h.

Referenced by beginPlot().

Range SymbolPointRep::c_y_range [private]
 

Cached Range on X axis.

Definition at line 88 of file SymbolPointRep.h.

Referenced by beginPlot().

Color RepBase::m_color [protected, inherited]
 

The color of the representation.

Definition at line 55 of file RepBase.h.

Referenced by RepBase::color(), CutRangeRep::drawInvertedRange1D(), CutRangeRep::drawInvertedRange2D(), CutRangeRep::drawNormalRange(), RepBase::getColor(), and RepBase::setColor().

bool RepBase::m_desel [protected, inherited]
 

A flag to indicate the representation is de-selected.

Definition at line 64 of file RepBase.h.

Referenced by RepBase::color(), CutRangeRep::drawInvertedRange1D(), CutRangeRep::drawInvertedRange2D(), CutRangeRep::drawNormalRange(), ColorBoxPointRep::drawProjectedValues(), RepBase::isSelected(), and RepBase::setSelected().

ErrorBarRep* PointRepBase::m_error_rep [protected, inherited]
 

The error bar representation.

Will be a null pointer if a derived class doesn't have one.

Definition at line 42 of file PointRepBase.h.

Referenced by ColumnPointRep::ColumnPointRep(), drawProjectedValues(), ColumnPointRep::drawProjectedValues(), setColor(), ColumnPointRep::setColor(), setErrorOn(), ColumnPointRep::setErrorOn(), PointRepBase::setSelected(), SymbolPointRep(), ColumnPointRep::~ColumnPointRep(), and ~SymbolPointRep().

bool RepBase::m_highlite [protected, inherited]
 

Sets the state of highlighting.

Definition at line 68 of file RepBase.h.

Referenced by RepBase::setHighLighted().

std::string RepBase::m_name [protected, inherited]
 

The name of the representation.

Definition at line 49 of file RepBase.h.

Referenced by AverageTextRep::AverageTextRep(), ColorSymbolPointRep::ColorSymbolPointRep(), RepBase::displayError(), ContourPointRep::init(), and RepBase::name().

hippodraw::Symbol::Type SymbolPointRep::m_plot_symbol [protected]
 

The PlotSymbol currently used.

Definition at line 99 of file SymbolPointRep.h.

Referenced by drawProjectedValues(), ColorSymbolPointRep::drawProjectedValues(), getStyle(), and setStyle().

float RepBase::m_size [protected, inherited]
 

The size of the representation.

Definition at line 61 of file RepBase.h.

Referenced by RepBase::displayError(), TotalTextRep::drawProjectedValues(), drawProjectedValues(), LinePointRep::drawProjectedValues(), FuncParmRep::drawProjectedValues(), FuncChiRep::drawProjectedValues(), ErrorBarRep::drawProjectedValues(), ColumnPointRep::drawProjectedValues(), ColorSymbolPointRep::drawProjectedValues(), BoxTextRep::drawProjectedValues(), AverageTextRep::drawProjectedValues(), ContourPointRep::endPlot(), RepBase::setSize(), and RepBase::size().

std::string RepBase::m_text [protected, inherited]
 

The text to be displayed before the statistics.

Definition at line 52 of file RepBase.h.

Referenced by BoxTextRep::drawProjectedValues(), and RepBase::setText().

std::vector< double > SymbolPointRep::m_x [protected]
 

A cache of the points to be drawn on the X axis.

A cache is used so that all the points are delivered to the View with one call. The cache is cleared with a call to beginPlot. However, X and Y caches are separate so that they can be transformed independently.

Definition at line 56 of file SymbolPointRep.h.

Referenced by beginPlot(), drawProjectedValue(), drawProjectedValues(), ColorSymbolPointRep::drawProjectedValues(), and transformPoints().

double SymbolPointRep::m_x_cap [private]
 

The X error bar cap length.

Definition at line 91 of file SymbolPointRep.h.

bool SymbolPointRep::m_x_flag [protected]
 

The x error flag.

If set true, error bars along the X axis are generated.

Definition at line 63 of file SymbolPointRep.h.

Referenced by drawProjectedValues(), setErrorOn(), and xError().

std::vector< double > SymbolPointRep::m_y [protected]
 

A cache of the points to be drawn on the Y axis.

See also:
m_x

Definition at line 59 of file SymbolPointRep.h.

Referenced by beginPlot(), drawProjectedValue(), drawProjectedValues(), ColorSymbolPointRep::drawProjectedValues(), and transformPoints().

double SymbolPointRep::m_y_cap [private]
 

The Y error bar cap length.

Definition at line 94 of file SymbolPointRep.h.

bool SymbolPointRep::m_y_flag [protected]
 

The y error flag.

If set true, error bars along the Y axis are generated.

Definition at line 67 of file SymbolPointRep.h.

Referenced by drawProjectedValues(), setErrorOn(), and yError().

const Color RepBase::s_desel_color [static, protected, inherited]
 

The color of the representation when it is de-selected.

Referenced by RepBase::color(), CutRangeRep::drawInvertedRange1D(), CutRangeRep::drawInvertedRange2D(), and CutRangeRep::drawNormalRange().


The documentation for this class was generated from the following files:
Generated for HippoDraw-1.14.8.5 by doxygen 1.4.3