Класс USize: размеры прямоугольной области (тип int)
Класс USize описывает размеры прямоугольной области. Инструкция импорта:
from unicross_image.uhelper import USize
Форматы конструктора класса:
USize(width, height)
USize( (width, height) )
USize(usize)
Первый конструктор позволяет указать ширину и высоту области через запятую:
s = USize(200, 100)
print(s) # USize(width=200, height=100)
print(repr(s)) # (200, 100)
Если в качестве размера указать значение меньшее или равное 0, то будет сгенерировано исключение ValueError.
Во втором конструкторе можно задать размеры в виде кортежа или списка:
s = USize( (200, 100) )
print(s) # USize(width=200, height=100)
s = USize( [200, 100] )
print(s) # USize(width=200, height=100)
Третий конструктор создает объект на основе другого объекта:
s1 = USize(200, 100)
s2 = USize(s1)
print(s2) # USize(width=200, height=100)
Сравнить два объекта USize можно с помощью операторов == и !=:
s1 = USize(200, 100)
s2 = USize(200, 100)
s3 = USize(50, 10)
print(s1 == s2) # True
print(s1 == s3) # False
print(s1 != s2) # False
print(s1 != s3) # True
Класс USize поддерживает итерации, поэтому объект можно преобразовать в кортеж или список, а также перебрать поэлементно с помощью циклов:
s = USize(100, 200)
print(tuple(s)) # (100, 200)
print(list(s)) # [100, 200]
for i in s:
print(i, end=", ")
# 100, 200,
Пример распаковки объекта:
s = USize(100, 200)
width, height = s
print(width, height) # 100 200
Перечислим методы класса USize:
get_width() и get_height() — возвращают ширину и высоту соответственно. Пример:
s = USize(200, 100)
print(s.get_width()) # 200
print(s.get_height()) # 100
get_size() — возвращает размеры в виде кортежа. Пример:
s = USize(200, 100)
print(s.get_size()) # (200, 100)
Можно также преобразовать объект в кортеж с помощью функции tuple() или выполнить распаковку:
s = USize(100, 200)
print(tuple(s)) # (100, 200)
width, height = s
print(width, height) # 100 200
get_usize() — создает копию объекта. Пример:
s = USize(200, 100)
print(s.get_usize()) # USize(width=200, height=100)
Класс входит в состав графической библиотеки UImage для Python 3. Описание библиотеки UImage