diff --git a/BaseCommonLibrary/BaseTool/FileOperator.cpp b/BaseCommonLibrary/BaseTool/FileOperator.cpp index c075ce3..1d543cc 100644 --- a/BaseCommonLibrary/BaseTool/FileOperator.cpp +++ b/BaseCommonLibrary/BaseTool/FileOperator.cpp @@ -269,8 +269,8 @@ bool BASECONSTVARIABLEAPI unTarfile(QString inTargzPath, QString outGzFolderPath // tar -zxvf 压缩包路径 文件或目录路径 QProcess process; // 同步执行(阻塞当前线程) - QString cmdstr = QString("tar -zxvf %1 %2").arg(inTargzPath).arg(outGzFolderPath); - process.start("cmd.exe", QStringList() << "/c" << cmdstr); // "/c" 表示执行后关闭 CMD + QString cmdstr = QString("tar -zxvf %1 -C %2").arg(inTargzPath).arg(outGzFolderPath); + process.execute("cmd.exe", QStringList() << "/c" << cmdstr); // "/c" 表示执行后关闭 CMD process.waitForFinished(); // 等待执行完成 // 获取输出 QString output = QString::fromLocal8Bit(process.readAllStandardOutput()); diff --git a/GF3CalibrationAndOrthLib/GF3CalibrationAndGeocodingClass.cpp b/GF3CalibrationAndOrthLib/GF3CalibrationAndGeocodingClass.cpp index bdbf7ea..6eb4cea 100644 --- a/GF3CalibrationAndOrthLib/GF3CalibrationAndGeocodingClass.cpp +++ b/GF3CalibrationAndOrthLib/GF3CalibrationAndGeocodingClass.cpp @@ -252,13 +252,15 @@ ErrorCode RD_PSTN(double& refrange, double& lamda, double& timeR, double& R, dou inct = dt*(dplerTheory2-dplerNumber1) / (dplerTheory2 - dplerTheory1); if (std::abs(dplerNumber1 - dplerTheory2) < 1e-6 || std::abs(inct) < 1.0e-4) { + R = R1; // б + return ErrorCode::SUCCESS; break; } inct = std::abs(inct) < 10 ?inct:inct*1e-2; timeR = timeR - inct; } - R = R1; // б - return ErrorCode::SUCCESS; + return ErrorCode::FAIL; + } ErrorCode GF3RDCreateLookTable(QString inxmlPath, QString indemPath, QString outworkdir, QString outlooktablePath,QString outLocalIncidenceAnglePath,bool localincAngleFlag) @@ -574,8 +576,8 @@ ErrorCode GF3RDProcess(QString inxmlPath, QString indemPath, QString outworkdir, long sourceespgcode = getProjectEPSGCodeByLon_Lat(centerlon, centerlat); long demespgcode = GetEPSGFromRasterFile(indemPath); double grid_resolution = gridx < gridy ? gridx : gridy; - double degreePerPixelX = grid_resolution / 110000.0; - double degreePerPixelY = grid_resolution / 110000.0; + double degreePerPixelX = getPixelSpacingInDegree(grid_resolution); + double degreePerPixelY = getPixelSpacingInDegree(grid_resolution); bool meter2degreeflag = ConvertResolutionToDegrees( sourceespgcode, grid_resolution, @@ -586,8 +588,8 @@ ErrorCode GF3RDProcess(QString inxmlPath, QString indemPath, QString outworkdir, ); if (!meter2degreeflag) { qDebug() << u8"תֱΪγʧ"; - degreePerPixelX = grid_resolution / 110000.0; - degreePerPixelY = grid_resolution / 110000.0; + degreePerPixelX = getPixelSpacingInDegree(grid_resolution); + degreePerPixelY = getPixelSpacingInDegree(grid_resolution); } qDebug() << u8"DEMӰΧ:"; qDebug() << u8"ֱʣ"< Windows - false + DebugFull true true diff --git a/GF3StripPatchProcess/QGF3StripBatchProcessDialog.cpp b/GF3StripPatchProcess/QGF3StripBatchProcessDialog.cpp index 085f58d..a2322dc 100644 --- a/GF3StripPatchProcess/QGF3StripBatchProcessDialog.cpp +++ b/GF3StripPatchProcess/QGF3StripBatchProcessDialog.cpp @@ -19,6 +19,7 @@ QGF3StripBatchProcessDialog::QGF3StripBatchProcessDialog(QWidget *parent) QObject::connect(ui->checkBoxDEM, SIGNAL(stateChanged(int)), this, SLOT(ontstateChanged(int))); QObject::connect(ui->buttonBox, SIGNAL(rejected()), this, SLOT(onreject())); QObject::connect(ui->buttonBox, SIGNAL(accepted()), this, SLOT(onaccept())); + QObject::connect(ui->pushButton_lineDEM, SIGNAL(clicked(bool)), this, SLOT(onpushButtonDEM(bool))); @@ -40,21 +41,23 @@ void QGF3StripBatchProcessDialog::onaccept() } // ȡֱ double resolutionMeter = ui->doubleSpinBox->value();// ֱת - double resoiutionDegree = getPixelSpacingInDegree(resolutionMeter);// -> + //double resoiutionDegree = getPixelSpacingInDegree(resolutionMeter);// -> QString workspacedirpath = ui->lineEditWorkDir->text(); this->ui->progressBar->setValue(0); this->ui->progressBar->setMaximum(ui->listWidgetMetaxml->count()); + bool polarHH2VV = ui->checkoutPolarHH2VV->isChecked(); for (long i = 0; i < ui->listWidgetMetaxml->count(); i++) { QString inTargzFilePath = ui->listWidgetMetaxml->item(i)->text(); - + this->ui->label_info->setText(QString(u8"䴦%1").arg(inTargzFilePath)); GF3MainOrthProcess(demPath, inTargzFilePath, workspacedirpath, - resoiutionDegree, - true); + resolutionMeter, + polarHH2VV); this->ui->progressBar->setValue(i); } + QMessageBox::information(this, u8"䴦", u8"䴦"); } void QGF3StripBatchProcessDialog::onreject() @@ -117,6 +120,17 @@ void QGF3StripBatchProcessDialog::ontstateChanged(int checked) } } +void QGF3StripBatchProcessDialog::onpushButtonDEM(bool flag) +{ + QString fileName = QFileDialog::getOpenFileName(this, u8"ѡDEMļ", "", u8"tif (*.tif);;All Files (*)"); + if (!fileName.isEmpty()) { + ui->lineEdit_DEM->setText(fileName); + } + else { + QMessageBox::information(this, u8"ûѡļ", u8"ûѡκļ"); + } +} + void showQGF3StripBatchProcessDialog(QWidget* parent) { QGF3StripBatchProcessDialog* dialog = new QGF3StripBatchProcessDialog(parent); diff --git a/GF3StripPatchProcess/QGF3StripBatchProcessDialog.h b/GF3StripPatchProcess/QGF3StripBatchProcessDialog.h index 634bab9..a87a156 100644 --- a/GF3StripPatchProcess/QGF3StripBatchProcessDialog.h +++ b/GF3StripPatchProcess/QGF3StripBatchProcessDialog.h @@ -24,7 +24,7 @@ public slots: void onpushButtonWorkSpaceClicked(bool); void ontstateChanged(int checked); - + void onpushButtonDEM(bool flag); private: Ui::QGF3StripBatchProcessDialogClass* ui; diff --git a/GF3StripPatchProcess/QGF3StripBatchProcessDialog.ui b/GF3StripPatchProcess/QGF3StripBatchProcessDialog.ui index 4553611..cae394c 100644 --- a/GF3StripPatchProcess/QGF3StripBatchProcessDialog.ui +++ b/GF3StripPatchProcess/QGF3StripBatchProcessDialog.ui @@ -175,6 +175,13 @@ + + + + 极化转换:HH->VV + + + diff --git a/GF3StripPatchProcess/main.cpp b/GF3StripPatchProcess/main.cpp index 229703d..e408fdf 100644 --- a/GF3StripPatchProcess/main.cpp +++ b/GF3StripPatchProcess/main.cpp @@ -12,6 +12,7 @@ #include #include #include +#include #pragma execution_character_set("utf-8") @@ -27,7 +28,6 @@ void customMessageHandler(QtMsgType type, const QMessageLogContext& context, con outFile.open(QIODevice::WriteOnly | QIODevice::Append); QTextStream ts(&outFile); - switch (type) { case QtDebugMsg: { @@ -38,7 +38,8 @@ void customMessageHandler(QtMsgType type, const QMessageLogContext& context, con .arg(context.line) .arg(function); ts << logMessage << "\n"; - break; + std::cout << logMessage.toLocal8Bit().constData() << std::endl; + break; } case QtInfoMsg: { @@ -49,7 +50,8 @@ void customMessageHandler(QtMsgType type, const QMessageLogContext& context, con .arg(context.line) .arg(function); ts << logMessage << "\n"; - break; + std::cout << logMessage.toLocal8Bit().constData() << std::endl; + break; } case QtWarningMsg: { @@ -71,7 +73,8 @@ void customMessageHandler(QtMsgType type, const QMessageLogContext& context, con .arg(context.line) .arg(function); ts << logMessage << "\n"; - break; + std::cout << logMessage.toLocal8Bit().constData() << std::endl; + break; } case QtFatalMsg: { @@ -82,19 +85,19 @@ void customMessageHandler(QtMsgType type, const QMessageLogContext& context, con .arg(context.line) .arg(function); ts << logMessage << "\n"; - abort(); + std::cout << logMessage.toLocal8Bit().constData() << std::endl; + abort(); } } - } -int main(int argc, char *argv[]) +int main(int argc, char* argv[]) { qInstallMessageHandler(customMessageHandler); - QApplication a(argc, argv); + QApplication a(argc, argv); showQGF3StripBatchProcessDialog(nullptr); - return a.exec(); + return a.exec(); } diff --git a/GF3StripPatchProcess/proj.db b/GF3StripPatchProcess/proj.db new file mode 100644 index 0000000..05c2119 Binary files /dev/null and b/GF3StripPatchProcess/proj.db differ