LineStyle - Стиль линий
- class axipy.LineStyle
Базовые классы:
Style
Стиль линейного объекта, совместимый с MapInfo.
В системе доступны следующие стили линии:
Пример.style = LineStyle(3, Qt.red)
Конструктор класса:
__init__
([pattern, color, width])Конструктор класса.
Классовые методы:
for_geometry
(geom)Возвращает стиль по умолчанию для переданного объекта.
from_mapinfo
(mapbasic_string)Получает стиль из строки формата MapBasic.
Свойства:
Устанавливает или возвращает цвет линии.
Устанавливает или возвращает номер стиля линии.
Устанавливает или возвращает толщину линии.
Методы:
clone
()Создаёт копию объекта стиля
draw
(geometry, painter)Рисует геометрический объект с текущим стилем в произвольном контексте вывода.
Возвращает строковое представление в формате MapBasic.
Специальные методы:
__eq__
(other)Оператор равенства (==).
__repr__
()Официальное строковое представление объекта при вызове
repr()
.__str__
()Неформальное строковое представление объекта при вызове
str
илиprint()
.- __init__(pattern: int = 2, color: QColor = Qt.black, width: int = 1)
Конструктор класса.
- Параметры:
pattern – Тип линии. Типы линий обозначаются кодами от 1 до 118. Тип 1 представляет собой невидимую линию.
color – Цвет линии
width – Толщина линии. Задается числом от 0 до 7, при этом линия нулевой ширины невидима на экране. 11-2047 - это значения, которые могут быть преобразованы в пункты: ширина линии = (число пунктов * 10) + 10 Значение 0 допустимо только для типа линии 1 или невидимых линий.
- 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)")