add
1、分离扫描速度和手动控制速度; 2、添加扫描速度的反向运动,并保存以前的设置; fix 和贡嘎山的相互干扰;
This commit is contained in:
@ -185,6 +185,16 @@ void AppSettings::setManualMovementSpeed(double value)
|
||||
m_settings.setValue("OneMotorControl/ManualMovementSpeed", value);
|
||||
}
|
||||
|
||||
bool AppSettings::isReverseMove() const
|
||||
{
|
||||
return m_settings.value("OneMotorControl/IsReverseMove", 0).toBool();
|
||||
}
|
||||
|
||||
void AppSettings::setIsReverseMove(bool value)
|
||||
{
|
||||
m_settings.setValue("OneMotorControl/IsReverseMove", value);
|
||||
}
|
||||
|
||||
int AppSettings::gonggaShanRecordPort() const
|
||||
{
|
||||
return m_settings.value("GonggaShanRecordCtl/Port", kDefaultGonggaShanRecordPort).toInt();
|
||||
|
||||
@ -60,6 +60,9 @@ public:
|
||||
double manualMovementSpeed() const;
|
||||
void setManualMovementSpeed(double value);
|
||||
|
||||
bool isReverseMove() const;
|
||||
void setIsReverseMove(bool value);
|
||||
|
||||
// 贡嘎山记录端口
|
||||
int gonggaShanRecordPort() const;
|
||||
void setGonggaShanRecordPort(int value);
|
||||
|
||||
@ -68,6 +68,11 @@ GonggaShanRecordCtl::~GonggaShanRecordCtl()
|
||||
}
|
||||
}
|
||||
|
||||
void GonggaShanRecordCtl::recordHsiFinished()
|
||||
{
|
||||
emit recordFinishedSignal_gonggashan();
|
||||
}
|
||||
|
||||
void GonggaShanRecordCtl::onGpsAcquisition()
|
||||
{
|
||||
logStatus(QStringLiteral("开始GPS定位采集..."), true, false);
|
||||
|
||||
@ -122,6 +122,7 @@ public:
|
||||
GonggaShanRecordCtl(QWidget* parent = nullptr);
|
||||
~GonggaShanRecordCtl();
|
||||
|
||||
void recordHsiFinished();
|
||||
|
||||
public Q_SLOTS:
|
||||
void onFiberImagerStartExposureSignal();
|
||||
|
||||
@ -1121,12 +1121,22 @@ void HPPA::setupGonggashanAutoRecordConnection()
|
||||
connect(m_fodisWindow, &FodisWindow::exposureCompleteSignal, m_gonggaShanRecordCtl, &GonggaShanRecordCtl::fiberExposureDoneSignal_gonggashan);
|
||||
|
||||
connect(m_gonggaShanRecordCtl, &GonggaShanRecordCtl::startRcordSignal_gonggashan, this, &HPPA::onGonggashanRecord);
|
||||
connect(m_omc, &OneMotorControl::sequenceCompleteSignal_hyperImagerStopRecord, m_rgbCameraControlWindow, &rgbCameraWindow::toggleTakePhoto);
|
||||
connect(m_omc, &OneMotorControl::sequenceCompleteSignal_hyperImagerStopRecord, m_fodisWindow, &FodisWindow::closeFiberImager);
|
||||
connect(m_omc, &OneMotorControl::sequenceCompleteSignal_hyperImagerStopRecord, m_gonggaShanRecordCtl, &GonggaShanRecordCtl::recordFinishedSignal_gonggashan);
|
||||
connect(m_omc, &OneMotorControl::sequenceCompleteSignal_hyperImagerStopRecord, this, &HPPA::onSequenceCompleteStopRecord);
|
||||
//connect(m_omc, &OneMotorControl::sequenceComplete_motorBack2Origin, m_gonggaShanRecordCtl, &GonggaShanRecordCtl::);
|
||||
}
|
||||
|
||||
void HPPA::onSequenceCompleteStopRecord()
|
||||
{
|
||||
if (m_ScenarioActionGroup->checkedAction() != ui.mActionGonggaRotatingPlatformScenario)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
m_rgbCameraControlWindow->toggleTakePhoto();
|
||||
m_fodisWindow->closeFiberImager();
|
||||
m_gonggaShanRecordCtl->recordHsiFinished();
|
||||
}
|
||||
|
||||
void HPPA::onGonggashanHyperAutoExposure()
|
||||
{
|
||||
//连接马达和光谱仪
|
||||
|
||||
@ -461,6 +461,8 @@ public Q_SLOTS:
|
||||
void onGonggashanHyperAutoExposure();
|
||||
void onGonggashanFiberAutoExposureRecord(QString posInfo, QString dataFolder);
|
||||
|
||||
void onSequenceCompleteStopRecord();
|
||||
|
||||
protected:
|
||||
void closeEvent(QCloseEvent* event) override;
|
||||
|
||||
|
||||
@ -27,6 +27,9 @@ OneMotorControl::OneMotorControl(QWidget* parent) : QDialog(parent)
|
||||
connect(ui.manualMovementSpeed_lineEdit, &QLineEdit::editingFinished, [this]() {
|
||||
AppSettings::instance().setManualMovementSpeed(ui.manualMovementSpeed_lineEdit->text().toDouble());
|
||||
});
|
||||
connect(ui.reverseMove_radioButton, &QRadioButton::toggled, [this](bool checked) {
|
||||
AppSettings::instance().setIsReverseMove(checked);
|
||||
});
|
||||
|
||||
loadSettings();
|
||||
}
|
||||
@ -42,6 +45,8 @@ void OneMotorControl::loadSettings()
|
||||
ui.scanSpeed_lineEdit->setText(QString::number(AppSettings::instance().scanSpeed()));
|
||||
ui.return_speed_lineEdit->setText(QString::number(AppSettings::instance().returnSpeed()));
|
||||
ui.manualMovementSpeed_lineEdit->setText(QString::number(AppSettings::instance().manualMovementSpeed()));
|
||||
|
||||
ui.reverseMove_radioButton->setChecked(AppSettings::instance().isReverseMove());
|
||||
}
|
||||
|
||||
void OneMotorControl::onConnectMotor()
|
||||
@ -212,6 +217,10 @@ void OneMotorControl::setImager(ImagerOperationBase* imager)
|
||||
void OneMotorControl::record_dark()
|
||||
{
|
||||
double s = ui.scanSpeed_lineEdit->text().toDouble();
|
||||
if (ui.reverseMove_radioButton->isChecked())
|
||||
{
|
||||
s = s * -1;
|
||||
}
|
||||
|
||||
if (m_darkCaptureCoordinator == nullptr)
|
||||
{
|
||||
@ -224,6 +233,10 @@ void OneMotorControl::record_dark()
|
||||
void OneMotorControl::record_white()
|
||||
{
|
||||
double s = ui.scanSpeed_lineEdit->text().toDouble();
|
||||
if (ui.reverseMove_radioButton->isChecked())
|
||||
{
|
||||
s = s * -1;
|
||||
}
|
||||
|
||||
if (m_whiteCaptureCoordinator == nullptr)
|
||||
{
|
||||
@ -253,7 +266,13 @@ void OneMotorControl::run()
|
||||
this, &OneMotorControl::onSequenceComplete_motorBack2Origin);
|
||||
|
||||
OneMotionCapturePathLine tmp;
|
||||
tmp.speedRecord = ui.scanSpeed_lineEdit->text().toDouble();
|
||||
|
||||
double s = ui.scanSpeed_lineEdit->text().toDouble();
|
||||
if (ui.reverseMove_radioButton->isChecked())
|
||||
{
|
||||
s = s * -1;
|
||||
}
|
||||
tmp.speedRecord = s;
|
||||
tmp.speedBack = ui.return_speed_lineEdit->text().toDouble();
|
||||
|
||||
emit start(tmp);
|
||||
|
||||
Reference in New Issue
Block a user