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
20class QwtPlotZoomer;
21
22namespace 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
Container of a cube histogram.
Definition Histogram.h:74
This is the (qwt) plot item for a histogram.
Histogram widget used by AdvancedStretchTool.
double p_max
The maximum value the histogram's maximum can be set to.
double p_min
The minimum value the histogram's minimum can be set to.
int heightForWidth(int w) const
Histograms have preferred sizes that keeps them all the same regardless of the contained data.
void clearStretch()
Clears the stretch curve from the plot.
QwtPlotZoomer * p_zoomer
This allows for zooming in/out.
QwtPlotCurve * p_stretchCurve
The stretch curve.
void setStretch(Stretch stretch)
Creates a stretch curbe from the given stretch and plots it.
HistogramWidget(const QString title, const QColor histColor=Qt::gray, const QColor stretchColor=Qt::darkGray)
HistogramWidget constructor.
void setHistogram(const Histogram &hist)
Creates a histogram curve from the given histogram and plots it.
HistogramItem * p_histCurve
The histogram curve.
Pixel value mapper.
Definition Stretch.h:58
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16