@vcmap/ui 6.3.11 → 6.3.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. package/build/build.js +5 -0
  2. package/build/staging/Dockerfile +2 -0
  3. package/config/base.config.json +207 -404
  4. package/config/clipping.config.json +16 -80
  5. package/config/cluster.config.json +2 -2
  6. package/config/components-show-case.config.json +1 -1
  7. package/config/concepts-show-case.config.json +1 -1
  8. package/config/dev/geojson.config.json +491 -0
  9. package/config/{i3s.config.json → dev/i3s.config.json} +78 -150
  10. package/config/{mapbox.config.json → dev/mapbox.config.json} +24 -58
  11. package/config/dev/vector-tile.config.json +196 -0
  12. package/config/{wms-layers.config.json → dev/wms.config.json} +22 -39
  13. package/config/dev.config.json +91 -887
  14. package/config/geofence.config.json +2 -4
  15. package/config/graph-feature-info.config.json +84 -0
  16. package/config/guided-tour.config.json +2 -2
  17. package/config/hello-world.config.json +1 -1
  18. package/config/projects.config.json +19 -20
  19. package/config/splashscreen.config.json +1 -1
  20. package/config/theming.config.json +1 -1
  21. package/config/www/city-planning.config.json +215 -0
  22. package/config/www/climate-environment.config.json +1244 -0
  23. package/config/www/iot-sensors.config.json +440 -0
  24. package/config/www/soest.config.json +632 -0
  25. package/config/www.config.json +1352 -1722
  26. package/dist/.htaccess +5 -0
  27. package/dist/assets/{cesium-09c8c37e.js → cesium-d2fefdc2.js} +25018 -24401
  28. package/dist/assets/cesium.js +1 -1
  29. package/dist/assets/{core-f093e6ba.js → core-be181847.js} +1138 -1138
  30. package/dist/assets/core-workers/panoramaImageWorker.js +1 -1
  31. package/dist/assets/core.js +1 -1
  32. package/dist/assets/ol.js +1 -1
  33. package/dist/assets/ui-8f8426e4.css +1 -0
  34. package/dist/assets/{ui-da598216.js → ui-8f8426e4.js} +13290 -12542
  35. package/dist/assets/ui.js +1 -1
  36. package/dist/assets/vue.js +1 -1
  37. package/dist/assets/{vuetify-1429f242.js → vuetify-8df23ea4.js} +1 -1
  38. package/dist/assets/vuetify.js +1 -1
  39. package/package.json +2 -2
  40. package/plugins/@vcmap-show-case/extent-example/src/ExtentExample.vue +16 -2
  41. package/plugins/@vcmap-show-case/icons-example/src/AllIconsComponent.vue +7 -5
  42. package/plugins/@vcmap-show-case/notifier-tester/src/NotifierTester.vue +5 -6
  43. package/plugins/@vcmap-show-case/project-selector/README.md +18 -7
  44. package/plugins/@vcmap-show-case/project-selector/src/ProjectSelectorComponent.vue +9 -0
  45. package/plugins/@vcmap-show-case/project-selector/src/index.js +87 -27
  46. package/plugins/@vcmap-show-case/simple-graph/src/SimpleGraphComponent.vue +10 -3
  47. package/plugins/@vcmap-show-case/simple-graph/src/index.js +10 -1
  48. package/plugins/@vcmap-show-case/switch-map-callback-example/README.md +1 -1
  49. package/plugins/package.json +4 -3
  50. package/src/application/VcsApp.vue +3 -7
  51. package/src/application/attributionsHelper.d.ts +27 -5
  52. package/src/application/attributionsHelper.js +116 -58
  53. package/src/components/lists/VcsGroupedList.vue +29 -1
  54. package/src/components/lists/VcsList.vue +35 -4
  55. package/src/components/lists/VcsList.vue.d.ts +2 -0
  56. package/src/components/lists/VcsTreeview.vue +63 -31
  57. package/src/components/lists/VcsTreeview.vue.d.ts +9 -0
  58. package/src/components/plugins/VcsWorkspaceWrapper.vue +6 -0
  59. package/src/components/plugins/VcsWorkspaceWrapper.vue.d.ts +9 -0
  60. package/src/contentTree/LayerTree.vue +13 -2
  61. package/src/featureInfo/ClusterFeatureComponent.vue +1 -0
  62. package/src/featureInfo/abstractFeatureInfoView.js +13 -9
  63. package/src/manager/window/WindowComponent.vue +5 -1
  64. package/src/vcsUiApp.d.ts +19 -7
  65. package/src/vcsUiApp.js +17 -0
  66. package/config/aerowest.config.json +0 -386
  67. package/config/analysis.config.json +0 -17
  68. package/config/dynamic-layer.config.json +0 -33
  69. package/config/graphFeatureInfo.config.json +0 -141
  70. package/config/pano.config.json +0 -726
  71. package/config/solar.config.json +0 -66
  72. package/config/vectorTile.config.json +0 -112
  73. package/dist/assets/ui-da598216.css +0 -1
  74. /package/dist/assets/core-workers/{panoramaImageWorker.js-e1e34b3c.js → panoramaImageWorker.js-eecf04e1.js} +0 -0
  75. /package/dist/assets/{ol-5a959f4c.js → ol-3438e1c5.js} +0 -0
  76. /package/dist/assets/{vue-20dd2b78.js → vue-dd509a16.js} +0 -0
  77. /package/dist/assets/{vuetify-1429f242.css → vuetify-8df23ea4.css} +0 -0
