388 lines
15 KiB
C++
388 lines
15 KiB
C++
|
#include "MainWindow.h"
|
|||
|
|
|||
|
#include <QBoxLayout>
|
|||
|
#include <QUrl>
|
|||
|
|
|||
|
#include <QFile>
|
|||
|
#include <QFileInfo>
|
|||
|
#include <QMimeDatabase>
|
|||
|
#include <QDir>
|
|||
|
#include <qtabwidget.h>
|
|||
|
|
|||
|
#include "PropertyBrowser.h"
|
|||
|
#include "ModelBrowser.h"
|
|||
|
#include "DockWidget.h"
|
|||
|
|
|||
|
#include "viewer/QtOsgViewWidget.h"
|
|||
|
#include "viewer/OsgViewer.h"
|
|||
|
|
|||
|
#include "chartPlot/FitCurveDialog.h"
|
|||
|
#include "chartPlot/SurfaceDialog.h"
|
|||
|
#include "Layout/LayoutSettingUI.h"
|
|||
|
#include "Layout/SignalIndicatorLampUI.h"
|
|||
|
#include "Layout/AddParamSetting.h"
|
|||
|
#include "Layout/CodeEdtUI.h"
|
|||
|
|
|||
|
#include "Table/targetlistwgt.h"
|
|||
|
#include "common/RecourceHelper.h"
|
|||
|
|
|||
|
#include "../workspace/WorkSpaceManager.h"
|
|||
|
#include "../workspace/WorkSpace.h"
|
|||
|
#include "../workspace/Timestep.h"
|
|||
|
#include "../workspace/LampStatus.h"
|
|||
|
|
|||
|
#include "Matlab/MatlabObject.h"
|
|||
|
|
|||
|
#include "ui_MainWindow.h"
|
|||
|
|
|||
|
MainWindow::MainWindow(QWidget* parent)
|
|||
|
: QMainWindow(parent)
|
|||
|
, ui(new Ui::MainWindow) {
|
|||
|
ui->setupUi(this);
|
|||
|
|
|||
|
InitUI();
|
|||
|
}
|
|||
|
|
|||
|
MainWindow::~MainWindow() {
|
|||
|
OsgViewer::Get().Uninitialize();
|
|||
|
delete ui;
|
|||
|
}
|
|||
|
|
|||
|
void MainWindow::InitUI() {
|
|||
|
|
|||
|
tabWidget_ = new QTabWidget;
|
|||
|
tabWidget_->setTabPosition(QTabWidget::South);
|
|||
|
tabWidget_->tabBar()->setMinimumWidth(300);
|
|||
|
|
|||
|
ui->viewWidget->layout()->addWidget(tabWidget_);
|
|||
|
|
|||
|
pSettingUI = new LayoutSettingUI();
|
|||
|
|
|||
|
const QString uiLaytouPath = RecourceHelper::Get().GetBasePath() + "/workspace/UILayout.xml";
|
|||
|
|
|||
|
pSettingUI->InitConfig(uiLaytouPath);
|
|||
|
//pSettingUI->show();
|
|||
|
|
|||
|
connect(pSettingUI, &LayoutSettingUI::signalUpdate, this, &MainWindow::InitDockLayout);
|
|||
|
|
|||
|
setCorner(Qt::BottomLeftCorner, Qt::LeftDockWidgetArea);
|
|||
|
setCorner(Qt::BottomRightCorner, Qt::RightDockWidgetArea);
|
|||
|
|
|||
|
DockWidget* model = new DockWidget(tr("model elements"), 0);
|
|||
|
// addDockWidget(pSettingUI->GetArea("ModelBrowser"), model);
|
|||
|
modelBrowser_ = new ModelBrowser(0);
|
|||
|
modelBrowser_->AttachDock(model);
|
|||
|
m_mapDockWidget.insert("ModelBrowser", model);
|
|||
|
|
|||
|
DockWidget* attribte = new DockWidget(tr("attribte"), 0);
|
|||
|
//addDockWidget(pSettingUI->GetArea("PropertyBrowser"), attribte);
|
|||
|
propertyBrowser_ = new PropertyBrowser(0);
|
|||
|
propertyBrowser_->AttachDock(attribte);
|
|||
|
m_mapDockWidget.insert("PropertyBrowser", attribte);
|
|||
|
|
|||
|
connect(modelBrowser_, &ModelBrowser::WorkSpaceChange, propertyBrowser_, &PropertyBrowser::OnWorkSpaceChange);
|
|||
|
connect(modelBrowser_, &ModelBrowser::EntityChange, propertyBrowser_, &PropertyBrowser::OnEntityChange);
|
|||
|
|
|||
|
qtOsgViewWidget_ = new QtOsgViewWidget;
|
|||
|
//ui->viewWidget->layout()->addWidget(qtOsgViewWidget_);
|
|||
|
OsgViewer::Get().Initialize();
|
|||
|
OsgViewer::Get().OnFrame();
|
|||
|
|
|||
|
m_mapDockWidget.insert("PropertyBrowser", attribte);
|
|||
|
|
|||
|
QString wavePath = WorkSpaceManager::Get().GetDYTWaveFile();
|
|||
|
if (wavePath.isEmpty()) {
|
|||
|
wavePath = RecourceHelper::Get().GetBasePath() + "/workspace/Wave.txt";
|
|||
|
WorkSpaceManager::Get().SetDYTWaveFile(wavePath);
|
|||
|
}
|
|||
|
// const QString wavePath = RecourceHelper::Get().GetBasePath() + "/workspace/Wave.txt";
|
|||
|
|
|||
|
QString speedPath = WorkSpaceManager::Get().GetDYTReportFile();
|
|||
|
if (speedPath.isEmpty()) {
|
|||
|
speedPath = RecourceHelper::Get().GetBasePath() + "/workspace/Report.txt";
|
|||
|
WorkSpaceManager::Get().SetDYTReportFile(speedPath);
|
|||
|
}
|
|||
|
//const QString speedPath = RecourceHelper::Get().GetBasePath() + "/workspace/Report.txt";
|
|||
|
QString rdPath = WorkSpaceManager::Get().GetDYTRDFile();
|
|||
|
if (rdPath.isEmpty()) {
|
|||
|
rdPath = RecourceHelper::Get().GetBasePath() + "/workspace/RD.txt";
|
|||
|
WorkSpaceManager::Get().SetDYTRDFile(rdPath);
|
|||
|
}
|
|||
|
// const QString rdPath = RecourceHelper::Get().GetBasePath() + "/workspace/RD.txt";
|
|||
|
|
|||
|
DockWidget* fitCurveDock = new DockWidget(tr("Wave Curve"), 0);
|
|||
|
// addDockWidget(pSettingUI->GetArea("2DCurveDialog"), fitCurveDock);
|
|||
|
fitCurveDlg_ = new FitCurveDialog(1);
|
|||
|
fitCurveDlg_->AttachDock(fitCurveDock);
|
|||
|
m_mapDockWidget.insert("WaveCurveDialog", fitCurveDock);
|
|||
|
|
|||
|
fitCurveDlg_->InitWaveFile(wavePath);
|
|||
|
connect(WorkSpaceManager::Get().GetCurrent()->GetTimestep(), SIGNAL(TimeChanged(double)), fitCurveDlg_, SLOT(slotUpdateTime(double)));
|
|||
|
|
|||
|
DockWidget* fitLgCurveDock = new DockWidget(tr("Speed Curve"), 0);
|
|||
|
//addDockWidget(pSettingUI->GetArea("2D(lg)CurveDialog"), fitLgCurveDock);
|
|||
|
fitYLgCurveDlg_ = new FitCurveDialog(1);
|
|||
|
fitYLgCurveDlg_->AttachDock(fitLgCurveDock);
|
|||
|
m_mapDockWidget.insert("SpeedCurveDialog", fitLgCurveDock);
|
|||
|
|
|||
|
|
|||
|
fitYLgCurveDlg_->InitReportFile(speedPath);
|
|||
|
connect(WorkSpaceManager::Get().GetCurrent()->GetTimestep(), SIGNAL(TimeChanged(double)), fitYLgCurveDlg_, SLOT(slotUpdateTime(double)));
|
|||
|
|
|||
|
DockWidget* surfaceCurveDock = new DockWidget(tr("3D Curve"), 0);
|
|||
|
// addDockWidget(pSettingUI->GetArea("3DCurveDialog"), surfaceCurveDock);
|
|||
|
surfaceDlg_ = new SurfaceDialog();
|
|||
|
surfaceDlg_->AttachDock(surfaceCurveDock);
|
|||
|
m_mapDockWidget.insert("3DCurveDialog", surfaceCurveDock);
|
|||
|
|
|||
|
surfaceDlg_->InitRD(rdPath);
|
|||
|
connect(WorkSpaceManager::Get().GetCurrent()->GetTimestep(), SIGNAL(TimeChanged(double)), surfaceDlg_, SLOT(slotUpdateTime(double)));
|
|||
|
|
|||
|
{
|
|||
|
targetUITable_ = new TargetListWgt;
|
|||
|
|
|||
|
QStringList headerLabels;
|
|||
|
headerLabels << tr("Target number") << tr("Signal-to-noise ratio") //QString::fromLocal8Bit("Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>") << QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")
|
|||
|
<< tr("Azimuth line of sight") << tr("Pitch gaze angle") // QString::fromLocal8Bit("<22><>λ<EFBFBD><CEBB><EFBFBD>߽<EFBFBD>") << QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߽<EFBFBD>")
|
|||
|
<< tr("azimuth") << tr("Pitch angle") // QString::fromLocal8Bit("<22><>λ<EFBFBD><CEBB>") << QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")
|
|||
|
<< tr("attribute") << tr("Doppler") // QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD>") << QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")
|
|||
|
<< tr("course") << tr("Speed") // QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD>") << QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD>")
|
|||
|
<< tr("longitude") << tr("latitude") // QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD>") << QString::fromLocal8Bit("γ<><CEB3>")
|
|||
|
<< tr("distance") << tr("velocity") // QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD>") << QString::fromLocal8Bit("<22>ٶ<EFBFBD>")
|
|||
|
<< tr("Radial dimensions") << tr("Target RCS"); // QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD>") << QString::fromLocal8Bit("Ŀ<><C4BF>RCS");
|
|||
|
|
|||
|
targetUITable_->SetHeader(headerLabels);
|
|||
|
//const QString reportPath = RecourceHelper::Get().GetBasePath() + "/workspace/Report.txt";
|
|||
|
targetUITable_->InitFile(speedPath, 50);
|
|||
|
|
|||
|
DockWidget* dataTableDock = new DockWidget(tr("Report Table"), 0);
|
|||
|
// addDockWidget(pSettingUI->GetArea("TargetListWgt"), dataTableDock);
|
|||
|
targetUITable_->AttachDock(dataTableDock);
|
|||
|
m_mapDockWidget.insert("TargetListWgt_Table", dataTableDock);
|
|||
|
|
|||
|
connect(WorkSpaceManager::Get().GetCurrent()->GetTimestep(), SIGNAL(TimeChanged(double)), targetUITable_, SLOT(slotTimeChanged(double)));
|
|||
|
}
|
|||
|
|
|||
|
{
|
|||
|
targetUI_ = new TargetListWgt;
|
|||
|
//WorkSpaceManager::Get().SetTargetListWgt(targetUITable_);
|
|||
|
|
|||
|
QStringList headerLabels;
|
|||
|
headerLabels << tr("Target number") << tr("Signal-to-noise ratio") //QString::fromLocal8Bit("Ŀ<><C4BF><EFBFBD><EFBFBD><EFBFBD><EFBFBD>") << QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")
|
|||
|
<< tr("Azimuth line of sight") << tr("Pitch gaze angle") // QString::fromLocal8Bit("<22><>λ<EFBFBD><CEBB><EFBFBD>߽<EFBFBD>") << QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>߽<EFBFBD>")
|
|||
|
<< tr("azimuth") << tr("Pitch angle") // QString::fromLocal8Bit("<22><>λ<EFBFBD><CEBB>") << QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")
|
|||
|
<< tr("attribute") << tr("Doppler") // QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD>") << QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>")
|
|||
|
<< tr("course") << tr("Speed") // QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD>") << QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD>")
|
|||
|
<< tr("longitude") << tr("latitude") // QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD>") << QString::fromLocal8Bit("γ<><CEB3>")
|
|||
|
<< tr("distance") << tr("velocity") // QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD>") << QString::fromLocal8Bit("<22>ٶ<EFBFBD>")
|
|||
|
<< tr("Radial dimensions") << tr("Target RCS"); // QString::fromLocal8Bit("<22><><EFBFBD><EFBFBD><EFBFBD>ߴ<EFBFBD>") << QString::fromLocal8Bit("Ŀ<><C4BF>RCS");
|
|||
|
|
|||
|
targetUI_->SetHeader(headerLabels);
|
|||
|
const QString reportPath = RecourceHelper::Get().GetBasePath() + "/workspace/Report.txt";
|
|||
|
targetUI_->InitFile(reportPath, 50);
|
|||
|
|
|||
|
DockWidget* dataTableDock = new DockWidget(tr("Report"), 0);
|
|||
|
// addDockWidget(pSettingUI->GetArea("TargetListWgt"), dataTableDock);
|
|||
|
targetUI_->AttachDock(dataTableDock);
|
|||
|
m_mapDockWidget.insert("TargetListWgt", dataTableDock);
|
|||
|
|
|||
|
connect(WorkSpaceManager::Get().GetCurrent()->GetTimestep(), SIGNAL(TimeChanged(double)), targetUI_, SLOT(slotTimeChanged(double)));
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
const QString lampPath = RecourceHelper::Get().GetBasePath() + "/workspace/Lamp.txt";
|
|||
|
|
|||
|
DockWidget* signalIndicatorLampDock = new DockWidget(tr("Signal Indicator Lamp"), 0);
|
|||
|
signalIndicatorLampUI_ = new SignalIndicatorLampUI;
|
|||
|
signalIndicatorLampUI_->AttachDock(signalIndicatorLampDock);
|
|||
|
signalIndicatorLampUI_->InitLamp(lampPath);
|
|||
|
connect(WorkSpaceManager::Get().GetCurrent()->GetLampStatus(), SIGNAL(StatusChanged(int)), signalIndicatorLampUI_, SLOT(onStatusChanged(int)));
|
|||
|
|
|||
|
m_mapDockWidget.insert("SignalIndicatorLampUI", signalIndicatorLampDock);
|
|||
|
|
|||
|
const QString iniPath = RecourceHelper::Get().GetBasePath() + "/workspace/ParamSetting.ini";
|
|||
|
DockWidget* addParamSettingDock = new DockWidget(tr("ParamSetting"), 0);
|
|||
|
addParamDlg_ = new CodeEdtUI;
|
|||
|
addParamDlg_->AttachDock(addParamSettingDock);
|
|||
|
m_mapDockWidget.insert("ParamSetting", addParamSettingDock);
|
|||
|
|
|||
|
ui->discript->setText(tr("name: 5year 0412"));
|
|||
|
ui->status->setText(tr("start: no start"));
|
|||
|
|
|||
|
InitDockLayout();
|
|||
|
|
|||
|
#if 0
|
|||
|
MatlabObject* mtlb = new MatlabObject;
|
|||
|
mtlb->RunMatlabFile("D:\\DYT\\TestGUI\\TestGUI\\LDPlatformTest.m");
|
|||
|
#endif // 1
|
|||
|
}
|
|||
|
|
|||
|
void MainWindow::InitDockLayout() {
|
|||
|
while (tabWidget_->count() > 0) {
|
|||
|
tabWidget_->removeTab(0);
|
|||
|
}
|
|||
|
|
|||
|
QVariantList listTab = pSettingUI->GetAreaLayout().toList();
|
|||
|
for (int i = 0; i < listTab.size(); i++) {
|
|||
|
QVariantMap mapTab = listTab[i].toMap();
|
|||
|
QString strTabName = mapTab.value("Name").toString();
|
|||
|
|
|||
|
QMainWindow* mainWindow_ = new QMainWindow;
|
|||
|
|
|||
|
QVariantList listDocArea = mapTab.value("Widget").toList();
|
|||
|
|
|||
|
tabWidget_->insertTab(i, mainWindow_, strTabName);
|
|||
|
if (listDocArea[0].toList().size() > 0) {
|
|||
|
mainWindow_->setCentralWidget(qtOsgViewWidget_);
|
|||
|
OsgViewer::Get().Initialize();
|
|||
|
OsgViewer::Get().OnFrame();
|
|||
|
} else {
|
|||
|
mainWindow_->takeCentralWidget();
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
if (listDocArea.size() > 0) {
|
|||
|
QDockWidget* lastDock = nullptr;
|
|||
|
|
|||
|
for (int j = 1; j < listDocArea.size(); j++) {
|
|||
|
Qt::DockWidgetArea dockArea;
|
|||
|
if (j == 1) {
|
|||
|
dockArea = Qt::LeftDockWidgetArea;
|
|||
|
} else if (j == 2) {
|
|||
|
dockArea = Qt::TopDockWidgetArea;
|
|||
|
} else if (j == 3) {
|
|||
|
dockArea = Qt::RightDockWidgetArea;
|
|||
|
} else if (j == 4) {
|
|||
|
dockArea = Qt::BottomDockWidgetArea;
|
|||
|
}
|
|||
|
|
|||
|
QVariantList listDocAreaChild = listDocArea[j].toList();
|
|||
|
for (int m = 0; m < listDocAreaChild.size(); m++) {
|
|||
|
QVariant varWidget = listDocAreaChild[m];
|
|||
|
|
|||
|
if (varWidget.type() == QVariant::String) {
|
|||
|
QDockWidget* pDock = m_mapDockWidget.value(varWidget.toString());
|
|||
|
if (pDock == nullptr) {
|
|||
|
continue;
|
|||
|
}
|
|||
|
mainWindow_->addDockWidget(dockArea, pDock);
|
|||
|
lastDock = pDock;
|
|||
|
} else {
|
|||
|
QVariantList listWidget = varWidget.toList();
|
|||
|
for (int k = 0; k < listWidget.size(); k++) {
|
|||
|
QDockWidget* pDock = m_mapDockWidget.value(listWidget[k].toString());
|
|||
|
mainWindow_->addDockWidget(dockArea, pDock);
|
|||
|
|
|||
|
if (k == 0) {
|
|||
|
if (lastDock) {
|
|||
|
mainWindow_->splitDockWidget(lastDock, pDock, Qt::Vertical);
|
|||
|
}
|
|||
|
} else {
|
|||
|
mainWindow_->splitDockWidget(lastDock, pDock, Qt::Horizontal);
|
|||
|
}
|
|||
|
|
|||
|
lastDock = pDock;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
/* AddDockArea("DockLeftArea");
|
|||
|
AddDockArea("DockTopArea");
|
|||
|
AddDockArea("DockRightArea");
|
|||
|
AddDockArea("DockBottomArea");*/
|
|||
|
}
|
|||
|
|
|||
|
void MainWindow::AddDockArea(const QString& strArea) {
|
|||
|
Qt::DockWidgetArea dockArea;
|
|||
|
Qt::Orientation orient;
|
|||
|
|
|||
|
if (strArea == "DockLeftArea") {
|
|||
|
dockArea = Qt::LeftDockWidgetArea;
|
|||
|
orient = Qt::Vertical;
|
|||
|
} else if (strArea == "DockTopArea") {
|
|||
|
dockArea = Qt::TopDockWidgetArea;
|
|||
|
orient = Qt::Horizontal;
|
|||
|
} else if (strArea == "DockRightArea") {
|
|||
|
dockArea = Qt::RightDockWidgetArea;
|
|||
|
orient = Qt::Vertical;
|
|||
|
} else if (strArea == "DockBottomArea") {
|
|||
|
dockArea = Qt::BottomDockWidgetArea;
|
|||
|
orient = Qt::Horizontal;
|
|||
|
} else {
|
|||
|
return;
|
|||
|
}
|
|||
|
|
|||
|
QList<QDockWidget*> listAdd;
|
|||
|
|
|||
|
QVariant varArea = pSettingUI->GetAreaLayout();
|
|||
|
if (varArea.isValid()) {
|
|||
|
QVariantList listWidget = varArea.toList();
|
|||
|
for each(QVariant varWidget in listWidget) {
|
|||
|
if (varWidget.type() == QVariant::String) {
|
|||
|
QDockWidget* pDock = m_mapDockWidget.value(varWidget.toString());
|
|||
|
addDockWidget(dockArea, pDock);
|
|||
|
|
|||
|
listAdd.push_back(pDock);
|
|||
|
} else {
|
|||
|
QDockWidget* pLastDock = nullptr;
|
|||
|
QVariantList listTab = varWidget.toList();
|
|||
|
for each(QVariant tabChild in listTab) {
|
|||
|
QDockWidget* pDock = m_mapDockWidget.value(tabChild.toString());
|
|||
|
addDockWidget(dockArea, pDock);
|
|||
|
|
|||
|
if (pLastDock) {
|
|||
|
//tabifyDockWidget(pLastDock, pDock);
|
|||
|
splitDockWidget(pLastDock, pDock, Qt::Horizontal);
|
|||
|
}
|
|||
|
|
|||
|
listAdd.push_back(pDock);
|
|||
|
|
|||
|
pLastDock = pDock;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
QList<int> listSpliter;
|
|||
|
for (size_t i = 0; i < listAdd.size(); i++) {
|
|||
|
listSpliter.push_back(1);
|
|||
|
}
|
|||
|
|
|||
|
resizeDocks(listAdd, listSpliter, orient);
|
|||
|
}
|
|||
|
|
|||
|
void MainWindow::slotShowUISetting() {
|
|||
|
pSettingUI->show();
|
|||
|
}
|
|||
|
|
|||
|
void MainWindow::slotResetWorkSpace()
|
|||
|
{
|
|||
|
QString wavePath = WorkSpaceManager::Get().GetDYTWaveFile();
|
|||
|
if (wavePath.isEmpty())
|
|||
|
{
|
|||
|
wavePath = RecourceHelper::Get().GetBasePath() + "/workspace/Wave.txt";
|
|||
|
WorkSpaceManager::Get().SetDYTWaveFile(wavePath);
|
|||
|
}
|
|||
|
|
|||
|
QString speedPath = WorkSpaceManager::Get().GetDYTReportFile();
|
|||
|
if (speedPath.isEmpty())
|
|||
|
{
|
|||
|
speedPath = RecourceHelper::Get().GetBasePath() + "/workspace/Report.txt";
|
|||
|
WorkSpaceManager::Get().SetDYTReportFile(speedPath);
|
|||
|
}
|
|||
|
|
|||
|
QString rdPath = WorkSpaceManager::Get().GetDYTRDFile();
|
|||
|
if (rdPath.isEmpty())
|
|||
|
{
|
|||
|
rdPath = RecourceHelper::Get().GetBasePath() + "/workspace/RD.txt";
|
|||
|
WorkSpaceManager::Get().SetDYTRDFile(rdPath);
|
|||
|
}
|
|||
|
|
|||
|
fitCurveDlg_->InitWaveFile(wavePath);
|
|||
|
fitYLgCurveDlg_->InitReportFile(speedPath);
|
|||
|
surfaceDlg_->InitRD(rdPath);
|
|||
|
targetUITable_->InitFile(speedPath, 50);
|
|||
|
}
|