Rect - Прямоугольник
- class axipy.Rect
Прямоугольник, который не обладает геопривязкой. Используется для различного вида запросов.
Создание прямоугольника.from axipy import Rect rect = Rect(0, 0, 10, 5) print(rect) ''' >>> (0.0 0.0) (10.0 5.0) '''
Конструктор класса:
__init__(xmin, ymin, xmax, ymax)Конструктор класса.
Классовые методы:
eq_approx(rect1, rect2[, precision])Сравнивает два прямоугольника с заданной точностью.
from_qt(r)Преобразует из формата Qt.
Свойства:
Устанавливает или возвращает центр прямоугольника.
Возвращает высоту прямоугольника.
Возвращает признак, что один или оба размера равны нулю.
Возвращает признак, является ли прямоугольник правильным.
Возвращает ширину прямоугольника.
Устанавливает или возвращает максимальное значение X.
Устанавливает или возвращает минимальное значение X.
Устанавливает или возвращает максимальное значение Y.
Устанавливает или возвращает минимальное значение Y.
Методы:
clone()Возвращает копию.
contains(other)Содержит ли полностью в своих границах переданный объект.
expanded(dx, dy)Возвращает прямоугольник, увеличенный на заданные величины.
intersected(other)Возвращает общий для обоих прямоугольник.
intersects(other)Проверяет, имеются ли пересечения с другим прямоугольником.
merge(other)Возвращает прямоугольник, занимаемый обоими прямоугольниками.
Исправляет прямоугольник, если его ширина или высота отрицательны.
to_qt()Преобразование в формат Qt.
translated(dx, dy)Возвращает прямоугольник, смещенный на заданную величину.
Специальные методы:
__copy__()Поверхностная копия объекта.
__deepcopy__([memo_dict])Глубокая копия объекта.
__eq__(other)Оператор равенства (==).
__format__(format_spec)Форматированное строковое представление.
__repr__()Официальное строковое представление объекта при вызове
repr().__str__()Неформальное строковое представление объекта при вызове
strилиprint().- __copy__() Rect
Поверхностная копия объекта. (функция
copy.copy())
- __deepcopy__(memo_dict: Optional[dict] = None) Rect
Глубокая копия объекта. (функция
copy.deepcopy())
- __init__(xmin: float, ymin: float, xmax: float, ymax: float)
Конструктор класса.
- Параметры:
xmin – Минимальное значение X.
ymin – Минимальное значение Y.
xmax – Максимальное значение X.
ymax – Максимальное значение Y.
- property center: Pnt
Устанавливает или возвращает центр прямоугольника.
- clone() Rect
Возвращает копию.
- contains(other: Union[Pnt, Tuple[float, float], QPointF, Rect, Tuple[float, float, float, float], QRectF, QRect]) bool
Содержит ли полностью в своих границах переданный объект.
- Параметры:
other – Переданный объект - точка или прямоугольник.
Пример.r = Rect(0, 0, 10, 10) print("contains (0, 0)", r.contains((0, 0))) print("contains (15, 10)", r.contains((15, 10))) print("contains (0, 0) (5, 5)", r.contains(Rect(0, 0, 5, 5))) print("contains (0, 0) (15, 15)", r.contains(Rect(0, 0, 15, 15))) ''' >>> contains (0, 0) True >>> contains (15, 10) False >>> contains (0, 0) (5, 5) True >>> contains (0, 0) (15, 15) False '''
- classmethod eq_approx(rect1: Rect, rect2: Rect, precision: float = 1e-12) bool
Сравнивает два прямоугольника с заданной точностью.
- Параметры:
rect1 – Первый прямоугольник сравнения.
rect2 – Второй прямоугольник сравнения.
precision – Точность сравнения.
- Результат:
True если прямоугольники равны.
- expanded(dx: float, dy: float) Rect
Возвращает прямоугольник, увеличенный на заданные величины. Увеличение размеров производится по отношению к центру, который не меняется в результате операции.
- Параметры:
dx – расширение по X.
dy – расширение по Y.
Пример.r = Rect(0, 0, 10, 10) print(r.expanded(10, 10)) ''' >>> (-5.0 -5.0) (15.0 15.0) '''
- classmethod from_qt(r: Union[QRect, QRectF]) Rect
Преобразует из формата Qt.
- Параметры:
r – Преобразуемый прямоугольник.
- property height: float
Возвращает высоту прямоугольника.
- intersected(other: Rect) Rect
Возвращает общий для обоих прямоугольник.
- Параметры:
other – Прямоугольник, с которым производится операция.
Пример.r1 = Rect(0, 0, 5, 10) r2 = Rect(0, 0, 10, 5) print(r1.intersected(r2)) ''' >>> (0.0 0.0) (5.0 5.0) '''
- intersects(other: Rect) bool
Проверяет, имеются ли пересечения с другим прямоугольником.
- Параметры:
other – Прямоугольник, с которым производится операция.
- property is_empty: bool
Возвращает признак, что один или оба размера равны нулю.
- property is_valid: bool
Возвращает признак, является ли прямоугольник правильным.
- merge(other: Rect) Rect
Возвращает прямоугольник, занимаемый обоими прямоугольниками.
- Параметры:
other – Прямоугольник, с которым производится операция.
Пример.r1 = Rect(0, 0, 5, 10) r2 = Rect(0, 0, 10, 5) print(r1.merge(r2)) ''' >>> (0.0 0.0) (10.0 10.0) '''
- normalize()
Исправляет прямоугольник, если его ширина или высота отрицательны.
Пример.from PySide2.QtCore import QRect r = Rect.from_qt(QRect(0, 5, -10, 10)) print(r) print(r.is_valid) r.normalize() print(r) print(r.is_valid) ''' >>> (0.0 5.0) (-10.0 15.0) >>> False >>> (-10.0 5.0) (0.0 15.0) >>> True '''
- to_qt() QRectF
Преобразование в формат Qt.
- translated(dx: float, dy: float) Rect
Возвращает прямоугольник, смещенный на заданную величину.
- Параметры:
dx – смещение по X.
dy – смещение по Y.
Пример.r = Rect(0, 0, 10, 10) print(r.translated(10, -10)) ''' >>> (10.0 -10.0) (20.0 0.0) '''
- property width: float
Возвращает ширину прямоугольника.
- property xmax: float
Устанавливает или возвращает максимальное значение X.
- property xmin: float
Устанавливает или возвращает минимальное значение X.
- property ymax: float
Устанавливает или возвращает максимальное значение Y.
- property ymin: float
Устанавливает или возвращает минимальное значение Y.