Explorar el Código

方差用double求

lvjincheng hace 3 años
padre
commit
7608cab53a
Se han modificado 1 ficheros con 7 adiciones y 8 borrados
  1. 7 8
      Assets/BowArrow/Scripts/Bluetooth/AimHandler.cs

+ 7 - 8
Assets/BowArrow/Scripts/Bluetooth/AimHandler.cs

@@ -198,26 +198,25 @@ public class AimHandler : MonoBehaviour
                 MagCalibrationButton.GetComponentInChildren<Text>().text = "开始地磁计校准";
                 PlayerPrefs.SetString("o0MagneticCalibrater", JsonConvert.SerializeObject(MagCalibrater));
 
-                #region jc-看校准是否完美,求Records方差
+                #region 看校准是否完美,求Records方差
                 if (list == null || list.Count == 0) isCalibrateMagPerfect = false;
                 else
                 {
-                    float sumV = 0;
-                    float[] listArray = new float[list.Count];
+                    double sumV = 0;
+                    double[] listArray = new double[list.Count];
                     for (int i = 0; i < list.Count; i++)
                     {
                         listArray[i] = MagCalibrater.Update(list[i]).magnitude;
                         sumV += listArray[i];
                     }
-                    float avarageV = sumV / listArray.Length;
-                    float varianceV = 0;
-                    foreach (float vvv in listArray)
+                    double avarageV = sumV / listArray.Length;
+                    double varianceV = 0;
+                    foreach (double vvv in listArray)
                     {
-                        varianceV += Mathf.Pow(vvv - avarageV, 2);
+                        varianceV += Math.Pow(vvv - avarageV, 2);
                     }
                     varianceV /= listArray.Length;
                     isCalibrateMagPerfect = varianceV < 0.001;
-                    Debug.Log("jc-地磁校准方差=" + varianceV);
                     PopupMgr.ins.ShowTip("地磁校准方差 = " + varianceV);
                 }
                 #endregion