Isis 3 Programmer Reference
MatrixOptions.h
1#ifndef matrixOptions_h
2#define matrixOptions_h
3
4#include <QColor>
5#include <QString>
6#include <QMap>
7#include <QObject>
8#include <QStringList>
9
10namespace Isis {
11 class CorrelationMatrix;
12 class MatrixSceneWidget;
13
28 class MatrixOptions : public QObject {
29 Q_OBJECT
30 public:
31
32 enum FocusOption {
33 Best,
34 Worst,
35 Specific,
36 Tolerance
37 };
38// MatrixOptions(); // give parent? MatrixSceneWidget
39 MatrixOptions(CorrelationMatrix parent, MatrixSceneWidget *scene); // give parent? MatrixSceneWidget
41
42 // Color Options
43 QColor goodCorrelationColor();
44 QColor badCorrelationColor();
45 double colorTolerance();
46 bool colorScheme();
47
48 void setColorScheme(bool tolerance);
49 void setColorTolerance(double tolerance);
50 void setGoodCorrelationColor(QColor color);
51 void setBadCorrelationColor(QColor color);
52
53 // Focus Options
54 FocusOption focusOption();
55 double focusValue(); // best, worst, the one selected from tolerance?
56 QString focusImage1();
57 QString focusParameter1();
58 QString focusImage2();
59 QString focusParameter2();
60 QList<double> goodElements();
61 QList<double> badElements();
62
63 void setFocusOption(FocusOption option);
64 void setFocusValue(double value);
65 void setGoodElements(QList<double> goodElements);
66 void setBadElements(QList<double> badElements);
67
68 // Current Correlation Information
69 double currentCorrelation();
70 QString currentImage1();
71 QString currentParameter1();
72 QString currentImage2();
73 QString currentParameter2();
74
75 void setCurrentCorrelation(double value);
76 void setCurrentImage1(QString current);
77 void setCurrentParameter1(QString current);
78 void setCurrentImage2(QString current);
79 void setCurrentParameter2(QString current);
80
81 QMap< QString, QStringList> matrixImgsAndParams();
82
83 CorrelationMatrix *parentMatrix();
84 signals:
85 void optionsUpdated();
86/*
87
88 public slots:
89 void updateOptions(QString currentData);*/
90
91 private:
92
93 CorrelationMatrix *m_parentMatrix;
94 //Color Options
95 bool m_tolerance; // if tolerance is false then we use gradient
96 QColor m_goodColor;
97 QColor m_badColor;
98 double m_colorTolerance;
99
100 // Focus Options
101 FocusOption m_focusOption;
102
103 // Specific Parameters
104 QString m_image1;
105 QString m_parameter1;
106 QString m_image2;
107 QString m_parameter2;
108// QMap<QString, QStringList> m_imagesAndParameters; // pointer the the one in correlation matrix?
109
110 // Tolerance
111 double m_focusTolSelectedElement;
112 QList<double> m_goodElements;
113 QList<double> m_badElements;
114
115 // Current Correlation Information
116 double m_currentValue;
117 QString m_currentImg1;
118 QString m_currentParam1;
119 QString m_currentImg2;
120 QString m_currentParam2;
121 };
122};
123
124#endif
This is a container for the correlation matrix that comes from a bundle adjust.
This class holds the matrix color and focus information.
QColor badCorrelationColor()
The color selected for the correlation values that are above the given threshold.
FocusOption focusOption()
void setCurrentCorrelation(double value)
void setGoodCorrelationColor(QColor color)
void setColorScheme(bool tolerance)
MatrixOptions(CorrelationMatrix parent, MatrixSceneWidget *scene)
Default Constructor.
QColor goodCorrelationColor()
The color selected for the correlation values that are below the given threshold.
double colorTolerance()
Threshold for what is considered a bad correlation.
void setBadCorrelationColor(QColor color)
QList< double > goodElements()
void setCurrentParameter1(QString current)
void setCurrentImage2(QString current)
bool colorScheme()
Use the green-red gradient if false.
void setBadElements(QList< double > badElements)
void setFocusOption(FocusOption option)
void setColorTolerance(double tolerance)
void setGoodElements(QList< double > goodElements)
void setCurrentImage1(QString current)
~MatrixOptions()
Constructor that sets up all the variables.
QMap< QString, QStringList > matrixImgsAndParams()
This slot will be called when a matrix element is clicked on.
QList< double > badElements()
void setCurrentParameter2(QString current)
double focusValue()
The value of the spot on the matrix that we need to focus on.
void setFocusValue(double value)
This widget encompasses the entire matrixDisplay scene.
This is free and unencumbered software released into the public domain.
Definition Apollo.h:16