feat: Adds frontend logic to render camera:type=panorama
Some checks failed
images.yml / feat: Adds frontend logic to render `camera:type=panorama` (push) Failing after 0s
images.yml / feat: Adds frontend logic to render `camera:type=panorama` (pull_request) Failing after 0s

This commit is contained in:
Vincent Mahnke 2026-02-16 07:38:00 +01:00
commit 2f8a64d7d8
Signed by: ViMaSter
GPG key ID: 6D787326BA7D6469
12 changed files with 728 additions and 72 deletions

View file

@ -13,6 +13,7 @@
"v-fixed": "fixed (feststehend)", "v-fixed": "fixed (feststehend)",
"v-panning": "panning (schwenkbar)", "v-panning": "panning (schwenkbar)",
"v-dome": "dome (Kuppel)", "v-dome": "dome (Kuppel)",
"v-panorama": "panorama (Panorama)",
"v-guard": "guard (Wachpersonal)", "v-guard": "guard (Wachpersonal)",
"v-alpr": "ALPR (AKLS)", "v-alpr": "ALPR (AKLS)",
"icon-public-alt": "Überwachung öffentlicher Bereiche", "icon-public-alt": "Überwachung öffentlicher Bereiche",
@ -22,10 +23,12 @@
"icon-fixed-alt": "Feststehende Kamera", "icon-fixed-alt": "Feststehende Kamera",
"icon-panning-alt": "Schwenkbare Kamera", "icon-panning-alt": "Schwenkbare Kamera",
"icon-dome-alt": "Kuppelkamera", "icon-dome-alt": "Kuppelkamera",
"icon-panorama-alt": "Panoramakamera",
"icon-guard-alt": "Wachpersonal", "icon-guard-alt": "Wachpersonal",
"icon-alpr-alt": "Automatische Kennzeichenlesesysteme", "icon-alpr-alt": "Automatische Kennzeichenlesesysteme",
"title-view-fixed": "Notwendig, zum Anzeigen des feststehenden Kamerablickfelds", "title-view-fixed": "Notwendig, zum Anzeigen des feststehenden Kamerablickfelds",
"title-view-dome": "Notwendig, zum Anzeigen des Kuppelkamerablickfelds", "title-view-dome": "Notwendig, zum Anzeigen des Kuppelkamerablickfelds",
"title-view-panorama": "Notwendig, zum Anzeigen des Panoramakamerablickfelds",
"k-cam-direction": "@@LT00", "k-cam-direction": "@@LT00",
"k-cam-angle": "@@LT00", "k-cam-angle": "@@LT00",
"k-height": "@@LT00", "k-height": "@@LT00",
@ -44,6 +47,9 @@
"example-img-3-alt": "Rundumblickfeld (Höhe: 3m)", "example-img-3-alt": "Rundumblickfeld (Höhe: 3m)",
"example-img-4-alt": "Rundumblickfeld (Höhe: 5m)", "example-img-4-alt": "Rundumblickfeld (Höhe: 5m)",
"example-img-5-alt": "Rundumblickfeld (Höhe: 5m, Richtung: 45°)", "example-img-5-alt": "Rundumblickfeld (Höhe: 5m, Richtung: 45°)",
"example-img-6-alt": "Panoramablickfeld (Höhe: 3m)",
"example-img-7-alt": "Panoramablickfeld (Höhe: 5m)",
"example-img-8-alt": "Panoramablickfeld (Höhe: 5m, Richtung: 45°)",
"example-direction-45": "Richtung = 45°", "example-direction-45": "Richtung = 45°",
"example-direction-90": "Richtung = 90°", "example-direction-90": "Richtung = 90°",
"example-angle-15": "Winkel = 15°", "example-angle-15": "Winkel = 15°",

View file

