Элемент <g>

Обозначение слоев

Элемент <g> является дочерним элементом элемента <svg> и содержит настройки слоев топоосновы. Первым элементом <g> является элемент корневого слоя топоосновы. Данный элемент должен иметь атрибут fs:ItemType="Layer". Корневой слой должен содержать дочерние слои. Дочерние слои также определяются элементом <g> с атрибутом fs:ItemType=”Layer”. Дочерний слой может содержать либо дополнительные дочерние слои, либо фигуры.

Примечание. Указание в рамках одного слоя дочерних слоев и фигур одновременно не допускается.

Все слои и фигуры должны иметь атрибут id, а также атрибуты style, содержащие поля: stroke, stroke-width, fill, или другие атрибуты, определенные спецификацией формата SVG версии 1.1. По умолчанию для полей используются следующие значения: stroke=#000000, stroke-width=0, fill=#000000.

Примечание. При конвертации топоосновы из формата SVG в TBS любые атрибуты, кроме id и style с полями stroke, stroke-width, fill, будут игнорированы.

Важно. При подключении топоосновы в отчетах отображение всех значений производится на фигурах слоя с идентификатором «Regions». Слои с другими идентификаторами будут отрисованы, но никак не будут использоваться при работе отчета.

Линейные элементы

Для определения линейных элементов в корневой слой можно помещать элементы <g> с атрибутом fs:ItemLayer="LinearLayer". Такие слои могут содержать, например, спорные границы стран. Отдельное размещение линейных элементов необходимо для корректной конвертации топооснов в другие форматы.

Элементами линейного слоя могут быть фигуры (список примитивов, используемых для создания фигур, указан ниже).

Примечание. При конвертации топооснов в 3D формат линейные слои преобразованы не будут, а перенесутся так как есть. В «Форсайт. Аналитическая платформа» линейные элементы используются в топоосновах, которые предназначены для отображения на мобильных устройствах.

Обозначение фигур

Фигура определяется элементом <g> с атрибутом fs:ItemType="Item" или без атрибута fs:ItemType. Дочерними элементами фигуры могут быть только примитивы из списка ниже.

Примитивы и фигуры не могут быть расположены на одном уровне. Фигура должна представлять собой географическую единицу (регион, область, округ, город, море, озеро и т.д.). У фигур можно указывать цвет заливки, а также цвет, толщину и стиль границы. Фигура должна состоять из одного или нескольких примитивов.

Для использования доступны следующие примитивы:

Примечание. В «Форсайт. Аналитическая платформа» для конвертации в формат TBS поддерживаются только примитивы path.

Идентификаторы фигур

Каждая фигура должна иметь строковой идентификатор. Если для топоосновы определен атрибут ISO, то идентификаторы фигур и значения данного атрибута должны совпадать. Поддерживаются строковые идентификаторы, состоящие из букв латинского алфавита, цифр и символов «-» и «_». Рекомендуется указывать идентификаторы, сформированные в соответствии со стандартом ISO 3166.

Примечание. Идентификатор фигуры не должен начинаться с цифры.

Если атрибут ISO отсутствует, то идентификатор должен иметь следующий формат: «O<ID>», где <ID> - цифровой идентификатор фигуры. В этом случае также рекомендуется задать атрибут IdMapping, по значениям которого будут установлены параметры элементов топоосновы при конвертации в tbs.

Важно. Идентификаторы, заданные в каком-либо другом формате, не поддерживаются при конвертации топоосновы.

Атрибут Flags при настройке дочерних слоев

Элемент <g>, соответствующий дочернему слою, может содержать необязательный атрибут Flags (например, <g fs:ItemType="Layer" id="Regions" flags="0">). Данный атрибут будет учитываться при конвертации из svg в tbs и обрабатываться следующим образом:

Синтаксис

<g fs:ItemType="Layer" id="O0">

    <g id="Regions" fs:ItemType="Layer">

        <g id="RU-MOS" style="fill: #B0B0B0; stroke: #000000; stroke-width: 1;">

            <path d="M..." />

        </g>

        ...

    </g>

    ...

</g>

Атрибуты элемента

Атрибуты слоя:

Атрибут Описание
fs:ItemType="Layer" Атрибут, указывающий, что текущий элемент соответствует слою топоосновы.
id Идентификатор слоя.

Атрибуты линейного слоя:

Атрибут Описание
fs:ItemType="LinearLayer" Атрибут, указывающий, что текущий элемент соответствует линейному слою топоосновы.
id Идентификатор слоя.

Атрибуты фигуры:

Атрибут Описание
id Идентификатор фигуры.

Остальные атрибуты, доступные для использования у элемента <g>, являются необязательными. Их синтаксис и описание доступны в спецификации по формату SVG версии 1.1.

Важно. Наименования всех атрибутов должны быть указаны строчными буквами.

См. также:

Структура SVG-топоосновы