CollectionStyle - Стиль коллекций
![digraph geometry {
node [shape="box", style=filled, fillcolor="lightgray"]
rankdir=LR
labelloc="t";
Style [ href="Style.html#ref-label-style-class" ];
PointStyle [ href="PointStyle.html#ref-label-pointstyle-class" ];
LineStyle [ href="LineStyle.html#ref-label-linestyle-class" ];
PolygonStyle [ href="PolygonStyle.html#ref-label-polygonstyle-class" ];
TextStyle [ href="TextStyle.html#ref-label-textstyle-class" ];
CollectionStyle [ href="CollectionStyle.html#ref-label-collectionstyle-class", fillcolor=green, style=filled ];
Style -> CollectionStyle;
CollectionStyle -> PointStyle [style=dashed, arrowhead=none];
CollectionStyle -> LineStyle [style=dashed, arrowhead=none];
CollectionStyle -> PolygonStyle [style=dashed, arrowhead=none];
CollectionStyle -> TextStyle [style=dashed, arrowhead=none];
}](../../../_images/graphviz-4a09c7709b3667b366d01faa5781ad7f38f4a838.png)
- 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.
Специальные методы:
__eq__(other)Оператор равенства (==).
__repr__()Официальное строковое представление объекта при вызове
repr().__str__()Неформальное строковое представление объекта при вызове
strилиprint().- 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.