@ -13,6 +13,7 @@
"v-fixed": "fixed", "v-fixed": "fixed",
"v-panning": "panning", "v-panning": "panning",
"v-dome": "dome", "v-dome": "dome",
"v-panorama": "panorama",
"v-guard": "guard", "v-guard": "guard",
"v-alpr": "ALPR", "v-alpr": "ALPR",
"icon-public-alt": "Public surveillance", "icon-public-alt": "Public surveillance",
@ -22,10 +23,12 @@
"icon-fixed-alt": "Fixed camera", "icon-fixed-alt": "Fixed camera",
"icon-panning-alt": "Panning camera", "icon-panning-alt": "Panning camera",
"icon-dome-alt": "Dome camera", "icon-dome-alt": "Dome camera",
"icon-panorama-alt": "Panorama camera",
"icon-guard-alt": "Guard", "icon-guard-alt": "Guard",
"icon-alpr-alt": "Automatic Licence Plate Recognition", "icon-alpr-alt": "Automatic Licence Plate Recognition",
"title-view-fixed": "Mandatory to draw a fixed camera's field of view", "title-view-fixed": "Mandatory to draw a fixed camera's field of view",
"title-view-dome": "Mandatory to draw a dome camera's field of view", "title-view-dome": "Mandatory to draw a dome camera's field of view",
"title-view-panorama": "Mandatory to draw a panorama camera's field of view",
"k-cam-direction": "@@LT00", "k-cam-direction": "@@LT00",
"k-cam-angle": "@@LT00", "k-cam-angle": "@@LT00",
"k-height": "@@LT00", "k-height": "@@LT00",
@ -44,6 +47,9 @@
"example-img-3-alt": "Dome field of view (height: 3m)", "example-img-3-alt": "Dome field of view (height: 3m)",
"example-img-4-alt": "Dome field of view (height: 5m)", "example-img-4-alt": "Dome field of view (height: 5m)",
"example-img-5-alt": "Dome field of view (height: 5m, direction: 45°)", "example-img-5-alt": "Dome field of view (height: 5m, direction: 45°)",
"example-img-6-alt": "Panorama field of view (height: 3m)",
"example-img-7-alt": "Panorama field of view (height: 5m)",
"example-img-8-alt": "Panorama field of view (height: 5m, direction: 45°)",
"example-direction-45": "direction = 45°", "example-direction-45": "direction = 45°",
"example-direction-90": "direction = 90°", "example-direction-90": "direction = 90°",
"example-angle-15": "angle = 15°", "example-angle-15": "angle = 15°",

View file

@ -9,6 +9,8 @@
"desc-panning": "Schwenkbare Kamera — überwacht meist verschiedene Bereiche", "desc-panning": "Schwenkbare Kamera — überwacht meist verschiedene Bereiche",
"icon-dome-alt": "Kuppelkameras", "icon-dome-alt": "Kuppelkameras",
"desc-dome": "Kuppelkamera — überwacht meist einen 360°-Bereich", "desc-dome": "Kuppelkamera — überwacht meist einen 360°-Bereich",
"icon-panorama-alt": "Panoramakameras",
"desc-panorama": "Panoramakamera — überwacht meist einen 180°- oder 360°-Bereich",
"icon-guard-alt": "Wachpersonal", "icon-guard-alt": "Wachpersonal",
"desc-guard": "Wachpersonal — z.B. Beschäftigte eines Sicherheitsunternehmens", "desc-guard": "Wachpersonal — z.B. Beschäftigte eines Sicherheitsunternehmens",
"icon-alpr-alt": "Automatische Kennzeichenlesesysteme", "icon-alpr-alt": "Automatische Kennzeichenlesesysteme",
@ -22,6 +24,7 @@
"desc-green": "Grüner Hintergrund — Überwachung eines Bereichs innerhalb eines Gebäudes", "desc-green": "Grüner Hintergrund — Überwachung eines Bereichs innerhalb eines Gebäudes",
"icon-yellow-fixed-alt": "Feststehend Kamera, zu kontrollieren", "icon-yellow-fixed-alt": "Feststehend Kamera, zu kontrollieren",
"icon-yellow-dome-alt": "Kuppelkamera, zu kontrollieren", "icon-yellow-dome-alt": "Kuppelkamera, zu kontrollieren",
"icon-yellow-panorama-alt": "Panoramakamera, zu kontrollieren",
"icon-yellow-guard-alt": "Wachpersonal, zu kontrollieren", "icon-yellow-guard-alt": "Wachpersonal, zu kontrollieren",
"icon-yellow-alpr-alt": "Automatische Nummernschilderkennung, zu kontrollieren", "icon-yellow-alpr-alt": "Automatische Nummernschilderkennung, zu kontrollieren",
"desc-yellow": "Gelbes Symbol — Mit einem Kontrollkennzeichen markiere Kamera oder Wachpersonaleintrag, die/der noch korrigiert oder vervollständigt werden muss." "desc-yellow": "Gelbes Symbol — Mit einem Kontrollkennzeichen markiere Kamera oder Wachpersonaleintrag, die/der noch korrigiert oder vervollständigt werden muss."

