diff --git a/LAMPDataProcessEXE/main.cpp b/LAMPDataProcessEXE/main.cpp index fc9f78d..e07187f 100644 --- a/LAMPDataProcessEXE/main.cpp +++ b/LAMPDataProcessEXE/main.cpp @@ -34,7 +34,7 @@ void customMessageHandler(QtMsgType type, const QMessageLogContext& context, con .arg(file) .arg(context.line) .arg(function); - ts << logMessage; + ts << logMessage << "\n"; _showIntance->ShowMessageInfo(logMessage); break; } @@ -46,7 +46,7 @@ void customMessageHandler(QtMsgType type, const QMessageLogContext& context, con .arg(file) .arg(context.line) .arg(function); - ts << logMessage; + ts << logMessage << "\n"; _showIntance->ShowMessageInfo(logMessage); break; } @@ -58,7 +58,7 @@ void customMessageHandler(QtMsgType type, const QMessageLogContext& context, con .arg(file) .arg(context.line) .arg(function); - ts << logMessage; + ts << logMessage << "\n"; break; } case QtCriticalMsg: @@ -69,7 +69,7 @@ void customMessageHandler(QtMsgType type, const QMessageLogContext& context, con .arg(file) .arg(context.line) .arg(function); - ts << logMessage; + ts << logMessage << "\n"; _showIntance->ShowMessageInfo(logMessage); break; } @@ -81,7 +81,7 @@ void customMessageHandler(QtMsgType type, const QMessageLogContext& context, con .arg(file) .arg(context.line) .arg(function); - ts << logMessage; + ts << logMessage<<"\n"; _showIntance->ShowMessageInfo(logMessage); abort(); } diff --git a/LAMPSARProcessProgram/enc_temp_folder/40c6fee397d8fbe9a25d5217d68c67/RasterWidgetMessageShow.cpp b/LAMPSARProcessProgram/enc_temp_folder/40c6fee397d8fbe9a25d5217d68c67/RasterWidgetMessageShow.cpp new file mode 100644 index 0000000..302b90c --- /dev/null +++ b/LAMPSARProcessProgram/enc_temp_folder/40c6fee397d8fbe9a25d5217d68c67/RasterWidgetMessageShow.cpp @@ -0,0 +1,44 @@ +#include "RasterWidgetMessageShow.h" + +namespace RasterMessageShow { + + RasterWidgetMessageShow* RasterWidgetMessageShow::_instance = nullptr; + + RasterWidgetMessageShow::RasterWidgetMessageShow(QObject* parant):QObject(parant) + { + QObject::connect(this, SIGNAL(ShowMessage(QString)), this, SLOT(ShowMessageInfo(QString))); + } + + RasterWidgetMessageShow::~RasterWidgetMessageShow() + { + } + + void RasterWidgetMessageShow::bandingTextBrowserMessage(QTextBrowser* intextBrowserMessage) + { + this->textBrowserMessage = intextBrowserMessage; + } + + QTextBrowser* RasterWidgetMessageShow::getTextBrowserMessage() + { + return textBrowserMessage; + } + + void RasterWidgetMessageShow::ShowMessageInfo(QString Message) + { + if (nullptr != this->textBrowserMessage) { + this->textBrowserMessage->append(Message); + } + else {} + } + + RasterWidgetMessageShow* RasterWidgetMessageShow::getInstance(QObject* parant) + { + if (nullptr == RasterWidgetMessageShow::_instance) { + RasterWidgetMessageShow::_instance = new RasterWidgetMessageShow(parant); + } + return RasterWidgetMessageShow::_instance; + } + + + +}; \ No newline at end of file diff --git a/RasterMainWidgetGUI/RasterWidgetMessageShow.cpp b/RasterMainWidgetGUI/RasterWidgetMessageShow.cpp index 302b90c..86c2161 100644 --- a/RasterMainWidgetGUI/RasterWidgetMessageShow.cpp +++ b/RasterMainWidgetGUI/RasterWidgetMessageShow.cpp @@ -27,6 +27,7 @@ namespace RasterMessageShow { { if (nullptr != this->textBrowserMessage) { this->textBrowserMessage->append(Message); + } else {} } diff --git a/Toolbox/BaseToolbox/BaseToolbox.cpp b/Toolbox/BaseToolbox/BaseToolbox.cpp index 8b032e6..487b0e6 100644 --- a/Toolbox/BaseToolbox/BaseToolbox.cpp +++ b/Toolbox/BaseToolbox/BaseToolbox.cpp @@ -8,6 +8,7 @@ #include "RasterMainWidget.h" #include "ToolBoxWidget.h" #include "QDEMResampleDialog.h" +#include "DEMLLA2XYZTool.h" @@ -101,14 +102,13 @@ void MergeRasterProcessToolButton::excute() void RegisterPreToolBox(LAMPMainWidget::RasterMainWidget* mainwindows, ToolBoxWidget* toolbox) { - - emit toolbox->addBoxToolItemSIGNAL(new GF3ImportDataToolButton(toolbox)); emit toolbox->addBoxToolItemSIGNAL(new Complex2AmpPhaseToolButton(toolbox)); emit toolbox->addBoxToolItemSIGNAL(new QRDOrthProcessClassToolButton(toolbox)); emit toolbox->addBoxToolItemSIGNAL(new QOrthSlrRasterToolButton(toolbox)); emit toolbox->addBoxToolItemSIGNAL(new MergeRasterProcessToolButton(toolbox)); emit toolbox->addBoxToolItemSIGNAL(new QDEMResampleDialogToolButton(toolbox)); + emit toolbox->addBoxToolItemSIGNAL(new QDEMLLA2XYZToolToolButton(toolbox)); } QDEMResampleDialogToolButton::QDEMResampleDialogToolButton(QWidget* parent) @@ -127,3 +127,20 @@ void QDEMResampleDialogToolButton::excute() QDEMResampleDialog* dialog = new QDEMResampleDialog(); dialog->show(); } + +QDEMLLA2XYZToolToolButton::QDEMLLA2XYZToolToolButton(QWidget* parent) +{ + this->toolPath = QVector(0); + this->toolPath.push_back(u8"基础处理"); + this->toolname = QString(u8"DEM(WGS84)LLA转为XYZ"); +} + +QDEMLLA2XYZToolToolButton::~QDEMLLA2XYZToolToolButton() +{ +} + +void QDEMLLA2XYZToolToolButton::excute() +{ + DEMLLA2XYZTool* dialog = new DEMLLA2XYZTool(); + dialog->show(); +} diff --git a/Toolbox/BaseToolbox/BaseToolbox.h b/Toolbox/BaseToolbox/BaseToolbox.h index d3533fe..8846ffa 100644 --- a/Toolbox/BaseToolbox/BaseToolbox.h +++ b/Toolbox/BaseToolbox/BaseToolbox.h @@ -68,10 +68,22 @@ class BASETOOLBOX_EXPORT QDEMResampleDialogToolButton : public QToolAbstract { public: QDEMResampleDialogToolButton(QWidget* parent = nullptr); ~QDEMResampleDialogToolButton(); -public : +public slots: virtual void excute() override; }; +class BASETOOLBOX_EXPORT QDEMLLA2XYZToolToolButton : public QToolAbstract { + Q_OBJECT +public: + QDEMLLA2XYZToolToolButton(QWidget* parent = nullptr); + ~QDEMLLA2XYZToolToolButton(); +public slots: + virtual void excute() override; + +}; + + + extern "C" BASETOOLBOX_EXPORT void RegisterPreToolBox(LAMPMainWidget::RasterMainWidget* mainwindows, ToolBoxWidget* toolbox); diff --git a/Toolbox/BaseToolbox/BaseToolbox/DEMLLA2XYZTool.cpp b/Toolbox/BaseToolbox/BaseToolbox/DEMLLA2XYZTool.cpp index 0362050..0763f16 100644 --- a/Toolbox/BaseToolbox/BaseToolbox/DEMLLA2XYZTool.cpp +++ b/Toolbox/BaseToolbox/BaseToolbox/DEMLLA2XYZTool.cpp @@ -10,8 +10,8 @@ DEMLLA2XYZTool::DEMLLA2XYZTool(QWidget *parent) { ui.setupUi(this); - connect(this->ui.dialogBtn, SIGNAL(accept()), this, SLOT(accept())); - connect(this->ui.dialogBtn, SIGNAL(reject()), this, SLOT(reject())); + connect(this->ui.dialogBtn, SIGNAL(accepted()), this, SLOT(onaccept())); + connect(this->ui.dialogBtn, SIGNAL(rejected()), this, SLOT(onreject())); connect(this->ui.DEMWSG84SelectBtn, SIGNAL(clicked()), this, SLOT(onDEMWSG84SelectBtn_Clicked())); connect(this->ui.DEMXYZSelectBtn, SIGNAL(clicked()), this, SLOT(onDEMXYZSelectBtn_Clicked())); connect(this->ui.BtnSloper, SIGNAL(clicked()), this, SLOT(onBtnSloper_Clicked())); @@ -22,7 +22,7 @@ DEMLLA2XYZTool::DEMLLA2XYZTool(QWidget *parent) DEMLLA2XYZTool::~DEMLLA2XYZTool() {} -void DEMLLA2XYZTool::accept() +void DEMLLA2XYZTool::onaccept() { QString DEMPath = this->ui.lineEditLLA->text(); QString XYZPath = this->ui.lineEditXYZ->text(); @@ -36,14 +36,14 @@ void DEMLLA2XYZTool::accept() // 分块计算并转换为XYZ - Eigen::MatrixXd demArr = demds.getData(0, 0, demds.height, demds.width, 1); - Eigen::MatrixXd demR = demArr; + //Eigen::MatrixXd demArr = demds.getData(0, 0, demds.height, demds.width, 1); + //Eigen::MatrixXd demR = demArr; Landpoint LandP{ 0,0,0 }; Point3 GERpoint{ 0,0,0 }; double R = 0; double dem_row = 0, dem_col = 0, dem_alt = 0; - long line_invert = 1000; + long line_invert = Memory1MB/8.0/ demds.width*2000; double rowidx = 0; double colidx = 0; @@ -60,6 +60,7 @@ void DEMLLA2XYZTool::accept() int datarows = demdata.rows(); int datacols = demdata.cols(); +#pragma omp parallel for for (int i = 0; i < datarows; i++) { for (int j = 0; j < datacols; j++) { rowidx = i + max_rows_ids; @@ -75,7 +76,7 @@ void DEMLLA2XYZTool::accept() demxyz.saveImage(xyzdata_y, max_rows_ids, 0, 2); demxyz.saveImage(xyzdata_z, max_rows_ids, 0, 3); - this->ui.progressBar->setValue(max_rows_ids/ demds.height/2); + this->ui.progressBar->setValue(100.0*(max_rows_ids/ demds.height/2)); } @@ -107,7 +108,7 @@ void DEMLLA2XYZTool::accept() Vector3D Zaxis = { 0,0,1 }; double rowidx = 0, colidx = 0; - +#pragma omp parallel for for (long i = 1; i < dem_rows - 1; i++) { for (long j = 1; j < dem_cols - 1; j++) { rowidx = i + startlineid; @@ -139,7 +140,7 @@ void DEMLLA2XYZTool::accept() demsloperxyz.saveImage(demsloper_z, start_ids - 1, 0, 3); demsloperxyz.saveImage(demsloper_angle, start_ids - 1, 0, 4); - this->ui.progressBar->setValue(50+start_ids / demds.height / 2); + this->ui.progressBar->setValue(50+ 100.0 * start_ids / demds.height / 2); } QMessageBox::information(this, tr(u8"程序执行完成"), tr(u8"程序执行完成。")); @@ -148,7 +149,7 @@ void DEMLLA2XYZTool::accept() this->ui.label_3->setText(""); } -void DEMLLA2XYZTool::reject() +void DEMLLA2XYZTool::onreject() { this->close(); } diff --git a/Toolbox/BaseToolbox/BaseToolbox/DEMLLA2XYZTool.h b/Toolbox/BaseToolbox/BaseToolbox/DEMLLA2XYZTool.h index 34fd29f..765caa4 100644 --- a/Toolbox/BaseToolbox/BaseToolbox/DEMLLA2XYZTool.h +++ b/Toolbox/BaseToolbox/BaseToolbox/DEMLLA2XYZTool.h @@ -14,8 +14,8 @@ public: public slots: - void accept(); - void reject(); + void onaccept(); + void onreject(); void onDEMWSG84SelectBtn_Clicked(); void onDEMXYZSelectBtn_Clicked(); void onBtnSloper_Clicked(); diff --git a/proj.db b/proj.db new file mode 100644 index 0000000..05c2119 Binary files /dev/null and b/proj.db differ