CollectionStyle - Стиль коллекций
- class axipy.CollectionStyle
Базовые классы:
Style
Смешанный стиль для разнородного типа объектов.
Данный стиль представляет собой контейнер стилей. может применяться в купе с геометрическим объектом типа разнородная коллекция
axipy.GeometryCollection
. Для задания или переопределения стилей простейших объектов, необходимо вызывать соответствующие методы для необходимых типов объектов.Примечание
Объекты стилей, полученные через методы
line()
,polygon()
и т.д. будут удалены сразу же после удаления объекта стиля коллекции. Если их нужно сохранить, воспользуйтесь операциейaxipy.Style.clone()
.Классовые методы:
for_geometry
(geom)Возвращает стиль по умолчанию для переданного объекта.
from_mapinfo
(mapbasic_string)Получает стиль из строки формата MapBasic.
Свойства:
Стиль для линейных объектов
LineStyle
.Стиль для точечных объектов
PointStyle
.Стиль для полигональных объектов
PolygonStyle
.Стиль для текстовых объектов
TextStyle
.Методы:
clone
()Создаёт копию объекта стиля
draw
(geometry, painter)Рисует геометрический объект с текущим стилем в произвольном контексте вывода.
find_style
(geom)Возвращает стиль, подходящий для переданной геометрии.
for_line
(style)Задание стиля для линейных объектов
LineStyle
.for_point
(style)Задание стиля для точечных объектов
PointStyle
.for_polygon
(style)Задание стиля для полигональных объектов
PolygonStyle
.for_text
(style)Задание стиля для текстовых объектов
TextStyle
.Возвращает строковое представление в формате MapBasic.
- draw(geometry: Geometry, painter: QPainter)
Рисует геометрический объект с текущим стилем в произвольном контексте вывода. Это может быть востребовано при желании отрисовать геометрию со стилем на форме или диалоге.
- Параметры:
geometry – Геометрия. Должна соответствовать стилю. Т.е. если объект полигон, а стиль для рисования точечных объектов, то ничего нарисовано не будет.
painter – Контекст вывода.
image = QImage(100, 100, QImage.Format_ARGB32_Premultiplied) image.fill(Qt.white) painter = QPainter(image) point = Point(50, 50) style = PointStyle.create_mi_font(42, Qt.red, 24) style.draw(point, painter) image.save(filename)
- classmethod for_geometry(geom: Geometry) Style
Возвращает стиль по умолчанию для переданного объекта.
- Параметры:
geom – Геометрический объект, для которого необходимо получить соответствующий ему стиль.
- for_point(style: PointStyle)
Задание стиля для точечных объектов
PointStyle
.
- for_polygon(style: PolygonStyle)
Задание стиля для полигональных объектов
PolygonStyle
.
- classmethod from_mapinfo(mapbasic_string: str) Optional[Style]
Получает стиль из строки формата MapBasic.
- Параметры:
mapbasic_string – Строка в формате MapBasic.
style = Style.from_mapinfo("Pen (1, 2, 0) Brush (8, 255)")
- property point: Optional[PointStyle]
Стиль для точечных объектов
PointStyle
.
- property polygon: Optional[PolygonStyle]
Стиль для полигональных объектов
PolygonStyle
.