View file

@ -9,6 +9,8 @@
"desc-panning": "Panning camera — usually able to observe various areas", "desc-panning": "Panning camera — usually able to observe various areas",
"icon-dome-alt": "Dome cameras", "icon-dome-alt": "Dome cameras",
"desc-dome": "Dome camera — usually observing a 360° area", "desc-dome": "Dome camera — usually observing a 360° area",
"icon-panorama-alt": "Panorama cameras",
"desc-panorama": "Panorama camera — usually observing a 180° or 360° area",
"icon-guard-alt": "Guards", "icon-guard-alt": "Guards",
"desc-guard": "Guard — e.g. an employee of a security service", "desc-guard": "Guard — e.g. an employee of a security service",
"icon-alpr-alt": "Automatic Licence Plate Recognition", "icon-alpr-alt": "Automatic Licence Plate Recognition",
@ -22,6 +24,7 @@
"desc-green": "Green background — observing an indoor area", "desc-green": "Green background — observing an indoor area",
"icon-yellow-fixed-alt": "Fixed cameras, fixme", "icon-yellow-fixed-alt": "Fixed cameras, fixme",
"icon-yellow-dome-alt": "Dome cameras, fixme", "icon-yellow-dome-alt": "Dome cameras, fixme",
"icon-yellow-panorama-alt": "Panorama cameras, fixme",
"icon-yellow-guard-alt": "Guards, fixme", "icon-yellow-guard-alt": "Guards, fixme",
"icon-yellow-alpr-alt": "Automatic Licence Plate Recognition, fixme", "icon-yellow-alpr-alt": "Automatic Licence Plate Recognition, fixme",
"desc-yellow": "Yellow icon — camera or guard marked with a fixme key because it needs further attention" "desc-yellow": "Yellow icon — camera or guard marked with a fixme key because it needs further attention"

Binary file not shown.

After

Width:  |  Height:  |  Size: 377 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 386 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 382 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 380 B

View file

