mrDarker
2025-09-11 d64036c0510cf06009a7252e318d828fbc2658f0
SourceCode/Bond/SGMeasurement/SGMeasurementDlg.cpp
@@ -247,7 +247,7 @@
   strFullLogLine.Format(_T("%s %s"), strLevel, strContent);
   // 写入日志文件
   // LOG_LINE(strFullLogLine);
   LOG_LINE(strFullLogLine);
}
void CSGMeasurementDlg::HighlightAllMatches(const CString& strSearch, COLORREF clrHighlight/* = RGB(255, 165, 0)*/)
@@ -639,7 +639,8 @@
   fAvg1 = CalcAverage(vecGlass1);
   fAvg2 = CalcAverage(vecGlass2);
   fOffset = std::fabs(fAvg2 - fAvg1);  // 第二片 - 第一片
   fOffset = fAvg2 - fAvg1;            // 第二片 - 第一片
   //fOffset = std::fabs(fAvg2 - fAvg1);   // 第二片 - 第一片
   CString strLog;
   strLog.Format(_T("第一片玻璃平均值: %.3f,第二片玻璃平均值: %.3f,偏移量: %.3f"), fAvg1, fAvg2, fOffset);
@@ -760,10 +761,10 @@
   vecBuffer.resize(nReceived);
   CleanInvalidValuesInPlace(nOutNo, vecBuffer);
   std::vector<float> vecGlass1, vecGlass2;
    std::vector<float> vecGlass1, vecGlass2;
   if (!SplitGlassSegments(nOutNo, vecBuffer, vecGlass1, vecGlass2, m_fJumpThreshold, m_nJumpWindow, m_nValleyMargin, m_nMinGlass1Count)) {
      AppendLogLineRichStyled(_T("未能识别出两片玻璃的数据。"), LOG_COLOR_WARNING);
      return -1.0f;
      return -1.0f;
   }
   std::vector<float> vecGlass1Filtered, vecGlass2Filtered;
@@ -887,13 +888,13 @@
      if (type == -1) {
         AppendLogLineRichStyled(msg, LOG_COLOR_ERROR);
      }
      if (type == 0) {
      else if (type == 0) {
         AppendLogLineRichStyled(msg, LOG_COLOR_SUCCESS);
      }
      else if (type == 1) {
         AppendLogLineRichStyled(msg, LOG_COLOR_WARNING);
      }
      else {
      else if (type == 2) {
         AppendLogLineRichStyled(msg, LOG_COLOR_NORMAL);
      }
   });
@@ -903,9 +904,14 @@
   // 设置 PLC 监听器的开始采集回调函数
   m_plcListener.SetStartCallback([this]() {
      InitDataStorage();
      StartDataStorage();
      UpdateControlStatus(m_bConnected, m_bSaving);
      if (!m_bConnected) {
         ConnectToDevice();
      }
      if (InitDataStorage()) {
         StartDataStorage();
         UpdateControlStatus(m_bConnected, m_bSaving);
      }
   });
   // 设置 PLC 监听器的停止采集回调函数
@@ -916,6 +922,11 @@
   // 设置 PLC 监听器的分析回调函数
   m_plcListener.SetAnalyzeCallback([this]() {
      if (!m_bConnected) {
         AppendLogLineRichStyled(_T("设备未连接,请先连接设备。"), LOG_COLOR_WARNING);
         return std::array<double, 4>{ -1.0, -1.0, -1.0, -1.0 };
      }
      std::array<double, 4> result;
      for (int i = 0; i < 4; ++i) {
         result[i] = AnalyzeStoredData(i + 1); // OUT1 ~ OUT4