RasterProcessTool/Toolbox/SimulationSARTool/PowerSimulationIncoherent/QSimulationSARPolynomialOrb...

74 lines
2.3 KiB
C++
Raw Normal View History

2025-02-12 01:34:03 +00:00
#include "QSimulationSARPolynomialOrbitModel.h"
#include "ui_QSimulationSARPolynomialOrbitModel.h"
#include <QFileDialog>
#include "OribtModelOperator.h"
QSimulationPolynomialSAROrbitModel::QSimulationPolynomialSAROrbitModel(QWidget *parent)
: QDialog(parent),ui(new Ui::QSimulationSARPolynomialOrbitModelClass)
{
ui->setupUi(this);
connect(ui->pushButtongpxml, SIGNAL(clicked(bool)), this, SLOT(onpushButtongpxmlClicked(bool)));
connect(ui->pushButtonOrbitModel, SIGNAL(clicked(bool)), this, SLOT(onpushButtonOrbitModelClicked(bool)));
connect(ui->buttonBox, SIGNAL(accepted()), this, SLOT(onbtnaccepted()));
connect(ui->buttonBox, SIGNAL(rejected()), this, SLOT(onbtnrejected()));
}
QSimulationPolynomialSAROrbitModel::~QSimulationPolynomialSAROrbitModel()
{}
void QSimulationPolynomialSAROrbitModel::onpushButtongpxmlClicked(bool)
{
// <20><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1>һ<EFBFBD><D2BB> .tif <20>ļ<EFBFBD>
QString fileName = QFileDialog::getOpenFileName(this,
u8"GPS xml", // <20>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
"", // <20><>ʼĿ¼<C4BF><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ·<CEAA><C2B7>
u8"xml Files (*.xml)"); // <20>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>͹<EFBFBD><CDB9><EFBFBD><EFBFBD><EFBFBD>
if (!fileName.isEmpty()) {
this->ui->gpsXmlPathEdit->setText(fileName);
}
else {
QMessageBox::information(this, u8"û<EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>", u8"û<EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><EFBFBD>ļ<EFBFBD>");
}
}
void QSimulationPolynomialSAROrbitModel::onpushButtonOrbitModelClicked(bool)
{
// <20><><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>ѡ<EFBFBD><D1A1><EFBFBD>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD>ѡ<EFBFBD><D1A1>һ<EFBFBD><D2BB> .tif <20>ļ<EFBFBD>
QString fileName = QFileDialog::getSaveFileName(this,
u8"Polynomial GPS Model xml", // <20>Ի<EFBFBD><D4BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
"", // <20><>ʼĿ¼<C4BF><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ·<CEAA><C2B7>
u8"xml Files (*.xml)"); // <20>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>͹<EFBFBD><CDB9><EFBFBD><EFBFBD><EFBFBD>
if (!fileName.isEmpty()) {
2025-02-13 04:10:52 +00:00
this->ui->modelxmlPathEdit->setText(fileName);
2025-02-12 01:34:03 +00:00
}
else {
QMessageBox::information(this, u8"û<EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>", u8"û<EFBFBD><EFBFBD>ѡ<EFBFBD><EFBFBD><EFBFBD>κ<EFBFBD><EFBFBD>ļ<EFBFBD>");
}
}
void QSimulationPolynomialSAROrbitModel::onbtnaccepted()
{
QString gpsxmlpath = this->ui->gpsXmlPathEdit->text();
QString outmodelpath = this->ui->modelxmlPathEdit->text();
qDebug() << "Input GPS Xml:\t" << gpsxmlpath;
qDebug() << "out Model Xml:\t" << outmodelpath;
PolynomialOrbitModel model;
QList<SatellitePos> sateposes = loadNodesFromXml(gpsxmlpath);
model.fitPolynomial(sateposes);
model.saveToXml(outmodelpath);
qDebug() << "PolynomialSAROrbitModel fit finished!!";
QMessageBox::information(this, u8"<EFBFBD><EFBFBD>Ϣ", u8"ģ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϳɹ<EFBFBD>");
}
void QSimulationPolynomialSAROrbitModel::onbtnrejected()
{
this->close();
}