feat(foundry): render geozones as independent map layer
This commit is contained in:
@@ -47,6 +47,16 @@
|
||||
"freshness": "none"
|
||||
},
|
||||
"removeMode": "canonical-tombstone-or-snapshot-rebase"
|
||||
},
|
||||
{
|
||||
"id": "map-zone-current-v1",
|
||||
"version": "1.0.0",
|
||||
"dataProductId": "map.zones.current.v1",
|
||||
"productVersion": "1.0.0",
|
||||
"freshness": "none",
|
||||
"staleAfterMs": null,
|
||||
"terminalStatuses": [],
|
||||
"removeMode": "canonical-tombstone-or-snapshot-rebase"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
@@ -102,6 +102,97 @@
|
||||
{ "field": "availability_state", "order": ["online", "offline"] },
|
||||
{ "field": "motion_state", "order": ["moving", "stationary"] }
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "map.zone.operational.default",
|
||||
"version": "1.0.0",
|
||||
"title": "Геозоны",
|
||||
"semanticTypes": ["map.zone"],
|
||||
"label": {
|
||||
"mode": "attributes",
|
||||
"fields": ["display_name"],
|
||||
"fontWeight": 600,
|
||||
"sizePx": 14,
|
||||
"color": "#f5f5f5",
|
||||
"outlineColor": "#0c0d12",
|
||||
"outlineWidthPx": 1,
|
||||
"backgroundColor": "#0c0d12",
|
||||
"backgroundOpacity": 0.82,
|
||||
"paddingX": 8,
|
||||
"paddingY": 5,
|
||||
"maxLength": 80,
|
||||
"offsetX": 10,
|
||||
"offsetY": 8,
|
||||
"hideCameraHeightMeters": 160000
|
||||
},
|
||||
"target": {
|
||||
"variant": "surface-fill",
|
||||
"outlineColor": "#f5f5f5",
|
||||
"outlineOpacity": 0.72,
|
||||
"outlineWidthPx": 1.5,
|
||||
"hideCameraHeightMeters": 220000
|
||||
},
|
||||
"facets": [
|
||||
{
|
||||
"id": "geometry-kind",
|
||||
"field": "geometry_kind",
|
||||
"label": "Форма",
|
||||
"filterable": true,
|
||||
"counter": true,
|
||||
"values": [
|
||||
{ "value": "polygon", "label": "Полигоны", "order": 0 },
|
||||
{ "value": "circle", "label": "Окружности", "order": 1 },
|
||||
{ "value": "corridor", "label": "Коридоры", "order": 2 }
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "source-kind",
|
||||
"field": "source_kind",
|
||||
"label": "Источник",
|
||||
"filterable": true,
|
||||
"counter": true,
|
||||
"values": [
|
||||
{ "value": "live_api", "label": "Live API", "order": 0 },
|
||||
{ "value": "versioned_snapshot", "label": "Версионный snapshot", "order": 1 }
|
||||
]
|
||||
}
|
||||
],
|
||||
"styles": [
|
||||
{ "id": "polygon", "color": "#8e63ef", "opacity": 0.28 },
|
||||
{ "id": "circle", "color": "#52c7b8", "opacity": 0.25 },
|
||||
{ "id": "corridor", "color": "#6fb5fb", "opacity": 0.25 }
|
||||
],
|
||||
"classes": [
|
||||
{
|
||||
"id": "geometry-polygon",
|
||||
"label": "Полигоны",
|
||||
"priority": 300,
|
||||
"match": [{ "field": "geometry_kind", "equals": "polygon" }],
|
||||
"styleId": "polygon",
|
||||
"renderable": true
|
||||
},
|
||||
{
|
||||
"id": "geometry-circle",
|
||||
"label": "Окружности",
|
||||
"priority": 200,
|
||||
"match": [{ "field": "geometry_kind", "equals": "circle" }],
|
||||
"styleId": "circle",
|
||||
"renderable": true
|
||||
},
|
||||
{
|
||||
"id": "geometry-corridor",
|
||||
"label": "Коридоры",
|
||||
"priority": 100,
|
||||
"match": [{ "field": "geometry_kind", "equals": "corridor" }],
|
||||
"styleId": "corridor",
|
||||
"renderable": true
|
||||
}
|
||||
],
|
||||
"defaultClassId": "geometry-polygon",
|
||||
"sort": [
|
||||
{ "field": "geometry_kind", "order": ["polygon", "circle", "corridor"] },
|
||||
{ "field": "source_kind", "order": ["live_api", "versioned_snapshot"] }
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user