INET Framework for OMNeT++/OMNEST
inet::BarFigure Class Reference

#include <BarFigure.h>

Inheritance diagram for inet::BarFigure:

Public Member Functions

 BarFigure (const char *name=nullptr)
 
void setColor (const cFigure::Color &color)
 
void setSpacing (double spacing)
 
void setMinValue (double minValue)
 
void setMaxValue (double maxValue)
 
void setValue (double value)
 

Protected Member Functions

virtual void refreshDisplay ()
 

Protected Attributes

double value = NaN
 
double minValue = NaN
 
double maxValue = NaN
 
double spacing = 2
 
cRectangleFigure * valueFigure = nullptr
 

Constructor & Destructor Documentation

◆ BarFigure()

inet::BarFigure::BarFigure ( const char *  name = nullptr)
12  :
13  cRectangleFigure(name)
14 {
15  valueFigure = new cRectangleFigure();
16  valueFigure->setFilled(true);
17  addFigure(valueFigure);
18 }

Member Function Documentation

◆ refreshDisplay()

void inet::BarFigure::refreshDisplay ( )
protectedvirtual
29 {
30  auto alpha = (value - minValue) / (maxValue - minValue);
31  alpha = std::min(std::max(alpha, 0.0), 1.0);
32  auto& bounds = getBounds();
33  auto height = (bounds.height - 2 * spacing) * alpha;
34  valueFigure->setBounds(cFigure::Rectangle(spacing, bounds.height - spacing - height, bounds.width - 2 * spacing, height));
35 }

Referenced by setValue().

◆ setColor()

void inet::BarFigure::setColor ( const cFigure::Color &  color)
inline
30 { valueFigure->setFillColor(color); }

◆ setMaxValue()

void inet::BarFigure::setMaxValue ( double  maxValue)
inline
34 { this->maxValue = maxValue; }

◆ setMinValue()

void inet::BarFigure::setMinValue ( double  minValue)
inline
33 { this->minValue = minValue; }

◆ setSpacing()

void inet::BarFigure::setSpacing ( double  spacing)
inline
32 { this->spacing = spacing; }

◆ setValue()

void inet::BarFigure::setValue ( double  value)
21 {
22  if (this->value != value) {
23  this->value = value;
25  }
26 }

Member Data Documentation

◆ maxValue

double inet::BarFigure::maxValue = NaN
protected

Referenced by refreshDisplay().

◆ minValue

double inet::BarFigure::minValue = NaN
protected

Referenced by refreshDisplay().

◆ spacing

double inet::BarFigure::spacing = 2
protected

Referenced by refreshDisplay().

◆ value

double inet::BarFigure::value = NaN
protected

Referenced by refreshDisplay(), and setValue().

◆ valueFigure

cRectangleFigure* inet::BarFigure::valueFigure = nullptr
protected

Referenced by BarFigure(), and refreshDisplay().


The documentation for this class was generated from the following files:
inet::BarFigure::spacing
double spacing
Definition: BarFigure.h:21
inet::sctp::min
double min(const double a, const double b)
Returns the minimum of a and b.
Definition: SctpAssociation.h:261
inet::BarFigure::refreshDisplay
virtual void refreshDisplay()
Definition: BarFigure.cc:28
inet::BarFigure::maxValue
double maxValue
Definition: BarFigure.h:20
inet::BarFigure::valueFigure
cRectangleFigure * valueFigure
Definition: BarFigure.h:22
inet::BarFigure::minValue
double minValue
Definition: BarFigure.h:19
inet::sctp::max
double max(const double a, const double b)
Returns the maximum of a and b.
Definition: SctpAssociation.h:266
inet::units::constants::alpha
const value< double, units::unit > alpha(7.2973525376e-3)
inet::BarFigure::value
double value
Definition: BarFigure.h:18