Легенда слоя описывается в виде структуры, где для каждого уникального диапазона зума задаётся внешний вид объектов.
Каждый элемент структуры включает:
from и to) – указывает, на каких уровнях масштаба применяется стиль.zoomDescription) – текстовое пояснение (необязательно).properties, содержащий набор стилей.Каждый стиль в массиве properties состоит из четырёх полей:
color – цвет заливки:type: тип заливки (из перечисления ColorType);colorValues: массив цветов в формате HEX.stroke (опционально) — обводка:type: тип линии обводки (из перечисления StrokeType);colorValues: массив цветов в формате HEX.title – уникальное текстовое название стиля (отображается в легенде).geometryType – тип геометрии (из перечисления GeometryType).Формат структуры:
[
{
"zoom": {
"from": int,
"to": int
},
"zoomDescription": string,
"properties": [
{
"color": {
"type": ColorType,
"colorValues": [string]
},
"stroke": { // опционально
"type": StrokeType,
"colorValues": [string]
},
"title": string,
"geometryType": GeometryType
}
]
}
] |
Соответствие типов для легенды слоёв
GeometryType – тип геометрии:
0 – Точка (Point)1 – Линия (Line)2 – Полигон (Polygon)3 – Тепловая карта (HeatMap)ColorType – тип заливки:
0 – Сплошной цвет (Solid)1 – Градиент (Gradient)2 – Пунктир (Dashed)3 – Прозрачный (Transparent)StrokeType – тип обводки:
0 – Сплошная линия (Solid)1 – Двойная линия (Double), например, у слоя «Опоры освещения»2 – Пунктирная линия (Dashed)JSON-представление:
[
{
"zoom": { "from": "min", "to": "7" },
"properties": [
{
"color": {
"type": "1",
"colorValues": ["#67a9cf", "#ef8a62", "#b2182b"]
},
"title": "Тепловая карта",
"geometryType": "3"
}
]
},
{
"zoom": { "from": "7", "to": "14" },
"properties": [
{ "color": { "type": "1", "colorValues": ["#FFE800"] }, "title": "0 - 1 погибших", "geometryType": "0" },
{ "color": { "type": "1", "colorValues": ["#FFB700"] }, "title": "1 - 3 погибших", "geometryType": "0" },
{ "color": { "type": "1", "colorValues": ["#FF7400"] }, "title": "3 - 5 погибших", "geometryType": "0" },
{ "color": { "type": "1", "colorValues": ["#FF0000"] }, "title": "более 5 погибших", "geometryType": "0" }
],
"zoomDescription": [
"Кластеры",
"Цвет: количество погибших",
"Контур: наличие погибших",
"Число: количество ДТП в кластере"
]
},
{
"zoom": { "from": "14", "to": "max" },
"properties": [
{ "color": { "type": "0", "colorValues": ["#FFBE40"] }, "title": "Съезд с дороги", "geometryType": "0" },
{ "color": { "type": "0", "colorValues": ["#0772A1"] }, "title": "Наезд на препятствие", "geometryType": "0" },
{ "color": { "type": "0", "colorValues": ["#ff0000"] }, "title": "Наезд на пешехода", "geometryType": "0" },
{ "color": { "type": "0", "colorValues": ["#D2006B"] }, "title": "Опрокидывание", "geometryType": "0" },
{ "color": { "type": "0", "colorValues": ["#FF8700"] }, "title": "Наезд на велосипедиста", "geometryType": "0" },
{ "color": { "type": "0", "colorValues": ["#ffc59a"] }, "title": "Наезд на животное", "geometryType": "0" },
{ "color": { "type": "0", "colorValues": ["#ff4149"] }, "title": "Наезд на лицо, не являющееся участником дорожного движения, осуществляющее несение службы", "geometryType": "0" },
{ "color": { "type": "0", "colorValues": ["#ff2800"] }, "title": "Наезд на лицо, не являющееся участником дорожного движения, осуществляющее какую-либо другую деятельность", "geometryType": "0" },
{ "color": { "type": "0", "colorValues": ["#ffc59a"] }, "title": "Наезд на внезапно возникшее препятствие", "geometryType": "0" },
{ "color": { "type": "0", "colorValues": ["#b486ff"] }, "title": "Отбрасывание предмета", "geometryType": "0" },
{ "color": { "type": "0", "colorValues": ["#ff1c4d"] }, "title": "Наезд на лицо, не являющееся участником дорожного движения, осуществляющее производство работ", "geometryType": "0" },
{ "color": { "type": "0", "colorValues": ["#5EC8AF"] }, "title": "Наезд на стоящее ТС", "geometryType": "0" },
{ "color": { "type": "0", "colorValues": ["#a8beff"] }, "title": "Падение груза", "geometryType": "0" },
{ "color": { "type": "0", "colorValues": ["#52026E"] }, "title": "Падение пассажира", "geometryType": "0" },
{ "color": { "type": "0", "colorValues": ["#81A9FF"] }, "title": "Столкновение", "geometryType": "0" },
{ "color": { "type": "0", "colorValues": ["#808080"] }, "title": "Иной вид ДТП", "geometryType": "0" }
]
}
] |