74 lines
2.3 KiB
C++
74 lines
2.3 KiB
C++
|
|
|
|
#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)
|
|
{
|
|
// 调用文件选择对话框并选择一个 .tif 文件
|
|
QString fileName = QFileDialog::getOpenFileName(this,
|
|
u8"GPS xml", // 对话框标题
|
|
"", // 初始目录,可以设置为路径
|
|
u8"xml Files (*.xml)"); // 文件类型过滤器
|
|
|
|
if (!fileName.isEmpty()) {
|
|
this->ui->gpsXmlPathEdit->setText(fileName);
|
|
}
|
|
else {
|
|
QMessageBox::information(this, u8"没有选择文件", u8"没有选择任何文件");
|
|
}
|
|
}
|
|
void QSimulationPolynomialSAROrbitModel::onpushButtonOrbitModelClicked(bool)
|
|
{
|
|
// 调用文件选择对话框并选择一个 .tif 文件
|
|
QString fileName = QFileDialog::getSaveFileName(this,
|
|
u8"Polynomial GPS Model xml", // 对话框标题
|
|
"", // 初始目录,可以设置为路径
|
|
u8"xml Files (*.xml)"); // 文件类型过滤器
|
|
|
|
if (!fileName.isEmpty()) {
|
|
this->ui->modelxmlPathEdit->setText(fileName);
|
|
}
|
|
else {
|
|
QMessageBox::information(this, u8"没有选择文件", u8"没有选择任何文件");
|
|
}
|
|
}
|
|
|
|
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"信息", u8"模型拟合成功");
|
|
}
|
|
|
|
void QSimulationPolynomialSAROrbitModel::onbtnrejected()
|
|
{
|
|
this->close();
|
|
}
|
|
|
|
|
|
|