Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
167 of 1024 menu
◀ ▶

Метод fromCenter

Метод fromCenter класса Rect ставит центр в заданную точку и откладывает от неё половину ширины и половину высоты. Центр это точка Offset. От него влево и вправо откладывают половину ширины, вверх и вниз половину высоты.

Синтаксис

Rect.fromCenter(center: Offset(50, 40), width: 80, height: 20)

Параметры

Параметр Описание
center Центр фигуры, точка Offset.
width Ширина в логических пикселях.
height Высота в логических пикселях.

Пример

Давайте построим 80 на 20 вокруг точки (50, 40):

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Center( child: Builder( builder: (context) { Rect rect = Rect.fromCenter(center: Offset(50, 40), width: 80, height: 20); return Text(rect.left.toStringAsFixed(0) + ' ' + rect.top.toStringAsFixed(0) + ' ' + rect.width.toStringAsFixed(0) + ' ' + rect.height.toStringAsFixed(0)); }, ), ), ), ), ); }

На экране 10 30 80 20. Левый край это 50 минус половина ширины.

Пример

Давайте построим квадрат 40 вокруг нуля:

import 'package:flutter/material.dart'; void main() { runApp( MaterialApp( home: Scaffold( body: Center( child: Builder( builder: (context) { Rect rect = Rect.fromCenter(center: Offset.zero, width: 40, height: 40); return Text(rect.left.toStringAsFixed(0) + ' ' + rect.top.toStringAsFixed(0) + ' ' + rect.width.toStringAsFixed(0) + ' ' + rect.height.toStringAsFixed(0)); }, ), ), ), ), ); }

На экране -20 -20 40 40. Центр в нуле, поэтому края ушли в минус.

Смотрите также

  • метод fromLTWH,
    который собирает прямоугольник из левого края, верхнего края, ширины и высоты
  • метод fromLTRB,
    который собирает прямоугольник из четырёх краёв
  • метод fromCircle,
    который собирает квадрат вокруг круга
  • класс RRect,
    который хранит прямоугольник со скруглёнными углами
← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить