hslayers / hslayers-ng

User interface and map building extensions for OpenLayers
https://ng.hslayers.org/
MIT License
37 stars 20 forks source link

Reflect style rules order also within a set of filtered rules #4493

Open jmacura opened 1 year ago

jmacura commented 1 year ago

Feature Request

Is your feature request related to a problem? Please describe. When more rules are defined based on a filter on the same attribute, the order of rules is not reflected in the map.

Clarification: The problem is with multiple symbols defined for single layer. Not with a composed symbol.

Describe the solution you'd like The order of rules in Styler panel corresponding with the order of rendering features in the map canvas. In the screenshot, the small yellow dots shall be under the larger orange and red dots. image

Describe alternatives you've considered ...

Additional context spin-off from #4447 Also need to check if the order is stored in the SLD/QML/Geostyler somehow

FilipLeitner commented 3 weeks ago

I am afraid this will not be possible....at least not easily. While openlayers allows to set zIndex on style, geostyler (for multiple rules )returns a styleFunction (not style obj or array of objs) which is called to construct a style for each feature. See mark symbolizer example here And for zIndex there is no control.

fzadrazil commented 2 weeks ago

Possibly create new fork for geostyler-openlayers-parser? Could be a way to fix symbol caching too.