# CosmeticLayer - Косметический слой

class axipy.CosmeticLayer

  Базовые классы: `VectorLayer`

  Косметический слой.

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

  `create`(dataObject) | Создает слой на базе открытой таблицы или растра.

  Свойства:

  `coordsystem` | Возвращает координатную систему, в которой находятся данные, отображаемые слоем.
  `data_object` | Возвращает источник данных для слоя.
  `hotlink` | Устанавливает или возвращает наименование атрибута таблицы для хранения гиперссылки.
  `is_valid` | Возвращает признак валидности слоя.
  `label` | Возвращает метки слоя.
  `linesDirectionVisibile` | Устанавливает или возвращает признак отображения направлений линий.
  `max_zoom` | Устанавливает или возвращает максимальную ширину окна, при которой слой отображается на карте.
  `min_zoom` | Устанавливает или возвращает минимальную ширину окна, при которой слой отображается на карте.
  `nodesVisible` | Устанавливает или возвращает признак отображения узлов линий и полигонов.
  `opacity` | Устанавливает или возвращает прозрачность слоя в составе карты.
  `overrideStyle` | Устанавливает или возвращает переопределяемый стиль слоя.
  `selectable` | Устанавливает или возвращает признак доступности выбора объектов слоя, если это поддерживается.
  `showCentroid` | Устанавливает или возвращает признак отображения центроидов на слое.
  `thematic` | Возвращает перечень тематик для данного слоя.
  `title` | Устанавливает или возвращает наименование слоя.
  `visible` | Устанавливает или возвращает признак видимости слоя.
  `zoom_restrict` | Устанавливает или возвращает признак, будет ли использоваться ограничение по отображению.

  Методы:

  `get_bounds`() | Возвращает область, которая содержит все данные слоя.

  Сигналы:

  `data_changed` | Сигнал об изменении контента слоя.
  `need_redraw` | Сигнал о необходимости перерисовать слой.

  Специальные методы:

  `__eq__`(other) | Оператор равенства (==).
  `__repr__`() | Официальное строковое представление объекта при вызове `repr()`.
  `__str__`() | Неформальное строковое представление объекта при вызове `str` или `print()`.

  __eq__(other: object) → bool

    Оператор равенства (==).

  __repr__() → str

    Официальное строковое представление объекта при вызове `repr()`.

  __str__() → str

    Неформальное строковое представление объекта при вызове `str` или `print()`.

  property coordsystem: CoordSystem

    Возвращает координатную систему, в которой находятся данные, отображаемые слоем.

  classmethod create(dataObject: DataObject) → Layer

    Создает слой на базе открытой таблицы или растра.

    Параметры:

      dataObject – Таблица или растр. В зависимости от переданного объекта будет создан `VectorLayer` или `RasterLayer`.

    Пример создания слоя на базе файла.

        # Векторный слой
        table = provider_manager.openfile(filepath)
        vector_layer = Layer.create(table)
        # Подпишемся на обновление контента слоя
        vector_layer.need_redraw.connect(lambda: print('Update layer'))

  property data_changed: Signal

    Сигнал об изменении контента слоя.

    Тип результата:

      Signal[]

  property data_object: Table

    Возвращает источник данных для слоя.

  get_bounds() → Rect

    Возвращает область, которая содержит все данные слоя.

  property hotlink: str

    Устанавливает или возвращает наименование атрибута таблицы для хранения гиперссылки.

    Возможны следующие варианты
    Значение | Описание
    --- | ---
    axioma://world.tab | Открывает файл или рабочее пространство в аксиоме
    addlayer://world | Добавляет слой world в текущую карту
    exec://gimp | Запускает на выполнение программу gimp
    https://axioma-gis.ru/ | Открывает ссылку в браузере

    Если префикс отсутствует, то производится попытка запустить по ассоциации.

  property is_valid: bool

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

    Слой мог быть удален, как пример, в связи с закрытием таблицы.

  property label: Label

    Возвращает метки слоя.

    В качестве формулы может использоваться или наименование поля таблицы или выражение.

  property linesDirectionVisibile: bool

    Устанавливает или возвращает признак отображения направлений линий.

  property max_zoom: float

    Устанавливает или возвращает максимальную ширину окна, при которой слой отображается на карте.

    Учитывается только при установленном zoom_restrict=True.

  property min_zoom: float

    Устанавливает или возвращает минимальную ширину окна, при которой слой отображается на карте.

    Учитывается только при установленном zoom_restrict=True.

  property need_redraw: Signal

    Сигнал о необходимости перерисовать слой.

    Тип результата:

      Signal[]

  property nodesVisible: bool

    Устанавливает или возвращает признак отображения узлов линий и полигонов.

  property opacity: int

    Устанавливает или возвращает прозрачность слоя в составе карты.

    Доступные значения от 0 до 100.

  property overrideStyle: Optional[Style]

    Устанавливает или возвращает переопределяемый стиль слоя.

    Если задан как None (по умолчанию), объекты будут отображены на основании оформления источника данных.

  property selectable: bool

    Устанавливает или возвращает признак доступности выбора объектов слоя, если это поддерживается.

  property showCentroid: bool

    Устанавливает или возвращает признак отображения центроидов на слое.

  property thematic: ListThematic

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

    Пример.

        # Создадим тематический слой
        range1 = RangeThematicLayer("Население")
        # Добавим в основной слой
        world.thematic.append(range1)
        # Получим добавленный тематический слой
        range1 = world.thematic[0]
        # Просмотр всех тематик слоя
        for t in world.thematic:
            print('thematic:', t.title)

  property title: str

    Устанавливает или возвращает наименование слоя.

  property visible: bool

    Устанавливает или возвращает признак видимости слоя.

    Выключение видимости верхнего слоя для активной карты:

        if axipy.view_manager.active is not None:
            axipy.view_manager.active.map.layers[0].visible = False

  property zoom_restrict: bool

    Устанавливает или возвращает признак, будет ли использоваться ограничение по отображению.

    Если установлено True, то для ограничения отображения слоя в зависимости от масштаба используются значения свойств zoom_min и zoom_max.