1. 进程中断

2. 自动设置source 为单独 configure
pull/1/head
剑古敛锋 2024-07-23 10:27:59 +08:00
parent a1dff8fa69
commit 9df123afed
2 changed files with 37 additions and 2 deletions

View File

@ -1497,6 +1497,13 @@ bool FEKOBase::FBPImage_FREQ(QString& restiffpath, Eigen::MatrixXcd& echoData,
} }
#ifdef __SHOWPROCESS #ifdef __SHOWPROCESS
progressDialog.setValue(ii); progressDialog.setValue(ii);
QCoreApplication::processEvents(); // 允许事件处理,以便取消按钮响应
// 检查是否点击了取消按钮
if (progressDialog.wasCanceled()) {
qDebug() << "User canceled operation.";
return false; // 退出任务循环
}
#endif #endif
} }
@ -1916,6 +1923,13 @@ bool FEKOBase::FBPImage_CirCleSAR(QString& restiffpath, MatrixXcd& echoData, Mat
} }
#ifdef __SHOWPROCESS #ifdef __SHOWPROCESS
progressDialog.setValue(ii); progressDialog.setValue(ii);
QCoreApplication::processEvents(); // 允许事件处理,以便取消按钮响应
// 检查是否点击了取消按钮
if (progressDialog.wasCanceled()) {
qDebug() << "User canceled operation.";
return false; // 退出任务循环
}
#endif #endif
} }
@ -1959,6 +1973,13 @@ bool FEKOBase::FBPImage_CirCleSAR(QString& restiffpath, MatrixXcd& echoData, Mat
} }
#ifdef __SHOWPROCESS #ifdef __SHOWPROCESS
progressDialog.setValue(ii); progressDialog.setValue(ii);
QCoreApplication::processEvents(); // 允许事件处理,以便取消按钮响应
// 检查是否点击了取消按钮
if (progressDialog.wasCanceled()) {
qDebug() << "User canceled operation.";
return false; // 退出任务循环
}
#endif #endif
} }
@ -2094,6 +2115,13 @@ bool FEKOBase::FBPImage_ISARNEAR(QString& restiffpath, MatrixXcd& echoData, Matr
} }
#ifdef __SHOWPROCESS #ifdef __SHOWPROCESS
progressDialog.setValue(ii); progressDialog.setValue(ii);
QCoreApplication::processEvents(); // 允许事件处理,以便取消按钮响应
// 检查是否点击了取消按钮
if (progressDialog.wasCanceled()) {
qDebug() << "User canceled operation.";
return false; // 退出任务循环
}
#endif #endif
} }
@ -2140,6 +2168,13 @@ bool FEKOBase::FBPImage_ISARNEAR(QString& restiffpath, MatrixXcd& echoData, Matr
} }
#ifdef __SHOWPROCESS #ifdef __SHOWPROCESS
progressDialog.setValue(ii); progressDialog.setValue(ii);
QCoreApplication::processEvents(); // 允许事件处理,以便取消按钮响应
// 检查是否点击了取消按钮
if (progressDialog.wasCanceled()) {
qDebug() << "User canceled operation.";
return false; // 退出任务循环
}
#endif #endif
} }

View File

@ -292,8 +292,6 @@ void FEKOBase::FEKOSimulationSARClass::saveFEKOImageSettingXML() {
} }
QString FEKOBase::FEKOSimulationSARClass::createLuaSciptString(size_t startprfidx, size_t endprfidx,QString cfxName,FEKOBase::TRANSLATIONPOLARTYPE polartype) { QString FEKOBase::FEKOSimulationSARClass::createLuaSciptString(size_t startprfidx, size_t endprfidx,QString cfxName,FEKOBase::TRANSLATIONPOLARTYPE polartype) {
if (this->simulationparams->startfreq > 1e6) { if (this->simulationparams->startfreq > 1e6) {
this->simulationparams->startfreq = this->simulationparams->startfreq / 1e9; this->simulationparams->startfreq = this->simulationparams->startfreq / 1e9;
} // ==> GHz } // ==> GHz
@ -318,6 +316,8 @@ QString FEKOBase::FEKOSimulationSARClass::createLuaSciptString(size_t startprfid
luascript = luascript + QString(u8"\n"); luascript = luascript + QString(u8"\n");
luascript = luascript + QString(u8"app=cf.GetApplication()\n"); luascript = luascript + QString(u8"app=cf.GetApplication()\n");
luascript = luascript + QString(u8"project=app.Project --- get current project\n"); luascript = luascript + QString(u8"project=app.Project --- get current project\n");
luascript = luascript + QString(u8"solutionConfigurations = project.SolutionConfigurations \n");
luascript = luascript + QString(u8"solutionConfigurations:SetSourcesPerConfiguration()\n");
if(polartype==FEKOBase::TRANSLATIONPOLARTYPE::POLAR_VT){ if(polartype==FEKOBase::TRANSLATIONPOLARTYPE::POLAR_VT){
luascript = luascript + QString(u8"farFieldData = project.FieldDataList:AddFarFieldData(\"%1\",%2,%3) -- farField Gains\n").arg(this->simulationparams->AntennaRadiationFileName).arg(QString::number(this->simulationparams->farsource_thetaPoints)).arg(QString::number(this->simulationparams->farsource_phiPoints)); luascript = luascript + QString(u8"farFieldData = project.FieldDataList:AddFarFieldData(\"%1\",%2,%3) -- farField Gains\n").arg(this->simulationparams->AntennaRadiationFileName).arg(QString::number(this->simulationparams->farsource_thetaPoints)).arg(QString::number(this->simulationparams->farsource_phiPoints));
}else if(polartype==FEKOBase::TRANSLATIONPOLARTYPE::POLAR_HT){ }else if(polartype==FEKOBase::TRANSLATIONPOLARTYPE::POLAR_HT){