geosolutions-it / MapStore2

The solution to create and share maps, dashboards, geostories with 3D support on the web. And it is open-source too!
https://mapstore.geosolutionsgroup.com/
Other
510 stars 398 forks source link

Vector Layers Style Review #8103

Closed tdipisa closed 2 years ago

tdipisa commented 2 years ago

Description

The current styler for vector layers (for both 2D and 3D maps) should be review to be inline with the recent evolutions made so far for the Visual Style Editor and 3D Tiles styler: UI design and underlying logic. This work involve both WFS and imported vector layers but not Annotations for which the logic is different (this will be part of a future work).

As for labeling the styling needs to be separated in two different categories:

Vector data styling for cesium referring to 3d lines and points will need a different encoding so as part of the issue we need to:

What kind of improvement you want to add? (check one with "x", remove the others)

Other useful information

allyoucanmap commented 2 years ago

Cesium Styling

The base support of style should cover these improvements:

Current limitations:

Additional interesting properties that could be added to UI but available only for Cesium. This task will need also an extension of the geostyler spec (at some point we will need a fork for this): #8298

Screenshot

Mark:

image

Icon:

image

Line:

image

Fill:

image

Conversion legacy style to current for annotation:

OpenLayers

image

Cesium

image

UI/Component Improvements Proposal

ElenaGallo commented 2 years ago

Hi @allyoucanmap here what I found after testing this map on 3D mode:

1) For Point layer (ex: V_INTERVENTI), when you change the color of the halo, the width of the halo and the rotation, in the Text rule, the changes are not visible on the map 1

2) For polygonal and linear layers (ex: V_PIANO_BACINO, PROT.CIV: RIVI and TORRENTI MINORI), the Mark, Icon, Line and Text rules are not visible on the map

https://user-images.githubusercontent.com/56537133/170230638-8a48850f-c39d-4373-8a2a-0793b03266de.mov

Possible Component Improvements

a) In in Cesium, the widget button is available for layers but then the widgets are not visible in the viewer b) In the attribute table: Zoom to feature does not zoom correctly on the feature and the Filter clicking on the map does not work. c) The Filter layer with Area of Interest does not work (it is not possible to draw a rectangle, circle, etc. on the map)

allyoucanmap commented 2 years ago

@tdipisa @ElenaGallo

1) For Point layer (ex: V_INTERVENTI), when you change the color of the halo, the width of the halo and the rotation, in the Text rule, the changes are not visible on the map

If you agree I'll move this fix to the issue related to labels (https://github.com/geosolutions-it/MapStore2/issues/8102) so we can verify how this could be improved. The PR associated to this issue has only introduced a base support of label symbolizer.

2) For polygonal and linear layers (ex: V_PIANO_BACINO, PROT.CIV: RIVI and TORRENTI MINORI), the Mark, Icon, Line and Text rules are not visible on the map

The style editor is enabling the style symbolizers based on the geometry type returned by the DescribeFeatureType request and in this specific case is defined as Geometry without specifying if it's a point, line or polygon. It the geometry is generic all the symbolizers are enabled and they will be applied only to the matching geometry:

so in this situation is not possible to apply an icon to polygon. We could try to support symbolizers to not matching geometry but this will need some geometry transformation, for example get the centroid of the polygon to apply an icon. In my opinion this need a separated task

eg V_PIANO_BACINO response image

tdipisa commented 2 years ago

@allyoucanmap

If you agree I'll move this fix to the issue related to labels (https://github.com/geosolutions-it/MapStore2/issues/8102) so we can verify how this could be improved. The PR associated to this issue has only introduced a base support of label symbolizer.

The issue you are referring to is related to 3D Tiles labeling while here we are talking about vector layers.

so in this situation is not possible to apply an icon to polygon. We could try to support symbolizers to not matching geometry but this will need some geometry transformation, for example get the centroid of the polygon to apply an icon. In my opinion this need a separated task

Make sense. @allyoucanmap can you open a dedicate issue for this and assign it to me? I will take care of scheduling it when possible.

@ElenaGallo please open dedicated issues for the following points (use the label 3D) and assign all of them to me:

a) In in Cesium, the widget button is available for layers but then the widgets are not visible in the viewer

b) In the attribute table: the Filter clicking on the map does not work

c) The Filter layer with Area of Interest does not work (it is not possible to draw a rectangle, circle, etc. on the map)

allyoucanmap commented 2 years ago

The issue you are referring to is related to 3D Tiles labeling while here we are talking about vector layers.

updated issue including also labels investigation/improvement for vector/WFS https://github.com/geosolutions-it/MapStore2/issues/8102

allyoucanmap commented 2 years ago

Make sense. @allyoucanmap can you open a dedicate issue for this and assign it to me? I will take care of scheduling it when possible.

@tdipisa https://github.com/geosolutions-it/MapStore2/issues/8264