calculateScaleFactor static method

double calculateScaleFactor(
  1. List<RoundedPolygon> indicatorPolygons, {
  2. bool approximate = true,
})

Implementation

static double calculateScaleFactor(
  List<RoundedPolygon> indicatorPolygons, {
  bool approximate = true,
}) {
  var scaleFactor = 1.0;
  for (var i = 0; i < indicatorPolygons.length; i++) {
    final polygon = indicatorPolygons[i];

    final bounds = polygon.calculateBounds(approximate: approximate);
    final maxBounds = polygon.calculateMaxBounds();

    final scaleX = bounds.width / maxBounds.width;
    final scaleY = bounds.height / maxBounds.height;

    scaleFactor = math.min(scaleFactor, math.max(scaleX, scaleY));
  }
  return scaleFactor;
}