Isis 3 Programmer Reference
HistogramWidget.h
1 #ifndef HistogramWidget_h
2 #define HistogramWidget_h
3 
4 #include "Cube.h"
5 #include "Stretch.h"
6 #include "Histogram.h"
7 
8 #include <QWidget>
9 #include <QStackedWidget>
10 #include <QSlider>
11 #include <QLineEdit>
12 #include <QDoubleValidator>
13 
14 #include <qwt_plot.h>
15 #include <qwt_plot_curve.h>
16 #include <qwt_legend.h>
17 
18 #include "HistogramItem.h"
19 
20 class QwtPlotZoomer;
21 
22 namespace Isis {
36  class HistogramWidget : public QwtPlot {
37  Q_OBJECT
38 
39  public:
40  HistogramWidget(const QString title, const QColor histColor = Qt::gray, const QColor stretchColor = Qt::darkGray);
41  void setHistogram(const Histogram &hist);
42  void setStretch(Stretch stretch);
43 
44  void clearStretch();
45 
56  int heightForWidth(int w) const {
57  return w;
58  }
59 
60  private slots:
61 
62  private:
65  QwtPlotZoomer *p_zoomer;
66 
67  double p_min;
68  double p_max;
69  };
70 };
71 
72 #endif
QwtPlot
Isis::HistogramWidget::p_histCurve
HistogramItem * p_histCurve
The histogram curve.
Definition: HistogramWidget.h:63
Isis::Stretch
Pixel value mapper.
Definition: Stretch.h:58
Isis::HistogramWidget::setStretch
void setStretch(Stretch stretch)
Creates a stretch curbe from the given stretch and plots it.
Definition: HistogramWidget.cpp:115
Isis::HistogramItem
This is the (qwt) plot item for a histogram.
Definition: HistogramItem.h:24
Isis::HistogramWidget::clearStretch
void clearStretch()
Clears the stretch curve from the plot.
Definition: HistogramWidget.cpp:129
Isis::HistogramWidget::p_zoomer
QwtPlotZoomer * p_zoomer
This allows for zooming in/out.
Definition: HistogramWidget.h:65
Isis::HistogramWidget
Histogram widget used by AdvancedStretchTool.
Definition: HistogramWidget.h:36
Isis::HistogramWidget::p_stretchCurve
QwtPlotCurve * p_stretchCurve
The stretch curve.
Definition: HistogramWidget.h:64
QwtPlotCurve
Isis::Histogram
Container of a cube histogram.
Definition: Histogram.h:74
Isis::HistogramWidget::p_max
double p_max
The maximum value the histogram's maximum can be set to.
Definition: HistogramWidget.h:68
Isis::HistogramWidget::setHistogram
void setHistogram(const Histogram &hist)
Creates a histogram curve from the given histogram and plots it.
Definition: HistogramWidget.cpp:63
Isis::HistogramWidget::p_min
double p_min
The minimum value the histogram's minimum can be set to.
Definition: HistogramWidget.h:67
Isis::HistogramWidget::HistogramWidget
HistogramWidget(const QString title, const QColor histColor=Qt::gray, const QColor stretchColor=Qt::darkGray)
HistogramWidget constructor.
Definition: HistogramWidget.cpp:23
Isis::HistogramWidget::heightForWidth
int heightForWidth(int w) const
Histograms have preferred sizes that keeps them all the same regardless of the contained data.
Definition: HistogramWidget.h:56
Isis
This is free and unencumbered software released into the public domain.
Definition: Apollo.h:16