Isis 3 Programmer Reference
|
#include <JigsawSetupDialog.h>
Public Slots | |
void | slotTextChanged (const QString &text) |
void | checkIsValid () |
void | treeViewSelectionChanged (const QItemSelection &selected, const QItemSelection &deselected) |
Public Member Functions | |
JigsawSetupDialog (Project *project, bool useLastSettings=true, bool readOnly=false, QWidget *parent=0) | |
Control * | selectedControl () |
QString | selectedControlName () |
QString | outputControlName () |
BundleSettingsQsp | bundleSettings () |
void | loadSettings (const BundleSettingsQsp settings) |
Loads the passed bundle settings into the setup dialog. More... | |
void | selectControl (const QString &controlName) |
Selects a control in the control network combo box by trying to find an item with the matching name. More... | |
Private Slots | |
void | on_pointRadiusSigmaCheckBox_toggled (bool checked) |
void | on_inputControlNetCombo_currentTextChanged (const QString &arg1) |
void | on_pointLatitudeSigmaLineEdit_textChanged (const QString &arg1) |
void | on_pointLongitudeSigmaLineEdit_textChanged (const QString &arg1) |
void | on_pointRadiusSigmaLineEdit_textChanged (const QString &arg1) |
void | on_outlierRejectionMultiplierLineEdit_textChanged (const QString &arg1) |
void | on_maximumLikelihoodModel1QuantileLineEdit_textChanged (const QString &arg1) |
void | on_maximumLikelihoodModel2QuantileLineEdit_textChanged (const QString &arg1) |
void | on_maximumLikelihoodModel3QuantileLineEdit_textChanged (const QString &arg1) |
void | on_sigma0ThresholdLineEdit_textChanged (const QString &arg1) |
void | on_maximumIterationsLineEdit_textChanged (const QString &arg1) |
void | on_maximumLikelihoodModel1ComboBox_currentIndexChanged (int index) |
void | on_maximumLikelihoodModel2ComboBox_currentIndexChanged (int index) |
void | on_maximumLikelihoodModel3ComboBox_currentIndexChanged (int index) |
void | on_outlierRejectionCheckBox_stateChanged (int arg1) |
void | on_poleRaCheckBox_stateChanged (int arg1) |
void | on_poleRaVelocityCheckBox_stateChanged (int arg1) |
void | on_poleDecCheckBox_stateChanged (int arg1) |
void | on_poleDecVelocityCheckBox_stateChanged (int arg1) |
void | on_spinRateCheckBox_stateChanged (int arg1) |
void | on_primeMeridianOffsetCheckBox_stateChanged (int arg1) |
void | on_radiiButtonGroupClicked (int arg1) |
void | on_aRadiusLineEdit_textChanged (const QString &arg1) |
void | on_targetBodyComboBox_currentIndexChanged (int index) |
void | on_spkSolveDegreeSpinBox_valueChanged (int arg1) |
Slot that listens for changes to the SPK Solve Degree spin box. More... | |
void | on_ckSolveDegreeSpinBox_valueChanged (int arg1) |
Slot that listens for changes to the CK Solve Degree spin box. More... | |
void | on_rightAscensionLineEdit_textChanged (const QString &arg1) |
void | on_declinationLineEdit_textChanged (const QString &arg1) |
void | on_rightAscensionVelocityLineEdit_textChanged (const QString &arg1) |
void | on_declinationVelocityLineEdit_textChanged (const QString &arg1) |
void | on_spinRateLineEdit_textChanged (const QString &arg1) |
void | on_primeMeridianOffsetLineEdit_textChanged (const QString &arg1) |
void | on_applySettingsPushButton_clicked () |
Slot for handling the Observation Solve Settings tab's Apply button. More... | |
void | on_positionComboBox_currentIndexChanged (const QString &arg1) |
Slot that listens for when the Instrument Position Solve Option combobox changes. More... | |
void | on_pointingComboBox_currentIndexChanged (const QString &arg1) |
Slot that listens for when the Instrument Pointing Solve Option combobox changes. More... | |
void | updateSolveSettingsSigmaTables (const QComboBox *solveOptionComboBox, QTableWidget *table) |
Slot that updates the sigma tables based on the current solve option selection. More... | |
void | validateSigmaValue (QTableWidgetItem *) |
Validates the a priori sigma values for a given QTableWidgetItem. More... | |
void | validateSigmaTables () |
Validates the tables in the observation solve settings tab and enables/disables the OK button appropriately. More... | |
Private Member Functions | |
void | makeReadOnly () |
void | fillFromSettings (const BundleSettingsQsp settings) |
void | showTargetParametersGroupBox () |
void | hideTargetParametersGroupBox () |
void | updateBundleObservationSolveSettings (BundleObservationSolveSettings &boss) |
updateBundleObservationSolveSettings: This function sets the parameters of a BundleObservationSolveSettings object by reading user settings from the BOSS tab, as well as reading in the selected images on the BOSS QTreeView these BOSS settings are to be applied to. More... | |
void | createObservationSolveSettingsTreeView () |
Private Attributes | |
Ui::JigsawSetupDialog * | m_ui |
Project * | m_project |
BundleSettingsQsp | m_bundleSettings |
The BundleSettings Object created by this dialog. More... | |
2014-04-21 Ken Edmundson - Original version.
2014-07-16 Jeannie Backer - Use MaximumLikelihoodWFunctions static method to convert string to Model enum.
2014-07-23 Jeannie Backer - Added selectedControlName(). Commented out degree combo box enable calls.
2015-02-20 Jeannie Backer - Replaced BundleResults references with BundleSolutionInfo and BundleStatistics references with BundleResults due to class name changes.
2015-09-03 Jeannie Backer - Updated to be more compliant with ISIS coding standards. Changed condition of if-statements for QLineEdit::setText for the global a priori sigma variables from less than zero to !IsNullPixel for consistency with bundle classes.
2016-08-18 Jeannie Backer - Removed all references to deprecated solve methods SpeckialK and OldSparse. References #4162.
2016-08-25 Adam Paquette - Updated documentation. Fixes #4299.
2017-04-25 Ian Humphrey - Added public loadSettings() to allow JigsawRunWidget to load its current settings into the setup dialog. Fixes #4817.
2017-04-27 Ian Humphrey - Added selectControl() to allow JigsawRunWidget to properly tell the setup dialog which control to select in its combo box. References #4817.
2017-05-16 Tracie Sucharski - Comment qDebug statements.
2017-05-23 Tracie Sucharski - Added a QGroupBox for the target parameters so that the box can be disabled/enabled rather than each parameter separately.
2017-06-07 Ian Humphrey - Modified fillFromSettings() so when the weightings are loaded into the text line edits they are set to modified, which allows for proper restoring of user defined weightings.
2017-08-14 Summer Stapleton - Updated icons/images to properly licensed or open source images. Fixes #5105.
2018-03-19 Ken Edmundson - Added bundle output control network file name. Added method on_controlNetworkComboBox_currentTextChanged to update the output control network filename when the input control network selected filename changes. E.g. if input control net name is fred.net, the output filename QLineEdit is automatically changed to fred-out.net. The user can always manually change the output control net name to anything they choose.
2018-06-01 Christopher Combs - Added support for ui changes, exclusive options and input validators.
2018-06-21 Ian Humphrey - Added on_applySettingsPushButtonClicked() to listen for when the apply button is clicked on the observation solve settings tab. References #497.
2018-06-21 Tyler Wilson - Added support in the Bundle Observations Solve Settings (BOSS) tab for displaying user-selected images from the main Project treeview. All changes were made in the createObservationSolveSettingsTreeView() function. References #497.
2018-06-25 Ian Humphrey - Implemented the position and pointing a priori sigma tables in the observation solve settings tab. References #497.
2018-06-26 Tyler Wilson - Added the function updateBundleObservationSolveSettings(BundleObservationSolveSettings &) which grabs BOSS settings from the JSD BOSS tab for selected images in the BOSS QTreeView and saves them in a BOSS object.
2018-06-26 Tyler Wilson - Added support in updateBundleObservationSolveSettings(BundleObservationSolveSettings &) for the user to set an arbitrary number of position/pointing Apriori Sigma values beyond position/velocity/acceleration. References #497.
2018-06-27 Ian Humphrey - Added validateSigmaTables() that checks if there are any invalid a priori sigma values whenever an a priori sigma values changes. If any value is invalid, the OK and Apply Settings buttons are disabled until all the a priori sigma values are valid again. References #497.
2018-06-28 Christopher Combs - Implemented pseudocode in on_applySettings... method. Added selected images to default BOSS object. References #497.
2018-07-01 Ian Humphrey - Added updateSolveSettingsSigmaTables() to try to generalize how the sigma tables are updated. Solve options have their respective solve degree and degree combo boxes set to 2 unless the solve option is ALL. References #497.
Definition at line 97 of file JigsawSetupDialog.h.
void Isis::JigsawSetupDialog::loadSettings | ( | const BundleSettingsQsp | settings | ) |
Loads the passed bundle settings into the setup dialog.
This is used by JigsawDialog to load its current settings when not using the last (most recent) bundle settings in the project.
const | BundleSettingsQsp settings Shared pointer to the settings to load up. |
Definition at line 691 of file JigsawSetupDialog.cpp.
|
privateslot |
Slot for handling the Observation Solve Settings tab's Apply button.
Retrieve's the selected ProjectItems and adds their images' serial numbers to a new BundleObservationSolveSettings object. Serial numbers will be removed from all other BOSS objects, and empty BOSS objects will be removed.
Definition at line 1808 of file JigsawSetupDialog.cpp.
References Isis::BundleObservationSolveSettings::addObservationNumber(), Isis::ProjectItem::image(), Isis::ProjectItem::isImage(), Isis::ProjectItem::isImageList(), Isis::ProjectItemModel::itemFromIndex(), m_bundleSettings, Isis::Image::observationNumber(), and updateBundleObservationSolveSettings().
|
privateslot |
Slot that listens for changes to the CK Solve Degree spin box.
This slot populates the Instrument Pointing Solve Options table according to the value of the CK Solve Degree. Rows are added depending on the degree set, where number of rows added is equal to the CK Solve Degree + 1. Note that this relies on the updateSolveSettingsSigmaTables slot, which uses the CK Solve Degree if the ALL pointing option is selected.
int | Value the CK Solve Degree spin box was changed to. |
Definition at line 1512 of file JigsawSetupDialog.cpp.
References updateSolveSettingsSigmaTables().
|
privateslot |
Slot that listens for when the Instrument Pointing Solve Option combobox changes.
This slot updates the value of the CK Solve Degree spin box according to which solve pointing option is selected. This slot also disables the CK spin boxes whenever a solve pointing that is not ALL is selected.
const | QString & Reference to the value that the pointing option combobox was changed to. |
Definition at line 1671 of file JigsawSetupDialog.cpp.
References updateSolveSettingsSigmaTables().
|
privateslot |
Slot that listens for when the Instrument Position Solve Option combobox changes.
This slot updates the value of the SPK Solve Degree spin box according to which solve position option is selected. This slot also disables the SPK spin boxes whenever a solve position that is not ALL is selected.
const | QString & Reference to the value that the position option combobox was changed to. |
Definition at line 1639 of file JigsawSetupDialog.cpp.
References updateSolveSettingsSigmaTables().
|
privateslot |
Slot that listens for changes to the SPK Solve Degree spin box.
This slot populates the Instrument Position Solve Options table according to the value of the SPK Solve Degree. Rows are added depending on the degree set, where number of rows added is equal to the SPK Solve Degree + 1. Note that this relies on the updateSolveSettingsSigmaTables slot, which uses the SPK Solve Degree if the ALL position option is selected.
int | Value the SPK Solve Degree spin box was changed to. |
Definition at line 1496 of file JigsawSetupDialog.cpp.
References updateSolveSettingsSigmaTables().
void Isis::JigsawSetupDialog::selectControl | ( | const QString & | controlName | ) |
Selects a control in the control network combo box by trying to find an item with the matching name.
If the name is found in the combo box, the box's index is set to that found control network index. If the name is not found and the box is not empty, the current index is set to 0 (the first item). If the name is not found and the box is empty, the index is set to -1 (see Qt).
const | QString &controlName The name of the control to try to find in the combo box. |
Definition at line 705 of file JigsawSetupDialog.cpp.
|
private |
updateBundleObservationSolveSettings: This function sets the parameters of a BundleObservationSolveSettings object by reading user settings from the BOSS tab, as well as reading in the selected images on the BOSS QTreeView these BOSS settings are to be applied to.
BundleObservationSolveSettings | &boss The object which stores user-specified settings from the BOSS tab. |
Definition at line 749 of file JigsawSetupDialog.cpp.
References Isis::BundleObservationSolveSettings::addObservationNumber(), Isis::ProjectItem::isImage(), Isis::ProjectItemModel::itemFromIndex(), Isis::Image::observationNumber(), Isis::BundleObservationSolveSettings::setInstrumentId(), Isis::BundleObservationSolveSettings::setInstrumentPointingSettings(), and Isis::BundleObservationSolveSettings::setInstrumentPositionSettings().
Referenced by on_applySettingsPushButton_clicked().
|
privateslot |
Slot that updates the sigma tables based on the current solve option selection.
This will add/remove rows based on the solve option selected, and if ALL, the current solve degree value.
const | QComboBox * The solve option combo box to read the solve option from |
QTableWidget | * The a priori sigma table we are going to update rows for |
Definition at line 1527 of file JigsawSetupDialog.cpp.
References validateSigmaTables().
Referenced by on_ckSolveDegreeSpinBox_valueChanged(), on_pointingComboBox_currentIndexChanged(), on_positionComboBox_currentIndexChanged(), and on_spkSolveDegreeSpinBox_valueChanged().
|
privateslot |
Validates the tables in the observation solve settings tab and enables/disables the OK button appropriately.
This method validates both the position and pointing a priori sigma tables in the observation solve settings tab. If any of the sigma values are invalid, the JigsawSetupDialog's OK button is disabled. If all of the sigma values are valid, the JigsawSetupDialog's OK button is (re)enabled.
Definition at line 1459 of file JigsawSetupDialog.cpp.
Referenced by updateSolveSettingsSigmaTables(), and validateSigmaValue().
|
privateslot |
Validates the a priori sigma values for a given QTableWidgetItem.
This will only validate items in the a priori sigma column. Valid a priori sigma values are "FREE" or any positive double. Items that are invalid will be marked with a red background color.
QTableWidgetItem* | Pointer to the QTableWidgetItem to be validated. |
Definition at line 1415 of file JigsawSetupDialog.cpp.
References validateSigmaTables().
|
private |
The BundleSettings Object created by this dialog.
Definition at line 195 of file JigsawSetupDialog.h.
Referenced by on_applySettingsPushButton_clicked().