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)Возвращает общий для обоих прямоугольник.
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=None) Rect
Глубокая копия объекта. (функция
copy.deepcopy()
)
- __init__(xmin: float, ymin: float, xmax: float, ymax: float)
Конструктор класса.
- Параметры:
xmin – Минимальное значение X.
ymin – Минимальное значение Y.
xmax – Максимальное значение X.
ymax – Максимальное значение Y.
- contains(other: Union[Pnt, QPointF, Rect, QRectF]) 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 – Преобразуемый прямоугольник.
- 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) '''
- 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 '''