< Summary

Class:Utilities
Assembly:bamlab.micromissiles
File(s):/github/workspace/Assets/Scripts/Utils/Utilities.cs
Covered lines:14
Uncovered lines:6
Coverable lines:20
Total lines:33
Line coverage:70% (14 of 20)
Covered branches:0
Total branches:0
Covered methods:3
Total methods:5
Method coverage:60% (3 of 5)

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity NPath complexity Sequence coverage
GenerateRandomNoise(...)0%110100%
GenerateRandomNoise(...)0%110100%
SampleStandardNormal()0%220100%
ConvertMpsToKnots(...)0%2100%
ConvertMetersToFeet(...)0%2100%

File(s)

/github/workspace/Assets/Scripts/Utils/Utilities.cs

#LineLine coverage
 1using UnityEngine;
 2
 3public static class Utilities {
 19104  public static Vector3 GenerateRandomNoise(Vector3 standardDeviation) {
 19105    return new Vector3(SampleStandardNormal() * standardDeviation.x,
 6                       SampleStandardNormal() * standardDeviation.y,
 7                       SampleStandardNormal() * standardDeviation.z);
 19108  }
 9
 191010  public static Vector3 GenerateRandomNoise(Simulation.CartesianCoordinates standardDeviation) {
 191011    return GenerateRandomNoise(Coordinates3.FromProto(standardDeviation));
 191012  }
 13
 573014  public static float SampleStandardNormal() {
 15    // Use the Box-Muller transform to sample from a standard normal distribution with mean = 0 and
 16    // standard deviation = 1.
 573017    float u1 = 0f;
 18    // Avoid taking the logarithm of 0.
 1719019    while (u1 == 0f) {
 573020      u1 = Random.value;
 573021    }
 573022    float u2 = Random.value;
 573023    return Mathf.Sqrt(-2.0f * Mathf.Log(u1)) * Mathf.Sin(2.0f * Mathf.PI * u2);
 573024  }
 25
 026  public static float ConvertMpsToKnots(float mps) {
 027    return mps * 1.94384f;
 028  }
 29
 030  public static float ConvertMetersToFeet(float meters) {
 031    return meters * 3.28084f;
 032  }
 33}