Style - Стиль

digraph geometry {
    node [shape="box", style=filled, fillcolor="lightgray"]
    rankdir=LR
    labelloc="t";
    label="Иерархия классов стилей геометрических объектов:";

    Style  [ href="Style.html#ref-label-style-class", fillcolor=green, style=filled ];
    PointStyle  [ href="PointStyle.html#ref-label-pointstyle-class" ];
    PointCompatStyle  [ href="PointCompatStyle.html#ref-label-pointcompatstyle-class" ];
    PointFontStyle  [ href="PointFontStyle.html#ref-label-pointfontstyle-class" ];
    PointPictureStyle  [ href="PointPictureStyle.html#ref-label-pointpicturestyle-class" ];
    LineStyle  [ href="LineStyle.html#ref-label-linestyle-class" ];
    FillStyle  [ href="FillStyle.html#ref-label-fillstyle-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" ];

    Style -> PointStyle;
    PointStyle -> PointCompatStyle;
    PointStyle -> PointFontStyle;
    PointStyle -> PointPictureStyle;
    Style -> LineStyle;
    Style -> FillStyle;
    Style -> PolygonStyle;
    Style -> TextStyle;
    Style -> CollectionStyle;
}
class axipy.Style

Абстрактный класс стиля оформления геометрического объекта. Определяет как будет отрисован геометрический объект.

Примечание

Для получения текстового представления стиля можно воспользоваться функцией str.

Классовые методы:

for_geometry(geom)

Возвращает стиль по умолчанию для переданного объекта.

from_mapinfo(mapbasic_string)

Получает стиль из строки формата MapBasic.

Методы:

clone()

Создаёт копию объекта стиля

draw(geometry, painter)

Рисует геометрический объект с текущим стилем в произвольном контексте вывода.

to_mapinfo()

Возвращает строковое представление в формате MapBasic.

clone() Style

Создаёт копию объекта стиля

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 – Геометрический объект, для которого необходимо получить соответствующий ему стиль.

classmethod from_mapinfo(mapbasic_string: str) Optional[Style]

Получает стиль из строки формата MapBasic.

Параметры:

mapbasic_string – Строка в формате MapBasic.

style = Style.from_mapinfo("Pen (1, 2, 0) Brush (8, 255)")
to_mapinfo() str

Возвращает строковое представление в формате MapBasic.

print(style.to_mapinfo())
'''
>>> Pen (1, 2, 0) Brush (8, 255)
'''