path.dart 787 B

123456789101112131415161718192021222324252627282930313233
  1. import 'dart:math';
  2. import 'package:flutter/foundation.dart';
  3. typedef Path = List<int>;
  4. bool pathEquals(Path path1, Path path2) {
  5. return listEquals(path1, path2);
  6. }
  7. /// Returns true if path1 >= path2, otherwise returns false.
  8. /// TODO: Rename this function.
  9. bool pathGreaterOrEquals(Path path1, Path path2) {
  10. final length = min(path1.length, path2.length);
  11. for (var i = 0; i < length; i++) {
  12. if (path1[i] < path2[i]) {
  13. return false;
  14. }
  15. }
  16. return true;
  17. }
  18. /// Returns true if path1 <= path2, otherwise returns false.
  19. /// TODO: Rename this function.
  20. bool pathLessOrEquals(Path path1, Path path2) {
  21. final length = min(path1.length, path2.length);
  22. for (var i = 0; i < length; i++) {
  23. if (path1[i] > path2[i]) {
  24. return false;
  25. }
  26. }
  27. return true;
  28. }