forGrid method

void forGrid({
  1. int minX = 0,
  2. required int maxX,
  3. int minY = 0,
  4. required int maxY,
  5. bool columnFirst = true,
  6. required dynamic callback(
    1. Point<int> point,
    2. int index
    ),
})

Iteration over an integer grid

Implementation

void forGrid(
    {int minX = 0,
    required int maxX,
    int minY = 0,
    required int maxY,
    bool columnFirst = true,
    required Function(Point<int> point, int index) callback}) {
  var k = 0;
  if (columnFirst) {
    for (var i = minX; i <= maxX; i++) {
      for (var j = minY; j <= maxY; j++) {
        callback(Point(i, j), k);
        k++;
      }
    }
  } else {
    for (var j = minY; j <= maxY; j++) {
      for (var i = minX; i <= maxX; i++) {
        callback(Point(i, j), k);
        k++;
      }
    }
  }
}