@ -158,7 +158,7 @@ function onStateChanged() {
// Draw fixed camera's field of view and add it to map. // Draw fixed camera's field of view and add it to map.
var cameraType = plotList[i]['camera:type']; var cameraType = plotList[i]['camera:type'];
if (cameraType == 'fixed' || cameraType == 'static' || cameraType == 'dome') { if (cameraType == 'fixed' || cameraType == 'static' || cameraType == 'dome' || cameraType == 'panorama') {
var focusColor = getFocusColor(plotType); var focusColor = getFocusColor(plotType);
if (cameraType == 'fixed' || cameraType == 'static') { if (cameraType == 'fixed' || cameraType == 'static') {
if (cameraDirection != null) { if (cameraDirection != null) {
@ -183,7 +183,7 @@ function onStateChanged() {
} }
} }
// Draw dome's field of view and add it to map. // Draw dome's field of view and add it to map.
else if (cameraType == 'dome') { else if (cameraType == 'dome' || cameraType == 'panorama') {
var focusRadius = getRadiusForHeight(cameraHeight); var focusRadius = getRadiusForHeight(cameraHeight);
if (isNumeric(cameraDirection)) { if (isNumeric(cameraDirection)) {
var plotFocus = drawCameraFocusFixed(plotLatLng, cameraDirection, focusRadius, 180, focusColor); var plotFocus = drawCameraFocusFixed(plotLatLng, cameraDirection, focusRadius, 180, focusColor);
@ -275,6 +275,8 @@ function getPlotMarkerCamera(plot, plotLatLng, plotType) {
iconName = 'panning'; iconName = 'panning';
} else if (plot['camera:type'] == 'dome') { } else if (plot['camera:type'] == 'dome') {
iconName = 'dome'; iconName = 'dome';
} else if (plot['camera:type'] == 'panorama') {
iconName = 'panorama';
} else if (plot['surveillance:type'] == 'guard') { } else if (plot['surveillance:type'] == 'guard') {
iconName = 'guard'; iconName = 'guard';
} }

View file

@ -35,6 +35,13 @@ var domeIcon = L.icon({
popupAnchor : [0, -10] popupAnchor : [0, -10]
}); });
var panoramaIcon = L.icon({
iconUrl: 'images/panorama.png',
iconSize: [20, 20],
iconAnchor: [10, 10],
popupAnchor : [0, -10]
});
var guardIcon = L.icon({ var guardIcon = L.icon({
iconUrl: 'images/guard.png', iconUrl: 'images/guard.png',
iconSize: [20, 20], iconSize: [20, 20],
@ -79,6 +86,13 @@ var domeBlueIcon = L.icon({
popupAnchor : [0, -10] popupAnchor : [0, -10]
}); });
var panoramaBlueIcon = L.icon({
iconUrl: 'images/panoramaBlue.png',
iconSize: [20, 20],
iconAnchor: [10, 10],
popupAnchor : [0, -10]
});
var guardBlueIcon = L.icon({ var guardBlueIcon = L.icon({
iconUrl: 'images/guardBlue.png', iconUrl: 'images/guardBlue.png',
iconSize: [20, 20], iconSize: [20, 20],
@ -115,6 +129,13 @@ var domeGreenIcon = L.icon({
popupAnchor : [0, -10] popupAnchor : [0, -10]
}); });
var panoramaGreenIcon = L.icon({
iconUrl: 'images/panoramaGreen.png',
iconSize: [20, 20],
iconAnchor: [10, 10],
popupAnchor : [0, -10]
});
var guardGreenIcon = L.icon({ var guardGreenIcon = L.icon({
iconUrl: 'images/guardGreen.png', iconUrl: 'images/guardGreen.png',
iconSize: [20, 20], iconSize: [20, 20],
@ -152,6 +173,13 @@ var domeRedIcon = L.icon({
popupAnchor : [0, -10] popupAnchor : [0, -10]
}); });
var panoramaRedIcon = L.icon({
iconUrl: 'images/panoramaRed.png',
iconSize: [20, 20],
iconAnchor: [10, 10],
popupAnchor : [0, -10]
});
var guardRedIcon = L.icon({ var guardRedIcon = L.icon({
iconUrl: 'images/guardRed.png', iconUrl: 'images/guardRed.png',
iconSize: [20, 20], iconSize: [20, 20],
@ -188,6 +216,13 @@ var todo_domeIcon = L.icon({
popupAnchor : [0, -10] popupAnchor : [0, -10]
}); });
var todo_panoramaIcon = L.icon({
iconUrl: 'images/todo_panorama.png',
iconSize: [20, 20],
iconAnchor: [10, 10],
popupAnchor : [0, -10]
});
var todo_guardIcon = L.icon({ var todo_guardIcon = L.icon({
iconUrl: 'images/todo_guard.png', iconUrl: 'images/todo_guard.png',
iconSize: [20, 20], iconSize: [20, 20],
@ -232,6 +267,13 @@ var todo_domeBlueIcon = L.icon({
popupAnchor : [0, -10] popupAnchor : [0, -10]
}); });
var todo_panoramaBlueIcon = L.icon({
iconUrl: 'images/todo_panoramaBlue.png',
iconSize: [20, 20],
iconAnchor: [10, 10],
popupAnchor : [0, -10]
});
var todo_guardBlueIcon = L.icon({ var todo_guardBlueIcon = L.icon({
iconUrl: 'images/todo_guardBlue.png', iconUrl: 'images/todo_guardBlue.png',
iconSize: [20, 20], iconSize: [20, 20],
@ -268,6 +310,13 @@ var todo_domeGreenIcon = L.icon({
popupAnchor : [0, -10] popupAnchor : [0, -10]
}); });
var todo_panoramaGreenIcon = L.icon({
iconUrl: 'images/todo_panoramaGreen.png',
iconSize: [20, 20],
iconAnchor: [10, 10],
popupAnchor : [0, -10]
});
var todo_guardGreenIcon = L.icon({ var todo_guardGreenIcon = L.icon({
iconUrl: 'images/todo_guardGreen.png', iconUrl: 'images/todo_guardGreen.png',
iconSize: [20, 20], iconSize: [20, 20],
@ -305,6 +354,13 @@ var todo_domeRedIcon = L.icon({
popupAnchor : [0, -10] popupAnchor : [0, -10]
}); });
var todo_panoramaRedIcon = L.icon({
iconUrl: 'images/todo_panoramaRed.png',
iconSize: [20, 20],
iconAnchor: [10, 10],
popupAnchor : [0, -10]
});
var todo_guardRedIcon = L.icon({ var todo_guardRedIcon = L.icon({
iconUrl: 'images/todo_guardRed.png', iconUrl: 'images/todo_guardRed.png',
iconSize: [20, 20], iconSize: [20, 20],

View file

@ -1,76 +1,653 @@
[ { "listTitle": "title-icon", "isListWithIcons": true, [
{
"listTitle": "title-icon",
"isListWithIcons": true,
"listEntries": [ "listEntries": [
{ "keys": [ { "key": "k-manmade", "href": "https://wiki.openstreetmap.org/wiki/Key:man_made" } ], {
"values": [ { "value": "v-surveillance", "href": "https://wiki.openstreetmap.org/wiki/Tag:man_made%3Dsurveillance" } ], "keys": [
"icon": null }, {
{ "keys": [ { "key": "k-surveillance", "href": "https://wiki.openstreetmap.org/wiki/Key:surveillance" } ], "key": "k-manmade",
"values": [ { "value": "v-public" } ], "href": "https://wiki.openstreetmap.org/wiki/Key:man_made"
"icon": { "src": "colorRed.png", "alt": "icon-public-alt" } }, }
{ "keys": [ { "key": "k-surveillance", "href": "https://wiki.openstreetmap.org/wiki/Key:surveillance" } ], ],
"values": [ { "value": "v-outdoor" } ], "values": [
"icon": { "src": "colorBlue.png", "alt": "icon-outdoor-alt" } }, {
{ "keys": [ { "key": "k-surveillance", "href": "https://wiki.openstreetmap.org/wiki/Key:surveillance" } ], "value": "v-surveillance",
"values": [ { "value": "v-indoor" } ], "href": "https://wiki.openstreetmap.org/wiki/Tag:man_made%3Dsurveillance"
"icon": { "src": "colorGreen.png", "alt": "icon-indoor-alt" } }, }
{ "keys": [ { "key": "k-surv-type", "href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type" } ], ],
"values": [ { "value": "v-camera" } ], "icon": null
"icon": { "src": "cam.png", "alt": "icon-cam-alt" } }, },
{ "keys": [ { "key": "k-surv-type", "href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type" }, { "key": "k-cam-type", "href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera" } ], {
"values": [ { "value": "v-camera" }, { "value": "v-fixed" } ], "keys": [
"icon": { "src": "fixed.png", "alt": "icon-fixed-alt" } }, {
{ "keys": [ { "key": "k-surv-type", "href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type" }, { "key": "k-cam-type", "href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera" } ], "key": "k-surveillance",
"values": [ { "value": "v-camera" }, { "value": "v-panning" } ], "href": "https://wiki.openstreetmap.org/wiki/Key:surveillance"
"icon": { "src": "panning.png", "alt": "icon-panning-alt" } }, }
{ "keys": [ { "key": "k-surv-type", "href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type" }, { "key": "k-cam-type", "href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera" } ], ],
"values": [ { "value": "v-camera" }, { "value": "v-dome" } ], "values": [
"icon": { "src": "dome.png", "alt": "icon-dome-alt" } }, {
{ "keys": [ { "key": "k-surv-type", "href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type" } ], "value": "v-public"
"values": [ { "value": "v-guard" } ], }
"icon": { "src": "guard.png", "alt": "icon-guard-alt" } }, ],
{ "keys": [ { "key": "k-surv-type", "href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type" } ], "icon": {
"values": [ { "value": "v-alpr" } ], "src": "colorRed.png",
"icon": { "src": "traffic.png", "alt": "icon-alpr-alt" } } ] }, "alt": "icon-public-alt"
{ "listTitle": "title-view-fixed", "isListWithIcons": false, }
},
{
"keys": [
{
"key": "k-surveillance",
"href": "https://wiki.openstreetmap.org/wiki/Key:surveillance"
}
],
"values": [
{
"value": "v-outdoor"
}
],
"icon": {
"src": "colorBlue.png",
"alt": "icon-outdoor-alt"
}
},
{
"keys": [
{
"key": "k-surveillance",
"href": "https://wiki.openstreetmap.org/wiki/Key:surveillance"
}
],
"values": [
{
"value": "v-indoor"
}
],
"icon": {
"src": "colorGreen.png",
"alt": "icon-indoor-alt"
}
},
{
"keys": [
{
"key": "k-surv-type",
"href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type"
}
],
"values": [
{
"value": "v-camera"
}
],
"icon": {
"src": "cam.png",
"alt": "icon-cam-alt"
}
},
{
"keys": [
{
"key": "k-surv-type",
"href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type"
},
{
"key": "k-cam-type",
"href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera"
}
],
"values": [
{
"value": "v-camera"
},
{
"value": "v-fixed"
}
],
"icon": {
"src": "fixed.png",
"alt": "icon-fixed-alt"
}
},
{
"keys": [
{
"key": "k-surv-type",
"href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type"
},
{
"key": "k-cam-type",
"href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera"
}
],
"values": [
{
"value": "v-camera"
},
{
"value": "v-panning"
}
],
"icon": {
"src": "panning.png",
"alt": "icon-panning-alt"
}
},
{
"keys": [
{
"key": "k-surv-type",
"href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type"
},
{
"key": "k-cam-type",
"href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera"
}
],
"values": [
{
"value": "v-camera"
},
{
"value": "v-dome"
}
],
"icon": {
"src": "dome.png",
"alt": "icon-dome-alt"
}
},
{
"keys": [
{
"key": "k-surv-type",
"href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type"
},
{
"key": "k-cam-type",
"href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera"
}
],
"values": [
{
"value": "v-camera"
},
{
"value": "v-panorama"
}
],
"icon": {
"src": "panorama.png",
"alt": "icon-panorama-alt"
}
},
{
"keys": [
{
"key": "k-surv-type",
"href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type"
},
{
"key": "k-cam-type",
"href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera"
}
],
"values": [
{
"value": "v-camera"
},
{
"value": "v-panorama"
}
],
"icon": {
"src": "panorama.png",
"alt": "icon-panorama-alt"
}
},
{
"keys": [
{
"key": "k-surv-type",
"href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type"
}
],
"values": [
{
"value": "v-guard"
}
],
"icon": {
"src": "guard.png",
"alt": "icon-guard-alt"
}
},
{
"keys": [
{
"key": "k-surv-type",
"href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type"
}
],
"values": [
{
"value": "v-alpr"
}
],
"icon": {
"src": "traffic.png",
"alt": "icon-alpr-alt"
}
}
]
},
{
"listTitle": "title-view-fixed",
"isListWithIcons": false,
"listEntries": [ "listEntries": [
{ "keys": [ { "key": "k-surv-type", "href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type" } ], {
"values": [ { "value": "v-camera" } ] }, "keys": [
{ "keys": [ { "key": "k-cam-type", "href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera" } ], {
"values": [ { "value": "v-fixed" } ] }, "key": "k-surv-type",
{ "keys": [ { "key": "k-cam-direction", "href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera" } ], "href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type"
"values": [ { "value": "v-direction-0" }, { "value": "v-direction-1" } ] }, }
{ "keys": [ { "key": "k-cam-angle", "href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera" } ], ],
"values": [ { "value": "v-angle-0" }, { "value": "v-angle-1" }, { "value": "v-angle-2" } ] }, "values": [
{ "keys": [ { "key": "k-height", "href": "https://wiki.openstreetmap.org/wiki/Key:height" } ], {
"values": [ { "value": "v-height-0" }, { "value": "v-height-1" } ] } ], "value": "v-camera"
}
]
},
{
"keys": [
{
"key": "k-cam-type",
"href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera"
}
],
"values": [
{
"value": "v-fixed"
}
]
},
{
"keys": [
{
"key": "k-cam-direction",
"href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera"
}
],
"values": [
{
"value": "v-direction-0"
},
{
"value": "v-direction-1"
}
]
},
{
"keys": [
{
"key": "k-cam-angle",
"href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera"
}
],
"values": [
{
"value": "v-angle-0"
},
{
"value": "v-angle-1"
},
{
"value": "v-angle-2"
}
]
},
{
"keys": [
{
"key": "k-height",
"href": "https://wiki.openstreetmap.org/wiki/Key:height"
}
],
"values": [
{
"value": "v-height-0"
},
{
"value": "v-height-1"
}
]
}
],
"examples": { "examples": {
"images": [ { "src": "fixed_z-17_d-90_a-15_h-5.png", "alt": "example-img-0-alt" }, { "src": "fixed_z-17_d-90_a-15_h-10.png", "alt": "example-img-1-alt" }, { "src": "fixed_z-17_d-90_a-60_h-10.png", "alt": "example-img-2-alt" } ], "images": [
"descriptions": [ { "lines": [ "example-direction-90", "example-angle-15", "example-height-5" ] }, { "lines": [ "example-direction-90", "example-angle-15", "example-height-10" ] }, { "lines": [ "example-direction-90", "example-angle-60", "example-height-10" ] } ] } }, {
{ "listTitle": "title-view-dome", "isListWithIcons": false, "src": "fixed_z-17_d-90_a-15_h-5.png",
"alt": "example-img-0-alt"
},
{
"src": "fixed_z-17_d-90_a-15_h-10.png",
"alt": "example-img-1-alt"
},
{
"src": "fixed_z-17_d-90_a-60_h-10.png",
"alt": "example-img-2-alt"
}
],
"descriptions": [
{
"lines": [
"example-direction-90",
"example-angle-15",
"example-height-5"
]
},
{
"lines": [
"example-direction-90",
"example-angle-15",
"example-height-10"
]
},
{
"lines": [
"example-direction-90",
"example-angle-60",
"example-height-10"
]
}
]
}
},
{
"listTitle": "title-view-dome",
"isListWithIcons": false,
"listEntries": [ "listEntries": [
{ "keys": [ { "key": "k-surv-type", "href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type" } ], {
"values": [ { "value": "v-camera" } ] }, "keys": [
{ "keys": [ { "key": "k-cam-type", "href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera" } ], {
"values": [ { "value": "v-dome" } ] }, "key": "k-surv-type",
{ "keys": [ { "key": "k-cam-direction", "href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera" } ], "href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type"
"values": [ { "value": "v-direction-0" }, { "value": "v-direction-1" }, { "value": "v-direction-2" } ] }, }
{ "keys": [ { "key": "k-height", "href": "https://wiki.openstreetmap.org/wiki/Key:height" } ], ],
"values": [ { "value": "v-height-0" }, { "value": "v-height-1" } ] } ], "values": [
{
"value": "v-camera"
}
]
},
{
"keys": [
{
"key": "k-cam-type",
"href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera"
}
],
"values": [
{
"value": "v-dome"
}
]
},
{
"keys": [
{
"key": "k-cam-direction",
"href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera"
}
],
"values": [
{
"value": "v-direction-0"
},
{
"value": "v-direction-1"
},
{
"value": "v-direction-2"
}
]
},
{
"keys": [
{
"key": "k-height",
"href": "https://wiki.openstreetmap.org/wiki/Key:height"
}
],
"values": [
{
"value": "v-height-0"
},
{
"value": "v-height-1"
}
]
}
],
"examples": { "examples": {
"images": [ { "src": "dome_z-17_h-3.png", "alt": "example-img-3-alt" }, { "src": "dome_z-17_h-5.png", "alt": "example-img-4-alt" }, { "src": "dome_z-17_h-5_d-45.png", "alt": "example-img-5-alt" } ], "images": [
"descriptions": [ { "lines": [ "example-height-3" ] }, { "lines": [ "example-height-5" ] }, { "lines": [ "example-height-5", "example-direction-45" ] } ] } }, {
{ "listTitle": "title-optional", "isListWithIcons": false, "src": "dome_z-17_h-3.png",
"alt": "example-img-3-alt"
},
{
"src": "dome_z-17_h-5.png",
"alt": "example-img-4-alt"
},
{
"src": "dome_z-17_h-5_d-45.png",
"alt": "example-img-5-alt"
}
],
"descriptions": [
{
"lines": [
"example-height-3"
]
},
{
"lines": [
"example-height-5"
]
},
{
"lines": [
"example-height-5",
"example-direction-45"
]
}
]
}
},
{
"listTitle": "title-view-panorama",
"isListWithIcons": false,
"listEntries": [ "listEntries": [
{ "keys": [ { "key": "k-surv-zone", "href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:zone" } ], {
"values": [ { "value": "v-surv-zone" } ] }, "keys": [
{ "keys": [ { "key": "k-cam-mount", "href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera" } ], {
"values": [ { "value": "v-cam-mount" } ] }, "key": "k-surv-type",
{ "keys": [ { "key": "k-operator", "href": "https://wiki.openstreetmap.org/wiki/Key:operator" } ], "href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:type"
"values": [ { "value": "v-operator" } ] }, }
{ "keys": [ { "key": "k-name", "href": "https://wiki.openstreetmap.org/wiki/Key:name" } ], ],
"values": [ { "value": "v-name" } ] }, "values": [
{ "keys": [ { "key": "k-ref", "href": "https://wiki.openstreetmap.org/wiki/Key:ref" } ], {
"values": [ { "value": "v-ref" } ] }, "value": "v-camera"
{ "keys": [ { "key": "k-image", "href": "https://wiki.openstreetmap.org/wiki/Key:image" } ], }
"values": [ { "value": "v-image" } ] } ]
] } },
{
"keys": [
{
"key": "k-cam-type",
"href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera"
}
],
"values": [
{
"value": "v-panorama"
}
]
},
{
"keys": [
{
"key": "k-cam-direction",
"href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera"
}
],
"values": [
{
"value": "v-direction-0"
},
{
"value": "v-direction-1"
},
{
"value": "v-direction-2"
}
]
},
{
"keys": [
{
"key": "k-height",
"href": "https://wiki.openstreetmap.org/wiki/Key:height"
}
],
"values": [
{
"value": "v-height-0"
},
{
"value": "v-height-1"
}
]
}
],
"examples": {
"images": [
{
"src": "panorama_z-17_h-3.png",
"alt": "example-img-3-alt"
},
{
"src": "panorama_z-17_h-5.png",
"alt": "example-img-4-alt"
},
{
"src": "panorama_z-17_h-5_d-45.png",
"alt": "example-img-5-alt"
}
],
"descriptions": [
{
"lines": [
"example-height-3"
]
},
{
"lines": [
"example-height-5"
]
},
{
"lines": [
"example-height-5",
"example-direction-45"
]
}
]
}
},
{
"listTitle": "title-optional",
"isListWithIcons": false,
"listEntries": [
{
"keys": [
{
"key": "k-surv-zone",
"href": "https://wiki.openstreetmap.org/wiki/Key:surveillance:zone"
}
],
"values": [
{
"value": "v-surv-zone"
}
]
},
{
"keys": [
{
"key": "k-cam-mount",
"href": "https://wiki.openstreetmap.org/wiki/Proposed_features/Extended_tags_for_Key:Surveillance#Camera"
}
],
"values": [
{
"value": "v-cam-mount"
}
]
},
{
"keys": [
{
"key": "k-operator",
"href": "https://wiki.openstreetmap.org/wiki/Key:operator"
}
],
"values": [
{
"value": "v-operator"
}
]
},
{
"keys": [
{
"key": "k-name",
"href": "https://wiki.openstreetmap.org/wiki/Key:name"
}
],
"values": [
{
"value": "v-name"
}
]
},
{
"keys": [
{
"key": "k-ref",
"href": "https://wiki.openstreetmap.org/wiki/Key:ref"
}
],
"values": [
{
"value": "v-ref"
}
]
},
{
"keys": [
{
"key": "k-image",
"href": "https://wiki.openstreetmap.org/wiki/Key:image"
}
],
"values": [
{
"value": "v-image"
}
]
}
]
}
] ]

View file

@ -8,6 +8,8 @@
"description": "desc-panning" }, "description": "desc-panning" },
{ "icons": [ { "src": "domeAll.png", "alt": "icon-dome-alt" } ], { "icons": [ { "src": "domeAll.png", "alt": "icon-dome-alt" } ],
"description": "desc-dome" }, "description": "desc-dome" },
{ "icons": [ { "src": "panorama.png", "alt": "icon-panorama-alt" } ],
"description": "desc-panorama" },
{ "icons": [ { "src": "guardAll.png", "alt": "icon-guard-alt" } ], { "icons": [ { "src": "guardAll.png", "alt": "icon-guard-alt" } ],
"description": "desc-guard" }, "description": "desc-guard" },
{ "icons": [ { "src": "traffic.png", "alt": "icon-alpr-alt" } ], { "icons": [ { "src": "traffic.png", "alt": "icon-alpr-alt" } ],
@ -23,6 +25,7 @@
{ "icons": [ { "icons": [
{ "src": "todo_camAll.png", "alt": "icon-yellow-fixed-alt" }, { "src": "todo_camAll.png", "alt": "icon-yellow-fixed-alt" },
{ "src": "todo_domeAll.png", "alt": "icon-yellow-dome-alt" }, { "src": "todo_domeAll.png", "alt": "icon-yellow-dome-alt" },
{ "src": "todo_panorama.png", "alt": "icon-yellow-panorama-alt" },
{ "src": "todo_guardAll.png", "alt": "icon-yellow-guard-alt" }, { "src": "todo_guardAll.png", "alt": "icon-yellow-guard-alt" },
{ "src": "todo_traffic.png", "alt": "icon-yellow-alpr-alt" } ], { "src": "todo_traffic.png", "alt": "icon-yellow-alpr-alt" } ],
"description": "desc-yellow" } ] } "description": "desc-yellow" } ] }