@@ -1,26 +1,48 @@
1
1
  {
2
2
  "name": "VcsBaseConfig",
3
- "mapcontainer": "vcs_map_container",
4
3
  "_id": "VcsBaseConfig",
5
4
  "startingViewpointName": "berlin",
6
- "startingMapName": "cesium",
5
+ "startingMapName": "CesiumMap",
7
6
  "startingObliqueCollectionName": "obliques",
8
7
  "projection": {
9
8
  "epsg": "25833",
10
9
  "proj4": "+proj=utm +zone=33 +ellps=GRS80 +units=m +no_defs"
11
10
  },
11
+ "maps": [
12
+ { "type": "OpenlayersMap", "name": "OpenlayersMap" },
13
+ {
14
+ "type": "CesiumMap",
15
+ "name": "CesiumMap",
16
+ "debugging": false,
17
+ "fxaa": false,
18
+ "enableLightning": true,
19
+ "allowSoftwareRendering": false,
20
+ "maximumScreenSpaceError": 2,
21
+ "fogEnabled": true,
22
+ "fogEnabledMobile": true,
23
+ "fogDensity": 0.0002,
24
+ "fogDensityMobile": 0.0004,
25
+ "fogScreenSpaceError": 2,
26
+ "fogScreenSpaceErrorMobile": 4,
27
+ "useOriginalCesiumShader": false
28
+ },
29
+ {
30
+ "type": "ObliqueMap",
31
+ "name": "ObliqueMap",
32
+ "showObliqueImageName": true,
33
+ "obliqueImageNameTemplate": "Oblique Image Name : {0}",
34
+ "maintainViewpointOnCollectionChange": true,
35
+ "fallbackToCurrentMap": true
36
+ }
37
+ ],
12
38
  "uiConfig": [
13
39
  {
14
40
  "name": "imprint",
15
- "value": {
16
- "content": "MyImpressum.content"
17
- }
41
+ "value": { "content": "MyImpressum.content" }
18
42
  },
19
43
  {
20
44
  "name": "dataProtection",
21
- "value": {
22
- "url": "https://vc.systems/datenschutz/"
23
- }
45
+ "value": { "url": "https://vc.systems/datenschutz/" }
24
46
  },
25
47
  {
26
48
  "name": "obliqueFooterTemplate",
@@ -75,22 +97,17 @@
75
97
  {
76
98
  "name": "base",
77
99
  "de": {
78
- "layers": {
79
- "pointcloud": {
80
- "title": "Tiergarten"
81
- },
82
- "osmBuildingFootprints": {
83
- "title": "OSM Gebäude Grundflächen"
84
- }
85
- },
86
100
  "style": {
87
101
  "buildingFunction": "Gebäudefunktion",
88
102
  "transparentBuildings": "Transparente Gebäude",
89
103
  "hideSmallBuildings": "Kleine Gebäude ausblenden"
90
104
  },
91
105
  "contentTree": {
92
- "building": {
93
- "title": "3D Gebäude"
106
+ "twoDimension": {
107
+ "title": "2D Daten"
108
+ },
109
+ "threeDimension": {
110
+ "title": "3D Daten"
94
111
  }
95
112
  },
96
113
  "MyImpressum": {
@@ -106,12 +123,12 @@
106
123
  }
107
124
  },
108
125
  "en": {
109
- "layers": {
110
- "pointcloud": {
111
- "title": "Zoological garden"
126
+ "contentTree": {
127
+ "twoDimension": {
128
+ "title": "2D data"
112
129
  },
113
- "osmBuildingFootprints": {
114
- "title": "OSM Building Footprints"
130
+ "threeDimension": {
131
+ "title": "3D data"
115
132
  }
116
133
  },
117
134
  "style": {
@@ -119,11 +136,6 @@
119
136
  "transparentBuildings": "Transparent Buildings",
120
137
  "hideSmallBuildings": "Hide small buildings"
121
138
  },
122
- "contentTree": {
123
- "building": {
124
- "title": "3D buildings"
125
- }
126
- },
127
139
  "MyImpressum": {
128
140
  "content": "![image](https://vc.systems/wp-content/uploads/2020/07/vcs_logo.png)\n\n**Company name:** \n\nMusterfirma GmbH\n\n**Company headquarters:**\n\nMusterstadt\n\n\n\n**Address:**\n\nMusterstraße 1 a\n\n12345 Musterstadt\n\nGermany\n\n **Phone:** +49 (0) 00 . 0000 . 000 . 00\n\n **Fax:** +49 (0) 00 . 0000 . 000 . 00\n\n **E-Mail:** [info@musterfirma.de](mailto:info@musterfirma.de)\n\n\n\n**Managing Director:**\n\n- Max Mustermann\n\n\n\n**Registry court:**\n\nMusterstadt 1234567\n\n\n\n**Tax number:**\n\n11/222/33333\n\n\n\n**VAT ID:**\n\nDE1234567890\n\n\n\n**Copyright:**\n\nAll rights reserved. All contents (texts, images, graphics, animations) are protected by copyright. They may not be copied, distributed or modified for commercial purposes without the consent of Musterfirma GmbH.\n\n(Copyright 2023 Musterfirma GmbH)\n\n\n\n**Contents:**\n\nDespite careful editing, Musterfirma GmbH cannot guarantee the correctness and accuracy of the information provided on [www.musterfirma.de](http://www.musterfirma.de). Any liability for damages arising directly or indirectly from the use of [www.musterfirma.de](http://www.musterfirma.de) and which are not based on intent or gross negligence on the part of Musterfirma GmbH is excluded. No liability is accepted for the content of websites linked to [www.musterfirma.de](http://www.musterfirma.de).\n\n\n\n**Data protection:**\n\nMusterfirma GmbH takes the protection of your personal data very seriously. We adhere strictly to the rules of the data protection laws. Personal data is only collected on this website to the extent that is technically necessary. Under no circumstances will the data collected be sold or passed on to third parties for other reasons. You can read our complete privacy policy [here](#).\n\n"
129
141
  },
@@ -155,9 +167,7 @@
155
167
  ]
156
168
  }
157
169
  },
158
- "properties": {
159
- "title": "Fruit Salad"
160
- }
170
+ "properties": { "title": "Fruit Salad" }
161
171
  },
162
172
  {
163
173
  "name": "lineColor",
@@ -198,37 +208,27 @@
198
208
  "rows": [
199
209
  {
200
210
  "type": "FillLegendRow",
201
- "fill": {
202
- "color": "#edf8e9"
203
- },
211
+ "fill": { "color": "#edf8e9" },
204
212
  "title": "< 5 m"
205
213
  },
206
214
  {
207
215
  "type": "FillLegendRow",
208
- "fill": {
209
- "color": "#bae4b3"
210
- },
216
+ "fill": { "color": "#bae4b3" },
211
217
  "title": "< 15 m"
212
218
  },
213
219
  {
214
220
  "type": "FillLegendRow",
215
- "fill": {
216
- "color": "#74c476"
217
- },
221
+ "fill": { "color": "#74c476" },
218
222
  "title": "< 30 m"
219
223
  },
220
224
  {
221
225
  "type": "FillLegendRow",
222
- "fill": {
223
- "color": "#31a354"
224
- },
226
+ "fill": { "color": "#31a354" },
225
227
  "title": "< 65 m"
226
228
  },
227
229
  {
228
230
  "type": "FillLegendRow",
229
- "fill": {
230
- "color": "#006d2c"
231
- },
231
+ "fill": { "color": "#006d2c" },
232
232
  "title": "> 65 m"
233
233
  }
234
234
  ]
@@ -261,37 +261,27 @@
261
261
  "rows": [
262
262
  {
263
263
  "type": "FillLegendRow",
264
- "fill": {
265
- "color": "#ffffd4"
266
- },
264
+ "fill": { "color": "#ffffd4" },
267
265
  "title": "< 5 m"
268
266
  },
269
267
  {
270
268
  "type": "FillLegendRow",
271
- "fill": {
272
- "color": "#fed98e"
273
- },
269
+ "fill": { "color": "#fed98e" },
274
270
  "title": "< 15 m"
275
271
  },
276
272
  {
277
273
  "type": "FillLegendRow",
278
- "fill": {
279
- "color": "#fe9929"
280
- },
274
+ "fill": { "color": "#fe9929" },
281
275
  "title": "< 30 m"
282
276
  },
283
277
  {
284
278
  "type": "FillLegendRow",
285
- "fill": {
286
- "color": "#d95f0e"
287
- },
279
+ "fill": { "color": "#d95f0e" },
288
280
  "title": "< 65 m"
289
281
  },
290
282
  {
291
283
  "type": "FillLegendRow",
292
- "fill": {
293
- "color": "#993404"
294
- },
284
+ "fill": { "color": "#993404" },
295
285
  "title": "> 65 m"
296
286
  }
297
287
  ]
@@ -324,37 +314,27 @@
324
314
  "rows": [
325
315
  {
326
316
  "type": "FillLegendRow",
327
- "fill": {
328
- "color": "#f1eef6"
329
- },
317
+ "fill": { "color": "#f1eef6" },
330
318
  "title": "< 5 m"
331
319
  },
332
320
  {
333
321
  "type": "FillLegendRow",
334
- "fill": {
335
- "color": "#bdc9e1"
336
- },
322
+ "fill": { "color": "#bdc9e1" },
337
323
  "title": "< 15 m"
338
324
  },
339
325
  {
340
326
  "type": "FillLegendRow",
341
- "fill": {
342
- "color": "#74a9cf"
343
- },
327
+ "fill": { "color": "#74a9cf" },
344
328
  "title": "< 30 m"
345
329
  },
346
330
  {
347
331
  "type": "FillLegendRow",
348
- "fill": {
349
- "color": "#2b8cbe"
350
- },
332
+ "fill": { "color": "#2b8cbe" },
351
333
  "title": "< 65 m"
352
334
  },
353
335
  {
354
336
  "type": "FillLegendRow",
355
- "fill": {
356
- "color": "#045a8d"
357
- },
337
+ "fill": { "color": "#045a8d" },
358
338
  "title": "> 65 m"
359
339
  }
360
340
  ]
@@ -396,107 +376,77 @@
396
376
  "rows": [
397
377
  {
398
378
  "type": "FillLegendRow",
399
- "fill": {
400
- "color": "#91cf60"
401
- },
379
+ "fill": { "color": "#91cf60" },
402
380
  "title": "Flachdach"
403
381
  },
404
382
  {
405
383
  "type": "FillLegendRow",
406
- "fill": {
407
- "color": "#fee08b"
408
- },
384
+ "fill": { "color": "#fee08b" },
409
385
  "title": "Pultdach"
410
386
  },
411
387
  {
412
388
  "type": "FillLegendRow",
413
- "fill": {
414
- "color": "#8dd3c7"
415
- },
389
+ "fill": { "color": "#8dd3c7" },
416
390
  "title": "Versetztes Pultdach"
417
391
  },
418
392
  {
419
393
  "type": "FillLegendRow",
420
- "fill": {
421
- "color": "#8dd3c7"
422
- },
394
+ "fill": { "color": "#8dd3c7" },
423
395
  "title": "Satteldach"
424
396
  },
425
397
  {
426
398
  "type": "FillLegendRow",
427
- "fill": {
428
- "color": "#fc8d59"
429
- },
399
+ "fill": { "color": "#fc8d59" },
430
400
  "title": "Walmdach"
431
401
  },
432
402
  {
433
403
  "type": "FillLegendRow",
434
- "fill": {
435
- "color": "#ffffb3"
436
- },
404
+ "fill": { "color": "#ffffb3" },
437
405
  "title": "Krüppelwalmdach"
438
406
  },
439
407
  {
440
408
  "type": "FillLegendRow",
441
- "fill": {
442
- "color": "#bebada"
443
- },
409
+ "fill": { "color": "#bebada" },
444
410
  "title": "Mansardendach"
445
411
  },
446
412
  {
447
413
  "type": "FillLegendRow",
448
- "fill": {
449
- "color": "#ffffbf"
450
- },
414
+ "fill": { "color": "#ffffbf" },
451
415
  "title": "Zeltdach"
452
416
  },
453
417
  {
454
418
  "type": "FillLegendRow",
455
- "fill": {
456
- "color": "#fdb462"
457
- },
419
+ "fill": { "color": "#fdb462" },
458
420
  "title": "Kegeldach"
459
421
  },
460
422
  {
461
423
  "type": "FillLegendRow",
462
- "fill": {
463
- "color": "#b3de69"
464
- },
424
+ "fill": { "color": "#b3de69" },
465
425
  "title": "Kuppeldach"
466
426
  },
467
427
  {
468
428
  "type": "FillLegendRow",
469
- "fill": {
470
- "color": "#ecc34e"
471
- },
429
+ "fill": { "color": "#ecc34e" },
472
430
  "title": "Sheddach"
473
431
  },
474
432
  {
475
433
  "type": "FillLegendRow",
476
- "fill": {
477
- "color": "#fccde5"
478
- },
434
+ "fill": { "color": "#fccde5" },
479
435
  "title": "Bogendach"
480
436
  },
481
437
  {
482
438
  "type": "FillLegendRow",
483
- "fill": {
484
- "color": "#d590b3"
485
- },
439
+ "fill": { "color": "#d590b3" },
486
440
  "title": "Turmdach"
487
441
  },
488
442
  {
489
443
  "type": "FillLegendRow",
490
- "fill": {
491
- "color": "#888888"
492
- },
444
+ "fill": { "color": "#888888" },
493
445
  "title": "Mischform"
494
446
  },
495
447
  {
496
448
  "type": "FillLegendRow",
497
- "fill": {
498
- "color": "#cccccc"
499
- },
449
+ "fill": { "color": "#cccccc" },
500
450
  "title": "Sonstiges"
501
451
  }
502
452
  ]
@@ -529,37 +479,27 @@
529
479
  "rows": [
530
480
  {
531
481
  "type": "FillLegendRow",
532
- "fill": {
533
- "color": "#7fc97f"
534
- },
482
+ "fill": { "color": "#7fc97f" },
535
483
  "title": "1121"
536
484
  },
537
485
  {
538
486
  "type": "FillLegendRow",
539
- "fill": {
540
- "color": "#fdb462"
541
- },
487
+ "fill": { "color": "#fdb462" },
542
488
  "title": "1004"
543
489
  },
544
490
  {
545
491
  "type": "FillLegendRow",
546
- "fill": {
547
- "color": "#fdc086"
548
- },
492
+ "fill": { "color": "#fdc086" },
549
493
  "title": "1799"
550
494
  },
551
495
  {
552
496
  "type": "FillLegendRow",
553
- "fill": {
554
- "color": "#ffff99"
555
- },
497
+ "fill": { "color": "#ffff99" },
556
498
  "title": "1231"
557
499
  },
558
500
  {
559
501
  "type": "FillLegendRow",
560
- "fill": {
561
- "color": "#cccccc"
562
- },
502
+ "fill": { "color": "#cccccc" },
563
503
  "title": "other function"
564
504
  }
565
505
  ]
@@ -586,9 +526,7 @@
586
526
  "rows": [
587
527
  {
588
528
  "type": "FillLegendRow",
589
- "fill": {
590
- "color": "#cccccc"
591
- },
529
+ "fill": { "color": "#cccccc" },
592
530
  "title": "Transparent buildings"
593
531
  }
594
532
  ]
@@ -678,51 +616,23 @@
678
616
  "addressName": "name"
679
617
  }
680
618
  ],
681
- "maps": [
682
- {
683
- "type": "OpenlayersMap",
684
- "name": "ol3"
685
- },
686
- {
687
- "type": "CesiumMap",
688
- "name": "cesium",
689
- "debugging": false,
690
- "fxaa": false,
691
- "enableLightning": true,
692
- "allowSoftwareRendering": false,
693
- "maximumScreenSpaceError": 2,
694
- "fogEnabled": true,
695
- "fogEnabledMobile": true,
696
- "fogDensity": 0.0002,
697
- "fogDensityMobile": 0.0004,
698
- "fogScreenSpaceError": 2,
699
- "fogScreenSpaceErrorMobile": 4,
700
- "useOriginalCesiumShader": false
701
- },
702
- {
703
- "name": "Oblique Map",
704
- "showObliqueImageName": true,
705
- "obliqueImageNameTemplate": "Oblique Image Name : {0}",
706
- "type": "ObliqueMap",
707
- "maintainViewpointOnCollectionChange": true,
708
- "fallbackToCurrentMap": true
709
- }
710
- ],
711
619
  "layers": [
712
620
  {
713
- "projection": {
714
- "epsg": 4326
715
- },
716
621
  "type": "WFSLayer",
717
622
  "name": "WFSLayer",
718
623
  "url": "https://service.pdok.nl/lv/bag/wfs/v2_0",
624
+ "projection": { "epsg": 4326 },
719
625
  "featureNS": "http://bag.geonovum.nl",
720
626
  "featurePrefix": "bag",
721
627
  "featureType": "pand",
722
628
  "activeOnStartup": false,
723
629
  "allowPicking": false,
630
+ "extent": {
631
+ "coordinates": [6.831243, 53.303234, 6.885159, 53.326799],
632
+ "projection": { "epsg": "EPSG:4326" }
633
+ },
724
634
  "properties": {
725
- "title": "WFS Layer (next to Groningen in the Netherlands)",
635
+ "title": "WFS Layer",
726
636
  "featureInfo": "tableAll"
727
637
  }
728
638
  },
@@ -734,13 +644,10 @@
734
644
  "allowPicking": false,
735
645
  "screenSpaceError": 16,
736
646
  "screenSpaceErrorMobile": 32,
737
- "tilesetOptions": {
738
- "skipLevelOfDetail": true,
739
- "enableCollision": true
740
- },
647
+ "tilesetOptions": { "skipLevelOfDetail": true, "enableCollision": true },
741
648
  "exclusiveGroups": ["bldg"],
742
649
  "properties": {
743
- "title": "3D-Mesh 2020",
650
+ "title": "3D Mesh 2020",
744
651
  "attributions": {
745
652
  "provider": "Berlin Partner für Wirtschaft und Technologie",
746
653
  "url": "https://www.berlin-partner.de",
@@ -749,47 +656,27 @@
749
656
  }
750
657
  }
751
658
  },
752
- {
753
- "type": "CesiumTilesetLayer",
754
- "name": "semantic parent id",
755
- "activeOnStartup": true,
756
- "url": "exampleData/3dtiles/tileset.json",
757
- "extent": {
758
- "coordinates": [
759
- 13.374270027115022, 52.508274026937485, 13.375908144173225,
760
- 52.50925354738402
761
- ],
762
- "projection": {
763
- "type": "Projection",
764
- "epsg": "EPSG:4326"
765
- },
766
- "type": "Extent"
767
- },
768
- "tilesetOptions": {
769
- "useSRGBColorFactors": true
770
- },
771
- "zIndex": 0,
772
- "properties": {
773
- "featureInfo": "tableNoEmptyValues"
774
- }
775
- },
776
659
  {
777
660
  "type": "CesiumTilesetLayer",
778
661
  "name": "buildings",
779
- "url": "https://www.virtualcitymap.de/datasource-data/698513e2-a34c-4f38-bb93-629ff4c9e0c0",
662
+ "url": "https://www.virtualcitymap.de/datasource-data/632b42e6-b44c-450b-9436-93e48ca78ea2/tileset.json",
780
663
  "activeOnStartup": false,
781
664
  "screenSpaceError": 16,
782
665
  "screenSpaceErrorMobile": 32,
783
666
  "exclusiveGroups": ["bldg"],
667
+ "extent": {
668
+ "coordinates": [12.99177, 52.256451, 13.938776, 52.777575],
669
+ "projection": { "epsg": "EPSG:4326" }
670
+ },
784
671
  "properties": {
785
- "title": "Gebäude texturiert 2013",
672
+ "title": "Textured buildings",
786
673
  "featureInfo": "tableAll"
787
674
  }
788
675
  },
789
676
  {
790
677
  "type": "CesiumTilesetLayer",
791
678
  "name": "buildings_untextured",
792
- "url": "https://www.virtualcitymap.de/datasource-data/72fa3c14-03bc-4c26-a4ac-8c6dec37e65a/tileset.json",
679
+ "url": "https://www.virtualcitymap.de/datasource-data/f892f6af-180a-4eef-917f-5ff03c260b32/tileset.json",
793
680
  "activeOnStartup": true,
794
681
  "screenSpaceError": 16,
795
682
  "screenSpaceErrorMobile": 32,
@@ -798,6 +685,10 @@
798
685
  "type": "CsvAttributeProvider",
799
686
  "data": "exampleData/fruit.csv"
800
687
  },
688
+ "extent": {
689
+ "coordinates": [12.987142, 52.308511, 13.837292, 52.788448],
690
+ "projection": { "epsg": "EPSG:4326" }
691
+ },
801
692
  "properties": {
802
693
  "availableStyles": [
803
694
  "MeasuredHeightGreen",
@@ -810,41 +701,12 @@
810
701
  "HideSmallBuildings"
811
702
  ],
812
703
  "clusterFeatureTitleProperty": "gml:name",
813
- "title": "Berlin - LOD2",
704
+ "title": "Berlin - LOD2 pbr",
814
705
  "featureInfo": "addressBalloon"
815
706
  }
816
707
  },
817
708
  {
818
- "name": "osmBuildingFootprints",
819
- "type": "VectorTileLayer",
820
- "minLevel": 18,
821
- "maxLevel": 18,
822
- "zIndex": 11,
823
- "tileProvider": {
824
- "baseLevels": [14],
825
- "idProperty": "osm_id",
826
- "useSpatialIndex": false,
827
- "type": "MVTTileProvider",
828
- "url": "https://www.virtualcitymap.de/datasource-data/BerlinFootprintsMVT/{z}/{x}/{y}.pbf"
829
- },
830
- "activeOnStartup": false,
831
- "debug": false,
832
- "attributeProvider": {
833
- "type": "CsvAttributeProvider",
834
- "data": "exampleData/osmFruit.csv",
835
- "idColumn": "osm_id",
836
- "keyProperty": "osm_id",
837
- "headers": ["osm_id", "fruit"]
838
- },
839
- "properties": {
840
- "featureInfo": "tableAllWithTemplateHeader",
841
- "title": "layers.osmBuildingFootprints.title",
842
- "tooltip": "OpenStreetMap Building Polygons",
843
- "availableStyles": ["Transparentbuildings", "fruitStyle"]
844
- }
845
- },
846
- {
847
- "name": "Openstreetmap OSM Cache",
709
+ "name": "OpenStreetMap OSM Cache",
848
710
  "url": "https://osm.virtualcitymap.de/mapproxy/wmts/osm/{TileMatrixSet}/{TileMatrix}/{TileCol}/{TileRow}.png",
849
711
  "type": "WMTSLayer",
850
712
  "datasourceId": "2jEtgBemjJaSNx3AH",
@@ -906,81 +768,51 @@
906
768
  "viewpoints": [
907
769
  {
908
770
  "name": "berlin",
909
- "cameraPosition": [
910
- 13.370550000000003, 52.51230000000001, 677.0294500017116
911
- ],
912
- "groundPosition": [
913
- 13.377973747219107, 52.51718187188212, 34.500300497361984
914
- ],
915
- "distance": 980.8215342887953,
916
- "heading": 42.84999999999993,
771
+ "type": "Viewpoint",
772
+ "cameraPosition": [13.37055, 52.5123, 677.03],
773
+ "groundPosition": [13.377973, 52.517181, 34.5],
774
+ "distance": 980.82,
775
+ "heading": 42.85,
917
776
  "pitch": -40.93,
918
- "roll": 360,
777
+ "roll": 0,
919
778
  "animate": false,
920
- "type": "Viewpoint",
921
- "properties": {
922
- "title": "Berlin"
923
- }
779
+ "properties": { "title": "Berlin" }
924
780
  },
925
781
  {
926
782
  "name": "alexanderplatz",
927
- "distance": 1027.743747894252,
928
- "cameraPosition": [
929
- 13.410279816026053, 52.52102244255272, 1064.4366076344213
930
- ],
931
- "groundPosition": [
932
- 13.410279818110775, 52.52102207564875, 36.69286055319397
933
- ],
934
- "heading": 360,
783
+ "type": "Viewpoint",
784
+ "cameraPosition": [13.41028, 52.521022, 1064.44],
785
+ "groundPosition": [13.41028, 52.521022, 36.7],
786
+ "distance": 1027.74,
787
+ "heading": 0,
935
788
  "pitch": -90,
936
789
  "roll": 0,
937
790
  "animate": true,
938
- "type": "Viewpoint",
939
- "properties": {
940
- "title": "Alexanderplatz"
941
- }
791
+ "properties": { "title": "Alexanderplatz" }
942
792
  },
943
793
  {
944
794
  "name": "brandenburger_tor",
945
- "distance": 663.6051001967426,
946
- "cameraPosition": [
947
- 13.37790869834864, 52.51627705004426, 698.3750083957117
948
- ],
949
- "groundPosition": [
950
- 13.37790869845283, 52.516277047668844, 34.76990820023149
951
- ],
952
- "heading": 360,
795
+ "type": "Viewpoint",
796
+ "cameraPosition": [13.377909, 52.516277, 698.38],
797
+ "groundPosition": [13.377909, 52.516277, 34.77],
798
+ "distance": 663.61,
799
+ "heading": 0,
953
800
  "pitch": -90,
954
801
  "roll": 0,
955
802
  "animate": true,
956
- "type": "Viewpoint"
803
+ "properties": { "title": "Brandenburger Tor" }
957
804
  },
958
805
  {
959
- "name": "potsdamer_platz",
960
- "distance": 730.0034266375318,
961
- "cameraPosition": [
962
- 13.375567390072897, 52.50932719713967, 765.2515153338176
963
- ],
964
- "groundPosition": [
965
- 13.375567390058034, 52.50932719590491, 35.24808869690339
966
- ],
967
- "heading": 360,
806
+ "name": "potsdamerplatz",
807
+ "type": "Viewpoint",
808
+ "cameraPosition": [13.375567, 52.509327, 765.25],
809
+ "groundPosition": [13.375567, 52.509327, 35.25],
810
+ "distance": 730.0,
811
+ "heading": 0,
968
812
  "pitch": -90,
969
813
  "roll": 0,
970
814
  "animate": true,
971
- "type": "Viewpoint",
972
- "properties": {
973
- "title": "Potsdamer Platz"
974
- }
975
- },
976
- {
977
- "groundPosition": [13.35948, 52.51442, 33.35758],
978
- "pitch": -46.14,
979
- "type": "Viewpoint",
980
- "heading": 359.84,
981
- "distance": 3267.86,
982
- "name": "pointcloud",
983
- "animate": true
815
+ "properties": { "title": "Potsdamer Platz" }
984
816
  }
985
817
  ],
986
818
  "contentTree": [
@@ -995,15 +827,10 @@
995
827
  "type": "LayerContentTreeItem",
996
828
  "layerName": "Bäume"
997
829
  },
998
- {
999
- "name": "baseMap.terrain",
1000
- "type": "LayerContentTreeItem",
1001
- "layerName": "GermanyBaseTerrain.4"
1002
- },
1003
830
  {
1004
831
  "name": "baseMap.openStreetMap",
1005
832
  "type": "LayerContentTreeItem",
1006
- "layerName": "Openstreetmap OSM Cache"
833
+ "layerName": "OpenStreetMap OSM Cache"
1007
834
  },
1008
835
  {
1009
836
  "name": "baseMap.aerialImage2015",
@@ -1018,39 +845,51 @@
1018
845
  },
1019
846
  {
1020
847
  "name": "baseMap.places.alexanderplatz",
1021
- "viewpointName": "alexanderplatz",
1022
- "type": "ViewpointContentTreeItem"
848
+ "type": "ViewpointContentTreeItem",
849
+ "viewpointName": "alexanderplatz"
1023
850
  },
1024
851
  {
1025
852
  "name": "baseMap.places.potsdamerPlatz",
1026
- "viewpointName": "potsdamer_platz",
1027
- "type": "ViewpointContentTreeItem"
853
+ "type": "ViewpointContentTreeItem",
854
+ "viewpointName": "potsdamerplatz"
855
+ },
856
+ {
857
+ "name": "twoDimension",
858
+ "type": "NodeContentTreeItem",
859
+ "infoUrl": "https://vc.systems",
860
+ "title": "contentTree.twoDimension.title"
861
+ },
862
+ {
863
+ "name": "twoDimension.openStreetMap",
864
+ "type": "LayerContentTreeItem",
865
+ "layerName": "OpenStreetMap OSM Cache"
1028
866
  },
1029
867
  {
1030
- "name": "building",
868
+ "name": "twoDimension.wfsLayer",
869
+ "type": "LayerContentTreeItem",
870
+ "layerName": "WFSLayer",
871
+ "tooltip": " Groningen, Netherlands"
872
+ },
873
+ {
874
+ "name": "threeDimension",
1031
875
  "initOpen": true,
1032
876
  "type": "NodeContentTreeItem",
1033
877
  "infoUrl": "https://vc.systems",
1034
- "title": "contentTree.building.title"
878
+ "title": "contentTree.threeDimension.title"
1035
879
  },
1036
880
  {
1037
- "name": "terrain",
881
+ "name": "threeDimension.terrain",
1038
882
  "type": "LayerContentTreeItem",
1039
883
  "layerName": "GermanyBaseTerrain"
1040
884
  },
1041
885
  {
1042
- "name": "building.texturedBuildings",
886
+ "name": "threeDimension.texturedBuildings",
1043
887
  "layerName": "buildings",
1044
888
  "type": "LayerContentTreeItem",
1045
- "tooltip": "Textured buildings"
889
+ "tooltip": "Texturierte Gebäude"
1046
890
  },
1047
891
  {
1048
- "name": "semantic parent id",
1049
- "layerName": "semantic parent id",
1050
- "type": "LayerContentTreeItem"
1051
- },
1052
- {
1053
- "name": "building.untexturedBuildings",
892
+ "name": "threeDimension.untexturedBuildings",
1054
893
  "infoUrl": "https://vc.systems",
1055
894
  "layerName": "buildings_untextured",
1056
895
  "type": "LayerContentTreeItem",
@@ -1067,59 +906,22 @@
1067
906
  ]
1068
907
  },
1069
908
  {
1070
- "name": "viewpoints.startRotation",
1071
- "title": "Start rotation",
1072
- "infoUrl": "https://vc.systems",
1073
- "type": "ContentTreeItem",
1074
- "onClick": [
909
+ "name": "threeDimension.meshSurface",
910
+ "layerName": "mesh_surface",
911
+ "type": "LayerContentTreeItem",
912
+ "onActivate": [
1075
913
  {
1076
- "type": "StartRotationCallback"
914
+ "type": "DeactivateLayersCallback",
915
+ "layerNames": ["buildings", "GermanyBaseTerrain"]
1077
916
  }
1078
- ]
1079
- },
1080
- {
1081
- "name": "viewpoints.stopRotation",
1082
- "title": "Stop rotation",
1083
- "infoUrl": "https://vc.systems",
1084
- "type": "ContentTreeItem",
1085
- "onClick": [
917
+ ],
918
+ "onDeactivate": [
1086
919
  {
1087
- "type": "StopRotationCallback"
920
+ "type": "ActivateLayersCallback",
921
+ "layerNames": ["GermanyBaseTerrain"]
1088
922
  }
1089
923
  ]
1090
924
  },
1091
- {
1092
- "name": "building.osmBuildingFootprints",
1093
- "layerName": "osmBuildingFootprints",
1094
- "type": "LayerContentTreeItem"
1095
- },
1096
- {
1097
- "name": "building.wfsLayer",
1098
- "layerName": "WFSLayer",
1099
- "type": "LayerContentTreeItem"
1100
- },
1101
- {
1102
- "name": "building.meshSurface",
1103
- "layerName": "mesh_surface",
1104
- "type": "LayerContentTreeItem",
1105
- "title": "3D-Mesh",
1106
- "tooltip": "3D-Mesh Surface"
1107
- },
1108
- {
1109
- "name": "pointcloud",
1110
- "type": "NodeContentTreeItem",
1111
- "title": "Point Cloud"
1112
- },
1113
- {
1114
- "name": "pointcloud.tiergarten",
1115
- "layerName": "pointcloud",
1116
- "type": "LayerContentTreeItem"
1117
- },
1118
- {
1119
- "name": "pointcloud.berlinBuch",
1120
- "type": "LayerContentTreeItem",
1121
- "layerName": "PointCloud Changedetection"
1122
- },
1123
925
  {
1124
926
  "name": "viewpoints",
1125
927
  "type": "NodeContentTreeItem",
@@ -1127,83 +929,85 @@
1127
929
  },
1128
930
  {
1129
931
  "name": "viewpoints.berlin",
1130
- "viewpointName": "berlin",
1131
932
  "type": "ViewpointContentTreeItem",
1132
- "title": "Berlin"
933
+ "viewpointName": "berlin"
1133
934
  },
1134
935
  {
1135
936
  "name": "viewpoints.brandenburgerTor",
1136
937
  "viewpointName": "brandenburger_tor",
1137
- "type": "ViewpointContentTreeItem",
1138
- "title": "Brandenburg Gate"
938
+ "type": "ViewpointContentTreeItem"
1139
939
  },
1140
940
  {
1141
- "name": "viewpoints.places",
1142
- "type": "NodeContentTreeItem",
1143
- "title": "Places",
1144
- "icon": "mdi-map-marker-star",
1145
- "weight": 1
941
+ "name": "viewpoints.startRotation",
942
+ "type": "ContentTreeItem",
943
+ "title": "Start rotation",
944
+ "infoUrl": "https://vc.systems",
945
+ "icon": "mdi-play-circle-outline",
946
+ "onClick": [{ "type": "StartRotationCallback" }]
1146
947
  },
1147
948
  {
1148
- "name": "viewpoints.places.alexanderplatz",
1149
- "viewpointName": "alexanderplatz",
1150
- "type": "ViewpointContentTreeItem"
949
+ "name": "viewpoints.stopRotation",
950
+ "type": "ContentTreeItem",
951
+ "title": "Stop rotation",
952
+ "infoUrl": "https://vc.systems",
953
+ "icon": "mdi-stop-circle-outline",
954
+ "onClick": [{ "type": "StopRotationCallback" }]
1151
955
  },
1152
956
  {
1153
- "name": "viewpoints.places.potsdamerPlatz",
1154
- "viewpointName": "potsdamer_platz",
1155
- "type": "ViewpointContentTreeItem"
957
+ "name": "viewpoints.places",
958
+ "type": "NodeContentTreeItem",
959
+ "weight": 1,
960
+ "title": "Places",
961
+ "icon": "mdi-map-marker-star"
1156
962
  },
1157
963
  {
1158
- "name": "viewpoints.kaiserWilhelmGedaechtniskirche",
1159
- "viewpointName": "kaiser_wilhelm_gedächtniskirche",
964
+ "name": "viewpoints.places.alexanderplatz",
1160
965
  "type": "ViewpointContentTreeItem",
1161
- "title": "Kaiser Wilhelm Memorial Church"
966
+ "viewpointName": "alexanderplatz"
1162
967
  },
1163
968
  {
1164
- "name": "viewpoints.oberbaumbruecke",
1165
- "viewpointName": "oberbaumbrücke",
969
+ "name": "viewpoints.places.potsdamerPlatz",
1166
970
  "type": "ViewpointContentTreeItem",
1167
- "title": "Oberbaum Bridge"
971
+ "viewpointName": "potsdamerplatz"
1168
972
  },
1169
973
  {
1170
974
  "name": "emptyGroup",
1171
975
  "type": "GroupContentTreeItem",
1172
- "title": "Empty Group",
1173
- "icon": "mdi-star"
976
+ "title": "Empty group, should not be visible",
977
+ "icon": "mdi-alert-circle"
1174
978
  },
1175
979
  {
1176
- "name": "reasonableGroup",
1177
- "type": "GroupContentTreeItem",
980
+ "name": "texturedNode",
981
+ "type": "NodeContentTreeItem",
1178
982
  "title": "Textured Berlin",
1179
983
  "icon": "mdi-star"
1180
984
  },
1181
985
  {
1182
- "name": "reasonableGroup.trees",
1183
- "type": "LayerContentTreeItem",
1184
- "layerName": "Bäume"
1185
- },
1186
- {
1187
- "name": "reasonableGroup.texturedBuildings",
1188
- "layerName": "buildings",
1189
- "type": "LayerContentTreeItem"
1190
- },
1191
- {
1192
- "name": "reasonableGroup.berlin",
1193
- "viewpointName": "berlin",
1194
- "type": "ViewpointContentTreeItem"
1195
- },
1196
- {
1197
- "name": "reasonableLayerGroup",
986
+ "name": "texturedNode.layerGroup",
1198
987
  "type": "LayerGroupContentTreeItem",
1199
988
  "layerNames": ["buildings", "Bäume", "GermanyBaseTerrain"],
1200
- "title": "Buildings - Trees - Terrain. A Layer Group Item",
989
+ "title": "Buildings, trees & terrain as LayerGroup item",
1201
990
  "availableStyles": [
1202
991
  "MeasuredHeightGreen",
1203
992
  "MeasuredHeightBrown",
1204
993
  "MeasuredHeightBlue"
1205
994
  ]
1206
995
  },
996
+ {
997
+ "name": "texturedNode.texturedGroup",
998
+ "type": "GroupContentTreeItem",
999
+ "title": "Textured Berlin Layers"
1000
+ },
1001
+ {
1002
+ "name": "texturedNode.texturedGroup.trees",
1003
+ "type": "LayerContentTreeItem",
1004
+ "layerName": "Bäume"
1005
+ },
1006
+ {
1007
+ "name": "texturedNode.texturedGroup.texturedBuildings",
1008
+ "type": "LayerContentTreeItem",
1009
+ "layerName": "buildings"
1010
+ },
1207
1011
  {
1208
1012
  "name": "berlin_obliques",
1209
1013
  "type": "ObliqueCollectionContentTreeItem",
@@ -1215,6 +1019,7 @@
1215
1019
  {
1216
1020
  "name": "obliques",
1217
1021
  "activeOnStartup": true,
1022
+ "hideLevels": null,
1218
1023
  "dataSets": [
1219
1024
  {
1220
1025
  "url": "https://berlin-wab.virtualcitymap.de/datasource-data/baselayer/obliques_2020/image_tiled.json",
@@ -1227,8 +1032,6 @@
1227
1032
  }
1228
1033
  }
1229
1034
  ],
1230
-
1231
- "hideLevels": null,
1232
1035
  "properties:": {
1233
1036
  "attributions": {
1234
1037
  "provider": "Berlin Partner / Senat von Berlin",