obstetrics.dart 826 B

123456789101112131415161718192021222324252627282930313233343536
  1. import 'dart:math' as math;
  2. import 'package:fis_measure/utils/number.dart';
  3. class ObstetricsFormulas {
  4. ObstetricsFormulas._();
  5. /// (D1 + D2 + D3)/3.0
  6. ///
  7. /// return Unit cm
  8. ///
  9. /// [d1] Unit cm
  10. ///
  11. /// [d2] Unit cm
  12. ///
  13. /// [d3] Unit cm
  14. static double gsMean(double d1, double d2, double d3) {
  15. double mean = double.nan;
  16. if (!NumUtil.almostEquals(d1, 0) &&
  17. !NumUtil.almostEquals(d2, 0) &&
  18. !NumUtil.almostEquals(d3, 0)) {
  19. mean = (d1 + d2 + d3) / 3;
  20. }
  21. return mean;
  22. }
  23. ///Max(D1, D2, D3)
  24. static double gsMax(double d1, double d2, double d3) {
  25. double max = double.nan;
  26. if (!(NumUtil.almostEquals(d1, 0) &&
  27. NumUtil.almostEquals(d2, 0) &&
  28. NumUtil.almostEquals(d3, 0))) {
  29. max = math.max(d1, math.max(d2, d3));
  30. }
  31. return max;
  32. }
  33. }