axioma.render.
GeometryStyleManager
¶Менеджер зарегистрированных расширений, позволяющих поставить в соответствие стиль оформления объекта и его геометрию.
Унаследован от: QObject
styleExtensionByStyle
(style)¶Получение расширения для заданного стиля
Параметры: style ( Style
) – Анализируемый стильРезультат: Найденное расширение или None Тип результата: StyleExtension
Пример использования:
from axioma.core.plugin import * # Объявляем класс-расширение для получения менеджера стилей class MyExtension(axioma.core.plugin.Extension): def __init__(self): super().__init__() self.styleManager = self.createDependencyGetter(axioma.render.GeometryStyleManager) # Создаем расширение как объект и регистрируем его в системе ext = MyExtension() axioma.app.gui.prependExtension(ext) # Запрашиваем менеджер if ext.styleManager is not None: # Создаем стиль из строки MapBasic style = MapBasicStyle().styleFromString("Brush (2,16776960,16777215) Pen (1,2,0)") # Через менеджер расширений получаем нужное расширение для заданного стиля styleExt = ext.styleManager().styleExtensionByStyle(style) print('Тип геометрии={}, Стиль геометрии={}'.format(styleExt.geometryStyleClassId(), styleExt.styleId()))