axioma.render.
LegendReportItem
¶Элемент отчета типа легенда
Унаследован от: ReportItem
LegendReportItem
(legendPosition, rect, report)¶Конструктор
Параметры:
- legendPosition (
LegendItemPosition
) – Элемент легенды, на базе которого строится элемент отчета.- rect (
QRectF
) – Прямоугольник элемента отчета в координатах отчета.- report (
Report
) – Отчет, к которому относится создаваемый элемент.
legendItemPosition
()¶Возвращает элемент легенды, на базе которого строится элемент отчета
Результат: Элемент легенды Тип результата: LegendItemPosition
Пример использования:
# Создание элемента отчета типа Легенда. Берем первую из открытых карт и для первого слоя создаем легенду # Так же возможно создать элемент отчета не на базе MapView, а создав временный слой на основе открытой таблицы def createLegendItem(report): if axioma.app.mainWindow.mapViewManager().mapViewCount(): try: mapview = axioma.app.mainWindow.mapViewManager().currentMapView() # Получение текущей карты if mapview is not None: layers = mapview.map().flatLayerList() # Список слоев карты for lay in layers: if isinstance(lay, HasStyles): # Если есть легенда legendItem = FeatureLegendItem(lay, lay.name(), report) # Создание легенды для векторного слоя itemPosition = LegendItemPosition(report, legendItem, legendItem.basePoint()) r_legend = QRectF(210, 380, 50, 50) legendReportItem = LegendReportItem(itemPosition, r_legend, report) # Создание элемента отчета report.addItem(legendReportItem) # Добавляем в отчет except Exception as ex: print(ex)