1#ifndef ScatterPlotWindow_h
2#define ScatterPlotWindow_h
8#include <QScopedPointer>
10class QwtPlotSpectrogram;
15 class ScatterPlotTool;
44 Cube *xAxisCube,
int xAxisBand,
int xAxisBinCount,
45 Cube *yAxisCube,
int yAxisBand,
int yAxisBinCount,
46 QwtInterval sampleRange, QwtInterval lineRange,
81 void mouseMoveEvent(QMouseEvent *e);
82 void mouseLeaveEvent(QMouseEvent *e);
83 void updateContourPen();
86 void configureAlarming();
90 QwtPlotSpectrogram *m_spectrogram;
93 QPointer<QAction> m_colorize;
95 QPointer<QAction> m_contour;
102 QPair<double, double> m_xCubeDnAlarmRange;
104 QPair<double, double> m_yCubeDnAlarmRange;
110 QwtInterval m_sampleRange;
112 QwtInterval m_lineRange;
117 bool m_alarmViewport;
120 int m_alarmPlotSamples;
122 int m_alarmPlotLines;
125 AlarmRangeUnits m_alarmViewportUnits;
127 int m_alarmViewportScreenWidth;
129 int m_alarmViewportScreenHeight;
131 double m_alarmViewportXDnBoxSize;
133 double m_alarmViewportYDnBoxSize;
IO Handler for Isis Cubes.
Definition Cube.h:168
Cube display widget for certain Isis MDI applications.
Definition MdiCubeViewport.h:39
Definition PlotWindow.h:88
Scatter Plot Window.
Definition ScatterPlotWindow.h:28
ScatterPlotWindow(QString title, Cube *xAxisCube, int xAxisBand, int xAxisBinCount, Cube *yAxisCube, int yAxisBand, int yAxisBinCount, QwtInterval sampleRange, QwtInterval lineRange, QWidget *parent)
Create a scatter plot window with the given data.
Definition ScatterPlotWindow.cpp:45
void setAlarmViewportScreenBoxSize(int, int)
This sets the screen pixel box size for alarming plot->viewport.
Definition ScatterPlotWindow.cpp:511
virtual void paint(MdiCubeViewport *vp, QPainter *painter)
If the viewport is showing the x axis cube data or y axis cube data, and alarming is enabled,...
Definition ScatterPlotWindow.cpp:317
void setAlarmingViewport(bool)
This enables or disables alarming plot->viewport.
Definition ScatterPlotWindow.cpp:471
bool alarmingPlot() const
This indicates if we are alarming from viewport to plot.
Definition ScatterPlotWindow.cpp:209
QPair< double, double > alarmViewportDnBoxSize() const
This is the alarming box size for plot->viewport in cube units (number of samples/lines).
Definition ScatterPlotWindow.cpp:271
AlarmRangeUnits
This enumeration differentiates alarming a strict cube DN box size from a screen region.
Definition ScatterPlotWindow.h:36
@ ScreenUnits
Alarming is a visible area around the mouse.
Definition ScatterPlotWindow.h:40
@ CubeUnits
Alarming is a DN range around the mouse.
Definition ScatterPlotWindow.h:38
void colorPlot()
This method switches the color mode of the scatter plot from black and white to color and visa versa.
Definition ScatterPlotWindow.cpp:551
bool alarmingViewport() const
This indicates if we are alarming from plot to viewport.
Definition ScatterPlotWindow.cpp:219
void setAlarmPlotBoxSize(int, int)
This sets the box size for alarming viewport->plot in cube samples/lines.
Definition ScatterPlotWindow.cpp:484
void setMousePosition(MdiCubeViewport *vp, QPoint mouseLoc)
Saves the current mouse position in the viewport so that the plot can be alarmed around that position...
Definition ScatterPlotWindow.cpp:406
QPair< int, int > alarmPlotBoxSize() const
This is the sample/line box sizes for alarming from viewport to plot.
Definition ScatterPlotWindow.cpp:229
void setAlarmViewportDnBoxSize(double, double)
This sets the cube DN box size for alarming plot->viewport.
Definition ScatterPlotWindow.cpp:528
bool eventFilter(QObject *o, QEvent *e)
We override events done on the plot canvas for alarming purposes.
Definition ScatterPlotWindow.cpp:285
void forgetCubes()
This causes the window to lose it's pointers to the input cubes.
Definition ScatterPlotWindow.cpp:540
void showHideContour()
This method hides or displays the contour lines on the spectrogram.
Definition ScatterPlotWindow.cpp:585
QPair< int, int > alarmViewportScreenBoxSize() const
This is the alarming box size for plot->viewport in screen units.
Definition ScatterPlotWindow.cpp:255
void setAlarmingPlot(bool)
This enables or disables alarming viewport->plot.
Definition ScatterPlotWindow.cpp:460
void setAlarmViewportUnits(AlarmRangeUnits)
This sets the units to be used for alarming plot->viewport.
Definition ScatterPlotWindow.cpp:495
virtual ~ScatterPlotWindow()
Definition ScatterPlotWindow.cpp:183
AlarmRangeUnits alarmViewportUnits() const
This is the active alarming units for plot->viewport.
Definition ScatterPlotWindow.cpp:241
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16