Элемент <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. Дочерними элементами фигуры могут быть только примитивы из списка ниже.
Примитивы и фигуры не могут быть расположены на одном уровне. Фигура должна представлять собой географическую единицу (регион, область, округ, город, море, озеро и т.д.). У фигур можно указывать цвет заливки, а также цвет, толщину и стиль границы. Фигура должна состоять из одного или нескольких примитивов.
Для использования доступны следующие примитивы:
polygon. Многоугольник;
polyline. Ломаная линия;
rect. Прямоугольник;
ellipse. Эллипс;
circle. Окружность;
path. Кривая линия.
Примечание. В «Форсайт. Аналитическая платформа» для конвертации в формат TBS поддерживаются только примитивы path.
Каждая фигура должна иметь строковой идентификатор. Если для топоосновы определен атрибут ISO, то идентификаторы фигур и значения данного атрибута должны совпадать. Поддерживаются строковые идентификаторы, состоящие из букв латинского алфавита, цифр и символов «-» и «_». Рекомендуется указывать идентификаторы, сформированные в соответствии со стандартом ISO 3166.
Примечание. Идентификатор фигуры не должен начинаться с цифры.
Если атрибут ISO отсутствует, то идентификатор должен иметь следующий формат: «O<ID>», где <ID> - цифровой идентификатор фигуры. В этом случае также рекомендуется задать атрибут IdMapping, по значениям которого будут установлены параметры элементов топоосновы при конвертации в tbs.
Важно. Идентификаторы, заданные в каком-либо другом формате, не поддерживаются при конвертации топоосновы.
Элемент <g>, соответствующий дочернему слою, может содержать необязательный атрибут Flags (например, <g fs:ItemType="Layer" id="Regions" flags="0">). Данный атрибут будет учитываться при конвертации из svg в tbs и обрабатываться следующим образом:
Flags="0". В формате tbs для слоя будут выставлены следующие значения параметров: Visible = True; MouseTransparent = False;
Flags="1". В формате tbs для слоя будут выставлены следующие значения параметров: Visible = True; MouseTransparent = True;
Flags="3". В формате tbs для слоя будут выставлены следующие значения параметров: Visible = False; MouseTransparent = True.
<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.
Важно. Наименования всех атрибутов должны быть указаны строчными буквами.
См. также: