Слой - Layer
¶
digraph geometry {
node [shape="box", style=filled, fillcolor="lightgray"]
rankdir=LR
labelloc="t";
label="Иерархия классов слоев карты:";
Layer [ href="#ref-label-layer-class" ];
VectorLayer [ href="#ref-label-vectorlayer-class" ];
RasterLayer [ href="#ref-label-rasterlayer-class" ];
ThematicLayer [ href="thematic.html#ref-label-thematiclayer-class" ];
RangeThematicLayer [ href="thematic.html#ref-label-rangethematiclayer-class" ];
PieThematicLayer [ href="thematic.html#ref-label-piethematiclayer-class" ];
BarThematicLayer [ href="thematic.html#ref-label-barthematiclayer-class" ];
SymbolThematicLayer [ href="thematic.html#ref-label-symbolthematiclayer-class" ];
IndividualThematicLayer [ href="thematic.html#ref-label-individualthematiclayer-class" ];
DensityThematicLayer [ href="thematic.html#ref-label-densitythematiclayer-class" ];
Layer -> VectorLayer;
Layer -> RasterLayer;
Layer -> ThematicLayer;
ThematicLayer -> RangeThematicLayer;
ThematicLayer -> PieThematicLayer;
ThematicLayer -> BarThematicLayer;
ThematicLayer -> SymbolThematicLayer;
ThematicLayer -> IndividualThematicLayer;
ThematicLayer -> DensityThematicLayer;
}-
class
axipy.render.
Layer
¶ Абстрактный базовый класс для слоя карты.
Для создания нового экземпляра для векторного или растрового источника данных необходимо использовать метод
create()
. Для тематических слоев - использовать соответствующие им конструкторы.-
property
bounds
¶ Область в которую попадают все данные, которые могут быть отображены на слое.
- Тип результата
-
property
coordsystem
¶ Координатная система, в которой находятся данные, отображаемые слоем.
- Тип результата
-
classmethod
create
(dataObject)¶ Создает слой на базе открытой таблицы или растра.
- Параметры
dataObject (
DataObject
) – Таблица или растр. В зависимости от переданного объекта будет созданVectorLayer
илиRasterLayer
.
Пример:
# Пример создания слоя на базе таблицы table = io.openfile('world.tab') world = Layer.create(table)
- Тип результата
-
property
data_changed
¶ Signal[]
Сигнал об изменении контента слоя.- Тип результата
Signal
-
property
data_object
¶ Источник данных для слоя.
- Тип результата
-
property
need_redraw
¶ Signal[]
Сигнал о необходимости перерисовать слой.Пример:
# Подпишемся на обновление контента слоя layer.need_redraw.connect(lambda: print('Update layer'))
- Тип результата
Signal
-
property
opacity
¶ Прозрачность слоя в составе карты. Доступные значения от 0 до 100.
- Тип результата
-
property
Векторный слой - VectorLayer
¶
-
class
axipy.render.
VectorLayer
¶ Базовые классы:
axipy.render.Layer
Слой, основанный на базе векторных данных.
Примечание
Создание слоя производится посредством метода вызова
Layer.create()
-
property
label
¶ Метки слоя.
Зададим в качестве формулы метки атрибут «Страна» и запретим перекрытие меток друг другом:
world.label.text = "Страна" world.label.placementPolicy = Label.DISALLOW_OVERLAP
- Тип результата
-
property
overrideStyle
¶ Переопределяемый стиль слоя. Если задан как None (по умолчанию), объекты будут отображены на основании оформления источника данных.
Пример:
style_lay = Style.from_mapinfo("Pen (1, 2, 0) Brush (8, 255) Symbol (33,255,14)") world.overrideStyle = style_lay
Для сброса переопределения достаточно задать значение None:
world.overrideStyle = None
- Тип результата
-
property
thematic
¶ Перечень тематик для данного слоя.
- Тип результата
-
property
Перечень тематик для векторного слоя - ListThematic
¶
-
class
axipy.render.
ListThematic
¶ Список тематических слоев (тематик) карты.
-
add
(lay)¶ Добавить тематику.
- Параметры
lay (
ThematicLayer
) – Добавляемый тематический слой.
-
at
(idx)¶ Получение тематики по ее индексу.
- Параметры
idx (
int
) – Индекс запрашиваемой тематики.- Тип результата
-
move
(fromIdx, toIdx)¶ Поменять тематики местами.
-
Метка для векторного слоя - Label
¶
-
class
axipy.render.
Label
¶ Метки слоя. Доступны через свойство векторного слоя
label
.
Растровый слой - RasterLayer
¶
-
class
axipy.render.
RasterLayer
¶ Базовые классы:
axipy.render.Layer
Класс, который должен использоваться в качестве базового класса для тех слоев, в которых используются свойства отрисовки растрового изображения.
Пример:
# Создание слоя производится посредством вызова метода Layer.create raster = io.openfile('TrueMarble.tif') rasterLayer = Layer.create(raster)