getPadding method
Calculates padding for displaying the bounding box on screen
Implementation
Map<String, double> getPadding(double screenWidth, double screenHeight) {
final aspectRatio = width / height;
final screenAspectRatio = screenWidth / screenHeight;
// Ensure minimum padding
const double minPadding = 50.0;
if (aspectRatio > screenAspectRatio) {
// Route is wider than screen
final verticalPadding = (screenHeight - (screenWidth / aspectRatio)) / 2;
return {
'top': math.max(verticalPadding, minPadding),
'bottom': math.max(verticalPadding, minPadding),
'left': minPadding,
'right': minPadding,
};
} else {
// Route is taller than screen
final horizontalPadding = (screenWidth - (screenHeight * aspectRatio)) / 2;
return {
'top': minPadding,
'bottom': minPadding,
'left': math.max(horizontalPadding, minPadding),
'right': math.max(horizontalPadding, minPadding),
};
}
}