- changed status to open
Style-Definition für Vektor-Layer (WFS) - svg-Icons in Karte und Legende
In der style.json werden die Styles für Vektor-Layer definiert.
Im Masterportal können WFS-Dienste genutzt und über die style.json können die Styles für Vektor-Punkt-Geometrien definiert werden. Für die Darstellung der Vektor-Punkt-Geometrien ist es möglich, svg-Icons zu nutzen. Dies wird in der style.json über den "imageName" definiert.
Zudem kann in der config.js ein WFS-Image-Path (wfsImgPath) definiert werden.
Die folgende Konfiguration nutzen wir in Remscheid für die Masterportal-Version 2.30.0:
Auszug aus der config.js:
wfsImgPath: "https://geoportal.remscheid.de/geodaten/icons/",
Auszug aus der style.json:
{
"conditions": {
"properties": {
"kat_2": "8a"
}
},
"style": {
"type": "icon",
"legendValue": "Rathäuser",
"imageName": "svg/poi/Rathaus.svg",
"imageScale": "0.5",
"imageWidth": 50,
"imageHeight": 50
}
}
Zum einen werden die svg-Icons in der Karte angezeigt und zum anderen in der Legende des Masterportals.
Diese Konfiguration funktioniert in der Masterportal-Version 2.34.1 nicht mehr vollständig:
Es werden nicht alle svg-Icons in der Legende angezeigt.
In der Karte werden anscheinend keine svg-Icons dargestellt.
Hat sich die Konfiguration hinsichtlich der Styles für Vektor-Layer / WFS-Dienste geändert oder liegt hier ein Bug vor?
Viele Grüße aus Remscheid
Comments (21)
-
-
-
assigned issue to
-
assigned issue to
-
Unsere Vermutung ist ein Bug infolge des kürzlich durchgeführten Refactorings des Vectorstylings. Wir schauen uns das an!
-
- changed status to resolved
wird mit Version 2.35.0 gefixt
-
Wir haben dasselbe Problem seit Version 2.34 aufwärts beobachtet, also dass generell keine Punkt-Features mehr in der Legende dynamisch dargestellt werden - ohne i.was an der Konfig geändert zu haben…
Dieser Bug ist auch in der aktuellen Version 2.35.0 noch vorhanden.
-
@Tobias Schneider Könntest du ein Beispielportal hochladen, in dem man diesen Fehler nachvollziehen kann?
-
Hier das Testportal mit initial aktiver Legende: GeoPortal Nürnberg (dev)
Zum Vergleich das aktuell noch auf v2.25.0 laufende Produktivportal: GeoPortal Nürnberg
Wir haben im Issue #1058 auch noch einen Screenshot zum Vergleich angehängt.
-
Mit der neuen Version 2.36.0 sollte der Bug behoben sein, bitte mal testen.
-
reporter Mit unserer oben genannten Konfiguration haben wir in Remscheid die Masterportal-Version 2.36.1 getestet.
Es werden keine svg-Icons in der Karte und in der Legende angezeigt.Wird ein Vektor-Layer (WFS) im Themen-Baum aktiviert, können über die Entwicklerwerkzeuge im Web-Browser die Anforderungs-URLs der svg-Icons eingesehen werden.
In der Masterportal-Version 2.36.1 sind die Anforderungs-URLs nicht korrekt.Zum Beispiel wird versucht, über die folgende URL ein svg-Icon anzufordern (nicht korrekt):
https://geoportal.remscheid.de/masterportal/portale/geo_explorer_test_v2_36_1/svg/poi/Rathaus.svgKorrekt müsste die URL wie folgt lauten:
https://geoportal.remscheid.de/geodaten/icons/svg/poi/Rathaus.svgMit unserer oben genannten Konfiguration hatten die Anforderungen der svg-Icons für die Karte in der Masterportal-Version 2.30.0 noch funktioniert.
Beim Aufruf der Legende konnten wir in der Masterportal-Version 2.36.1 über die Entwicklerwerkzeuge im Web-Browser keine weiteren Anforderungen der svg-Icons erkennen.
In der Masterportal-Version 2.30.0 sind beim Aufruf der Legende die Anforderungs-URLs der svg-Icons in den Entwicklerwerkzeugen im Web-Browser zu sehen und korrekt.
Demnach werden die svg-Icons auch in der Legende dargestellt. -
- attached nuernberg.zip
-
- attached nuernberg.zip
ich kann den fehler nicht nachstellen, wenn ich in der style.json eine svg einbinden.
Ich habe das Portal angehangen, mit dem ich teste. Vielleicht können Sie Ihre Konfigfuration damit abgleichen und mir die Unterschiede mitteilen. Zu dem Layer “Rathhäuser” habe ich keinen Eintrag in der services.json gefunden, daher habe ich den Layer “Städtische Ämter” zum Testen verwendet und als Bild die “
Rathaus.svg
“ geladen.Eventuell müsste sonst der wfsImgPath in der config.js angepasst werden?
Style.json:
{ "styleId": "201", "rules": [ { "conditions": { "properties": { "ID_SYMBOL": 3 } }, "style": { "legendValue": "Städtische Ämter", "type": "icon", "imageName": "Rathaus.svg", "imageScale": "0.5", "imageWidth": 50, "imageHeight": 50, "clusterType": "icon", "clusterImageName": "Rathaus.svg", "clusterImageScale": "0.5", "clusterTextType": "counter", "clusterTextScale": "1.5", "clusterTextOffsetX": "0", "clusterTextOffsetY": "0", "clusterTextFillColor": [ 0, 0, 0, 1 ], "clusterTextStrokeColor": [ 255, 255, 255, 1 ] } } ] },
config.json
{ "id": "201", "name": "Städtische Ämter", "mouseHoverField": "NAME", "styleId": "201", "clusterDistance": 50, "visibility": true }
config.js
wfsImgPath: "./resources/img/",
-
reporter Unterschiede in der Konfiguration
Ich habe die Konfiguration des Test-Portals Nürnberg mit unserem Portal in Remscheid abgeglichen.
Es gibt die folgenden Unterschiede in der style.json und config.js:
Test-Portal Nürnberg - style.json:
"style": { "legendValue": "Städtische Ämter", "type": "icon", "imageName": "Rathaus.svg", ... }
produktives Portal Remscheid (Version 2.30.0) und erstes Test-Portal Remscheid (Version 2.38.0) - style.json:
"style": { "type": "icon", "legendValue": "Rathäuser", "imageName": "svg/poi/Rathaus.svg", ... }
In Remscheid haben wir also beim "imageName" noch einen Teil der Verzeichnis-Struktur mit angegeben, da wir nicht alle svg-Icons in einem Verzeichnis gespeichert haben, sondern nach Themen sortiert die svg-Icons in mehrere Verzeichnisse abgelegt haben.
In diesem Beispiel liegen alle svg-Icons zum Thema "points of interest" im Ordner "poi".
Dementsprechend haben wir in Remscheid in der config.js die folgende Konfiguration:
produktives Portal Remscheid (Version 2.30.0) und erstes Test-Portal Remscheid (Version 2.38.0) - config.js:
wfsImgPath: "https://geoportal.remscheid.de/geodaten/icons/",
Wird der angegebene wfsImgPath aus der config.js mit dem imageName aus der style.json zusammengesetzt, ergibt sich die komplette Adresse, unter der das svg-Icon abrufbar ist:
wfsImgPath + imageName = https://geoportal.remscheid.de/geodaten/icons/svg/poi/Rathaus.svg
Diese Konfiguration hatte bei uns in Remscheid bis einschließlich der Masterportal-Version 2.30.0 funktioniert.
Das zurzeit bei uns produktive Masterportal (Version 2.30.0) mit unserer oben genannten Konfiguration ist mit einem Beispiel-Aufruf der "points of interest" (svg-Icons) hier erreichbar:
produktives Portal Remscheid Masterportal-Version 2.30.0:
https://geoportal.remscheid.de/masterportal/portale/geo_explorer/?Map/layerIds=5,183&visibility=true,true&transparency=0,0&Map/center=[373199.28869118553,5671671.41829631]&Map/zoomLevel=10
Dieselbe Konfiguration funktioniert in der aktuellen Masterportal-Version 2.38.0 nicht mehr.
Das Masterportal in der Version 2.38.0 versucht, das svg-Icon Rathaus.svg über die folgende URL anzufordern:
https://geoportal.remscheid.de/masterportal/portale/geo_explorer_test_v2_38_0/svg/poi/Rathaus.svg
Diese URL ist jedoch nicht korrekt.
Wie oben bereits beschrieben müsste die URL korrekt wie folgt lauten:
https://geoportal.remscheid.de/geodaten/icons/svg/poi/Rathaus.svg
Ein Test-Masterportal in der Version 2.38.0 mit unserer oben genannten Konfiguration ist mit einem Beispiel-Aufruf der "points of interest" (svg-Icons) hier erreichbar:
Erstes Test-Portal Remscheid Masterportal-Version 2.38.0:
https://geoportal.remscheid.de/masterportal/portale/geo_explorer_test_v2_38_0/?Map/layerIds=5,183&visibility=true,true&transparency=0,0&Map/center=[373224.17083324114,5671645.836203798]&Map/zoomLevel=10Hier erscheinen die svg-Icons in der Karte und auch in der Legende nicht.
Test einer anderen Konfiguration (Ergebnis: svg-Icons werden in der Legende nicht angezeigt)
Wir haben eine andere Konfiguration getestet:
Zweites Test-Portal Remscheid (Version 2.38.0) - style.json:
"style": { "type": "icon", "legendValue": "Rathäuser", "imageName": "https://geoportal.remscheid.de/geodaten/icons/svg/poi/Rathaus.svg", ... }
Zweites Test-Portal Remscheid (Version 2.38.0) - config.js
// wfsImgPath: "https://geoportal.remscheid.de/geodaten/icons/",
Wir haben also in der config.js den wfsImgPath auskommentiert und die komplette svg-Adresse in die style.json eingefügt.
Dieses bewirkt, dass in der Masterportal-Version 2.38.0 die svg-Icons in der Karte angzeigt werden, aber die svg-Icons nicht in der Legende erscheinen.
Das zweite Test-Masterportal in der Version 2.38.0 mit der anderen Konfiguration ist mit einem Beispiel-Aufruf der "points of interest" (svg-Icons) hier erreichbar:
Zweites Test-Portal Remscheid Masterportal-Version 2.38.0:
https://geoportal.remscheid.de/masterportal/portale/geo_explorer_test_v2_38_0_config02/?Map/layerIds=5,183&visibility=true,true&transparency=0,0&Map/center=[373224.17083324114,5671645.836203798]&Map/zoomLevel=10
Weitere Beobachtung: Mehrfaches ein- und ausblenden ("blinken") der svg-Icons in der Karte des Masterportals bei einer hohen Anzahl an svg-Icons
Außerdem ist uns aufgefallen, dass in der Masterportal-Version 2.38.0 (und auch in früheren Versionen) anscheinend bei relativ vielen svg-Icons in der Karten-Ansicht die svg-Icons mehrfach vom Masterportal angefordert bzw. geladen werden. Hieraus resultiert ein mehrfaches ein- und ausblenden ("blinken") der svg-Icons in der Karte des Masterportals.
Dieses Verhalten kann bei der Nutzung des Web-Browsers Microsoft Edge beobachtet werden. Beim Mozilla Firefox konnten wir dies nicht feststellen.
Beim Aufruf des Masterportals in der Version 2.38.0 über den folgenden Link per Microsoft Edge konnten wir ein mehrfaches ein- und ausblenden ("blinken") der svg-Icons in der Karte erkennen:
Zweites Test-Portal Remscheid Masterportal-Version 2.38.0:
https://geoportal.remscheid.de/masterportal/portale/geo_explorer_test_v2_38_0_config02/?Map/layerIds=5,183&visibility=true,true&transparency=0,0&Map/center=[375185.2209941126,5672246.167624807]&Map/zoomLevel=5
Wenn die svg-Icons im Microsoft Edge mehrfach ein- und ausgeblendet werden, kann mit der linken Maustaste in die Karte geklickt werden und das "Blinken" hört auf.
-
Hallo Herr Plachta,
ich habe ihren vorigen Kommentar zusammengefasst:
1.)
- wfsImgPath: "https://geoportal.remscheid.de/geodaten/icons/"
- style.json: "imageName": "svg/poi/Rathaus.svg" - imageName enthält backslashes
--> ab Version 2.30.0: icon wird nicht gefunden, keine svg-Icons in der Karte und in der Legende
2.)
- // wfsImgPath: "https://geoportal.remscheid.de/geodaten/icons/" --> kein wfsImgPath
- style.json: : "imageName": "https://geoportal.remscheid.de/geodaten/icons/svg/poi/Rathaus.svg",
--> Version 2.38.0: die svg-Icons in der Karte sind da, aber die svg-Icons in der Legende nicht
3.)
Mehrfaches ein- und ausblenden ("blinken") der svg-Icons in der Karte des Masterportals bei einer hohen Anzahl an svg-Icons
Version 2.38.0, Edge, bei mir auch im Chrome
https://geoportal.remscheid.de/masterportal/portale/geo_explorer_test_v2_38_0_config02/?Map/layerIds=5,183&visibility=true,true&transparency=0,0&Map/center=[375185.2209941126,5672246.167624807]&Map/zoomLevel=5
Ist das so richtig?
1.) und 2.) kann ich nachvollziehen, aber 3.) kann ich nicht nachstellen. Ich sehe das Blinken, wenn ich die von Ihnen genannte Url aufrufe, habe aber keine Konfiguratrion bei der es lokal bei mir auftritt. Das kann ich nur bearbeiten, wenn sie mir eine vollständige Konfiguration an dieses Issue hängen, die auch bei mir läuft.
Viele Grüße
Inka Dudek
-
reporter Hallo Frau Dudek,
ich habe die Zusammenfassung ein bisschen modifiziert und neue Erkenntnisse zur Masterportal-Version 2.39.0 ergänzt:
1.)
- wfsImgPath: "https://geoportal.remscheid.de/geodaten/icons/"
- style.json: "imageName": "svg/poi/Rathaus.svg" - imageName enthält slashes
--> bis einschließlich Version 2.30.0 hat diese Konfiguration funktioniert
--> in Version 2.38.0: icon wird nicht gefunden, keine svg-Icons in der Karte und in der Legende
--> in Version 2.39.0: die svg-Icons in der Karte sind da, aber die svg-Icons in der Legende nicht
2.)
- // wfsImgPath: "https://geoportal.remscheid.de/geodaten/icons/" --> kein wfsImgPath
- style.json: : "imageName": "https://geoportal.remscheid.de/geodaten/icons/svg/poi/Rathaus.svg",
--> Version 2.38.0 und 2.39.0: die svg-Icons in der Karte sind da, aber die svg-Icons in der Legende nicht
3.)
Mehrfaches ein- und ausblenden ("blinken") der svg-Icons in der Karte des Masterportals bei einer hohen Anzahl an svg-Icons
Version 2.38.0 und 2.39.0, Edge, bei Ihnen auch im Chrome
https://geoportal.remscheid.de/masterportal/portale/geo_explorer_test_v2_38_0_config02/?Map/layerIds=5,183&visibility=true,true&transparency=0,0&Map/center=[375185.2209941126,5672246.167624807]&Map/zoomLevel=5
Ich habe Ihnen zwei vollständige Test-Portale (Masterportal-Version 2.38.0 und 2.39.0) an dieses Issue angehängt, bei denen das Blinken zu sehen ist. Diese beiden Portale müssten auch bei Ihnen laufen.
Vielen Dank und viele Grüße
Moritz Plachta
-
reporter - attached testportal_remscheid_2_38_0.zip
<div class="preview-container wiki-content"><!-- loaded via ajax --></div> <div class="mask"></div> </div>
-
reporter - attached testportal_remscheid_2_39_0.zip
-
reporter - attached testportal_remscheid_2_38_0.zip
-
Danke! In den Testportalen kann ich das Blinken nachstellen.
-
Die Probleme mit den svg-Icons und das Blinken der Features sind gefixt und in der Version 2.40.0, die am 06.12.2023 released wird, behoben.
-
reporter Unser Test mit den Masterportal-Versionen 2.40.0 sowie 2.40.1 ist erfolgreich.
Beste Grüße und vielen, vielen Dank aus Remscheid!
-
- changed status to closed
- Log in to comment