Метод lerp
Метод lerp класса Rect
смешивает левый, верхний, правый и нижний края.
Доля 0 даёт первый прямоугольник, доля 1 второй.
Синтаксис
Rect.lerp(a, b, 0.5)
Параметры
| Параметр | Описание |
|---|---|
a |
Первый прямоугольник. |
b |
Второй прямоугольник. |
t |
Доля смешивания от 0 до 1.
|
Пример
Давайте возьмём середину между 20 на 10 и 80 на 40:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Builder(
builder: (context)
{
Rect rect = Rect.lerp(Rect.fromLTWH(0, 0, 20, 10), Rect.fromLTWH(0, 0, 80, 40), 0.5)!;
return Text(rect.left.toStringAsFixed(0) + ' ' + rect.top.toStringAsFixed(0) + ' ' + rect.width.toStringAsFixed(0) + ' ' + rect.height.toStringAsFixed(0));
},
),
),
),
),
);
}
На экране 0 0 50 25. Ширина и высота взяты посередине.
Пример
Давайте оставим первый прямоугольник:
import 'package:flutter/material.dart';
void main()
{
runApp(
MaterialApp(
home: Scaffold(
body: Center(
child: Builder(
builder: (context)
{
Rect rect = Rect.lerp(Rect.fromLTWH(0, 0, 20, 10), Rect.fromLTWH(0, 0, 80, 40), 0)!;
return Text(rect.left.toStringAsFixed(0) + ' ' + rect.top.toStringAsFixed(0) + ' ' + rect.width.toStringAsFixed(0) + ' ' + rect.height.toStringAsFixed(0));
},
),
),
),
),
);
}
На экране 0 0 20 10.
Четыре числа это левый край, верхний край, ширина и высота.
Смотрите также
-
метод
fromLTWH,
который собирает прямоугольник из левого края, верхнего края, ширины и высоты -
метод
fromLTRB,
который собирает прямоугольник из четырёх краёв -
метод
fromCenter,
который собирает прямоугольник заданного размера вокруг точки -
класс
RRect,
который хранит прямоугольник со скруглёнными углами