Isis 3 Programmer Reference
PointMeasureFilterSelector.cpp
1 #include "IsisDebug.h"
2 
3 #include "PointMeasureFilterSelector.h"
4 
5 #include <algorithm>
6 #include <iostream>
7 
8 #include <QComboBox>
9 #include <QHBoxLayout>
10 
11 #include "AbstractFilter.h"
12 #include "AdjustedLatitudeFilter.h"
13 #include "AdjustedLatitudeSigmaFilter.h"
14 #include "AdjustedLongitudeFilter.h"
15 #include "AdjustedLongitudeSigmaFilter.h"
16 #include "AdjustedRadiusFilter.h"
17 #include "AdjustedRadiusSigmaFilter.h"
18 #include "APrioriLatitudeFilter.h"
19 #include "APrioriLatitudeSigmaFilter.h"
20 #include "APrioriLongitudeFilter.h"
21 #include "APrioriLongitudeSigmaFilter.h"
22 #include "APrioriRadiusFilter.h"
23 #include "APrioriRadiusSigmaFilter.h"
24 #include "ChooserNameFilter.h"
25 #include "GoodnessOfFitFilter.h"
26 #include "ImageIdFilter.h"
27 #include "LineFilter.h"
28 #include "LineResidualFilter.h"
29 #include "LineShiftFilter.h"
30 #include "MeasureCountFilter.h"
31 #include "MeasureIgnoredFilter.h"
32 #include "MeasureJigsawRejectedFilter.h"
33 #include "MeasureTypeFilter.h"
34 #include "PointEditLockedFilter.h"
35 #include "PointIdFilter.h"
36 #include "PointIgnoredFilter.h"
37 #include "PointJigsawRejectedFilter.h"
38 #include "PointTypeFilter.h"
39 #include "ResidualMagnitudeFilter.h"
40 #include "SampleFilter.h"
41 #include "SampleResidualFilter.h"
42 #include "SampleShiftFilter.h"
43 
44 
45 using std::swap;
46 
47 
48 namespace Isis {
49  PointMeasureFilterSelector::PointMeasureFilterSelector() {
50  createSelector();
51  }
52 
53 
54  PointMeasureFilterSelector::PointMeasureFilterSelector(
55  const PointMeasureFilterSelector &other) {
56  createSelector();
57  getSelector()->setCurrentIndex(other.getSelector()->currentIndex());
58  if (other.getFilter())
59  setFilter(other.getFilter()->clone());
60  }
61 
62 
63  PointMeasureFilterSelector::~PointMeasureFilterSelector() {
64  }
65 
66 
67  PointMeasureFilterSelector &PointMeasureFilterSelector::operator=(
68  const PointMeasureFilterSelector &other) {
69  *((AbstractFilterSelector *) this) = other;
70  return *this;
71  }
72 
73 
74  void PointMeasureFilterSelector::createSelector() {
75  AbstractFilterSelector::createSelector();
76 
77  getSelector()->addItem("Adjusted SP Latitude");
78  getSelector()->addItem("Adjusted SP Latitude Sigma");
79  getSelector()->addItem("Adjusted SP Longitude");
80  getSelector()->addItem("Adjusted SP Longitude Sigma");
81  getSelector()->addItem("Adjusted SP Radius");
82  getSelector()->addItem("Adjusted SP Radius Sigma");
83  getSelector()->addItem("A Priori SP Latitude");
84  getSelector()->addItem("A Priori SP Latitude Sigma");
85  getSelector()->addItem("A Priori SP Longitude");
86  getSelector()->addItem("A Priori SP Longitude Sigma");
87  getSelector()->addItem("A Priori SP Radius");
88  getSelector()->addItem("A Priori SP Radius Sigma");
89  getSelector()->addItem("Chooser Name");
90  getSelector()->addItem("Edit Locked Points");
91  getSelector()->addItem("Ignored Points");
92  getSelector()->addItem("Jigsaw Rejected Points");
93  getSelector()->addItem("Measure Count");
94  getSelector()->addItem("Point ID");
95  getSelector()->addItem("Point Type");
96  getSelector()->insertSeparator(getSelector()->count());
97  getSelector()->addItem("Goodness Of Fit");
98  getSelector()->addItem("Ignored Measures");
99  getSelector()->addItem("Image ID");
100  getSelector()->addItem("Jigsaw Rejected Measures");
101  getSelector()->addItem("Line");
102  getSelector()->addItem("Line Residual");
103  getSelector()->addItem("Line Shift");
104  getSelector()->addItem("Measure Type");
105  getSelector()->addItem("Residual Magnitude");
106  getSelector()->addItem("Sample");
107  getSelector()->addItem("Sample Residual");
108  getSelector()->addItem("Sample Shift");
109  }
110 
111 
112  void PointMeasureFilterSelector::changeFilter(int index) {
113  deleteFilter();
114 
115  if (index != 0) {
116  switch (index) {
117  case 2:
118  setFilter(new AdjustedLatitudeFilter(AbstractFilter::Points));
119  break;
120  case 3:
121  setFilter(new AdjustedLatitudeSigmaFilter(AbstractFilter::Points));
122  break;
123  case 4:
124  setFilter(new AdjustedLongitudeFilter(AbstractFilter::Points));
125  break;
126  case 5:
127  setFilter(new AdjustedLongitudeSigmaFilter(AbstractFilter::Points));
128  break;
129  case 6:
130  setFilter(new AdjustedRadiusFilter(AbstractFilter::Points));
131  break;
132  case 7:
133  setFilter(new AdjustedRadiusSigmaFilter(AbstractFilter::Points));
134  break;
135  case 8:
136  setFilter(new APrioriLatitudeFilter(AbstractFilter::Points));
137  break;
138  case 9:
139  setFilter(new APrioriLatitudeSigmaFilter(AbstractFilter::Points));
140  break;
141  case 10:
142  setFilter(new APrioriLongitudeFilter(AbstractFilter::Points));
143  break;
144  case 11:
145  setFilter(new APrioriLongitudeSigmaFilter(AbstractFilter::Points));
146  break;
147  case 12:
148  setFilter(new APrioriRadiusFilter(AbstractFilter::Points));
149  break;
150  case 13:
151  setFilter(new APrioriRadiusSigmaFilter(AbstractFilter::Points));
152  break;
153  case 14:
154  setFilter(new ChooserNameFilter(AbstractFilter::Points));
155  break;
156  case 15:
157  setFilter(new PointEditLockedFilter(AbstractFilter::Points));
158  break;
159  case 16:
160  setFilter(new PointIgnoredFilter(AbstractFilter::Points));
161  break;
162  case 17:
163  setFilter(new PointJigsawRejectedFilter(AbstractFilter::Points));
164  break;
165  case 18:
166  setFilter(new MeasureCountFilter(AbstractFilter::Points));
167  break;
168  case 19:
169  setFilter(new PointIdFilter(AbstractFilter::Points));
170  break;
171  case 20:
172  setFilter(new PointTypeFilter(AbstractFilter::Points));
173  break;
174  case 22:
175  setFilter(new GoodnessOfFitFilter(AbstractFilter::Points |
176  AbstractFilter::Measures, 1));
177  break;
178  case 23:
179  setFilter(new MeasureIgnoredFilter(AbstractFilter::Points |
180  AbstractFilter::Measures, 1));
181  break;
182  case 24:
183  setFilter(new ImageIdFilter(AbstractFilter::Points |
184  AbstractFilter::Measures, 1));
185  break;
186  case 25:
187  setFilter(new MeasureJigsawRejectedFilter(AbstractFilter::Points |
188  AbstractFilter::Measures, 1));
189  break;
190  case 26:
191  setFilter(new LineFilter(AbstractFilter::Points |
192  AbstractFilter::Measures, 1));
193  break;
194  case 27:
195  setFilter(new LineResidualFilter(AbstractFilter::Points |
196  AbstractFilter::Measures, 1));
197  break;
198  case 28:
199  setFilter(new LineShiftFilter(AbstractFilter::Points |
200  AbstractFilter::Measures, 1));
201  break;
202  case 29:
203  setFilter(new MeasureTypeFilter(AbstractFilter::Points |
204  AbstractFilter::Measures, 1));
205  break;
206  case 30:
207  setFilter(new ResidualMagnitudeFilter(AbstractFilter::Points |
208  AbstractFilter::Measures, 1));
209  break;
210  case 31:
211  setFilter(new SampleFilter(AbstractFilter::Points |
212  AbstractFilter::Measures, 1));
213  break;
214  case 32:
215  setFilter(new SampleResidualFilter(AbstractFilter::Points |
216  AbstractFilter::Measures, 1));
217  break;
218  case 33:
219  setFilter(new SampleShiftFilter(AbstractFilter::Points |
220  AbstractFilter::Measures, 1));
221  break;
222  }
223  }
224 
225  emit sizeChanged();
226  emit filterChanged();
227  }
228 }
229 
Namespace for ISIS/Bullet specific routines.
Definition: Apollo.h:31