getPositionRatioFit method
dynamic
getPositionRatioFit(
- Rect rect
)
Implementation
getPositionRatioFit(Rect rect) {
var borderRadiusFit = getBorderRadiusFit(rect);
var arrowWidthFit = getArrowWidthFit(rect);
var minPositionRatio;
var maxPositionRatio;
if (direction == ArrowDirection.left || direction == ArrowDirection.right) {
minPositionRatio = (borderRadiusFit + 0.5 * arrowWidthFit) / rect.height;
maxPositionRatio =
(rect.height - borderRadiusFit - 0.5 * arrowWidthFit) / rect.height;
} else {
minPositionRatio = (borderRadiusFit + 0.5 * arrowWidthFit) / rect.width;
maxPositionRatio =
(rect.width - borderRadiusFit - 0.5 * arrowWidthFit) / rect.width;
}
if (positionRatio < minPositionRatio) {
return minPositionRatio;
}
if (positionRatio > maxPositionRatio) {
return maxPositionRatio;
}
return positionRatio;
}