浏览代码

fix problems with early transition of digits if analog pointers. #921

Frank Haverland 3 年之前
父节点
当前提交
d6ff7eef88
共有 1 个文件被更改,包括 4 次插入1 次删除
  1. 4 1
      code/components/jomjol_flowcontroll/ClassFlowCNNGeneral.cpp

+ 4 - 1
code/components/jomjol_flowcontroll/ClassFlowCNNGeneral.cpp

@@ -192,7 +192,10 @@ int ClassFlowCNNGeneral::ZeigerEvalHybrid(float zahl, float zahl_vorgaenger, int
     if ((zahl_vorgaenger >= 0.5 ) && (zahl_vorgaenger < 9.0))
     {
         // kein Ziffernwechsel, da Vorkomma weit genug weg ist (0+/-0.5) --> zahl wird gerundet
-        return ((int) round(zahl) + 10) % 10;
+        if ((ergebnis_nachkomma <= 2) || (ergebnis_nachkomma >= 8))     // Band um die Ziffer --> Runden, da Ziffer im Rahmen Ungenauigkeit erreicht
+            return ((int) round(zahl) + 10) % 10;
+        else
+            return ((int) trunc(zahl) + 10) % 10;
     }  
     else
     {