aabbCompute method

void aabbCompute()

Implementation

void aabbCompute() {
  double minX = double.infinity,
      minY = double.infinity,
      maxX = double.negativeInfinity,
      maxY = double.negativeInfinity;
  final List<Float32List> polygons = this.polygons;
  final int n = polygons.length;
  for (int i = 0; i < n; i++) {
    final Float32List polygon = polygons[i];
    final Float32List vertices = polygon;
    final int nn = polygon.length;
    for (int ii = 0; ii < nn; ii += 2) {
      final double x = vertices[ii];
      final double y = vertices[ii + 1];
      minX = math.min(minX, x);
      minY = math.min(minY, y);
      maxX = math.max(maxX, x);
      maxY = math.max(maxY, y);
    }
  }
  this.minX = minX;
  this.minY = minY;
  this.maxX = maxX;
  this.maxY = maxY;
}