1#ifndef ScatterPlotData_h
2#define ScatterPlotData_h
4#include <qwt_matrix_raster_data.h>
6#include <QScopedPointer>
11template <
typename A,
typename B>
struct QPair;
12template <
typename T>
class QVector;
31 Cube *yCube,
int yCubeBand,
int yBinCount,
32 QwtInterval sampleRange, QwtInterval lineRange);
36 virtual QwtRasterData *
copy()
const;
37 virtual double value(
double x,
double y)
const;
46 QPair<double, double>
binXY(
int binIndex)
const;
52 void alarm(
double x,
double y);
55 QRectF
pixelHint(
const QRectF &area)
const;
60 int binCount(
int xIndex,
int yIndex)
const;
61 int binIndex(
int xIndex,
int yIndex)
const;
62 int binIndex(
double x,
double y)
const;
63 QPair<int, int> binXYIndices(
int binIndex)
const;
64 QPair<int, int> binXYIndices(
double x,
double y)
const;
66 QScopedPointer<Stretch> m_xDnToBinStretch;
67 QScopedPointer<Stretch> m_yDnToBinStretch;
73 QScopedPointer< QVector< QVector<int> > > m_counts;
81 QScopedPointer< QMap<int, bool> > m_alarmedBins;
IO Handler for Isis Cubes.
Definition Cube.h:168
This is the QwtRasterData for a scatter plot.
Definition ScatterPlotData.h:28
~ScatterPlotData()
Destructor.
Definition ScatterPlotData.cpp:128
QVector< double > discreteXValues() const
Get a list of all of the x-bin center values for this scatter plot.
Definition ScatterPlotData.cpp:296
ScatterPlotData & operator=(const ScatterPlotData &other)
Take the data from other and copy it into this.
Definition ScatterPlotData.cpp:364
void clearAlarms()
Forget all alarmed bins (viewport->plot).
Definition ScatterPlotData.cpp:332
double xCubeMax() const
Return the max DN value for the y-axis cube's data range.
Definition ScatterPlotData.cpp:181
int binCount(int binIndex) const
Get the count (number of values) which fall into the bin at index.
Definition ScatterPlotData.cpp:268
double yCubeMin() const
Return the min DN value for the y-axis cube's data range.
Definition ScatterPlotData.cpp:191
ScatterPlotData(Cube *xCube, int xCubeBand, int xBinCount, Cube *yCube, int yCubeBand, int yBinCount, QwtInterval sampleRange, QwtInterval lineRange)
ScatterPlotDataConstructor.
Definition ScatterPlotData.cpp:28
double xCubeMin() const
Return the min DN value for the x-axis cube's data range.
Definition ScatterPlotData.cpp:171
virtual double value(double x, double y) const
This gets called every time the scatter plot is re-drawn.
Definition ScatterPlotData.cpp:151
void swap(ScatterPlotData &other)
This is part of the copy-and-swap paradigm.
Definition ScatterPlotData.cpp:211
double yCubeMax() const
Return the max DN value for the y-axis cube's data range.
Definition ScatterPlotData.cpp:201
QPair< double, double > binXY(int binIndex) const
Get the center X/Y Dn values for the bin at index.
Definition ScatterPlotData.cpp:231
QRectF pixelHint(const QRectF &area) const
This is a hint given to qwt for how to render a pixel in the spectrogram.
Definition ScatterPlotData.cpp:343
void alarm(double x, double y)
Alarm the bin (highlight it) at the given x/y DN value.
Definition ScatterPlotData.cpp:322
int numberOfBins() const
Get the total number of bins (bin count in x * bin count in y).
Definition ScatterPlotData.cpp:279
virtual QwtRasterData * copy() const
Returns a copy of the ScatterPlotData object.
Definition ScatterPlotData.cpp:137
This is free and unencumbered software released into the public domain.
Definition Calculator.h:18
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16
This is free and unencumbered software released into the public domain.
Definition CubeIoHandler.h:23