[mapserver-dev] RFC113 Chainable Compositing Filters

Lime, Steve D (MNIT) Steve.Lime at state.mn.us
Tue Oct 6 08:26:51 PDT 2015


Hi Marc: Thanks for the snippet - always easier when you see practical examples. Again, your maps are great. The detail is insane -  line-work in the sporting facilities, boats in the harbor and the trees... wow. No cars on the roads but I'm sure it's just a matter of time!

Steve

-----Original Message-----
From: Riedo Marc [mailto:Marc.Riedo at ne.ch] 
Sent: Tuesday, October 06, 2015 3:57 AM
To: thomas bonfort <thomas.bonfort at gmail.com>; Lime, Steve D (MNIT) <Steve.Lime at state.mn.us>
Cc: MapServer Dev Mailing List <mapserver-dev at lists.osgeo.org>; MapserverList OSGEO <mapserver-users at lists.osgeo.org>; Kalbermatten Michaël <Michael.Kalbermatten at ne.ch>
Subject: RE: [mapserver-dev] RFC113 Chainable Compositing Filters

Hi Thomas, Hi Steeve,

Thanks for your nice comments on our maps ... and thanks for the great implementation of the new filters that will help us to improve our cartography. We are great fans of mapserver here at SITN.

In the current version http://sitn.ne.ch/production/wsgi/short/oyno9  we use the 7.0 hack. We will use the new possibilities developed by Thomas asap.
Here is an example for the lakes

LAYER
    NAME "lakes_situation"
    METADATA
        "wms_title" "Lacs suisse"
        "wms_srs" "EPSG:21781 EPSG:54004 EPSG:3785 EPSG:4326 EPSG:900913"
    END
    GROUP "Fonds_carto"
    TYPE POLYGON
    STATUS ON
    CONNECTIONTYPE POSTGIS
    CONNECTION ...
    PROCESSING "CLOSE_CONNECTION=DEFER"
    DATA "geom from mobilite2030.lacs_mobilite using unique idobj using srid=21781"    
    CLASS
        STYLE
            COLOR 180 230 255
            OUTLINECOLOR 107 185 235
            WIDTH 0.5
        END
    END
END

LAYER
    NAME "lakes_situation_shading"
    METADATA
        "wms_title" "lacs_situation ombrage"
        "wms_srs" "EPSG:21781 EPSG:54004 EPSG:3785 EPSG:4326 EPSG:900913"
    END
    GROUP "Fonds_carto"
    TYPE POLYGON
    CONNECTIONTYPE POSTGIS
    CONNECTION ...
    PROCESSING "CLOSE_CONNECTION=DEFER"
    DATA "geom from mobilite2030.lacs_mobilite using unique idobj using srid=21781"
    STATUS ON
     COMPOSITE
      OPACITY 50
      COMPFILTER "10"
    END
    CLASS
        STYLE
            GEOMTRANSFORM (buffer([shape],-8))
            COLOR 255 255 255
        END
    END
END

Marc Riedo
Responsable du SITN
____________________________________________________________ 

RÉPUBLIQUE ET CANTON DE NEUCHÂTEL
Département du développement territorial et de l'environnement
Service de la géomatique et du registre foncier
Direction
Rue de Tivoli 22
2003 Neuchâtel
T +41 32 889 47 83
Géoportail : http://sitn.ne.ch
www.ne.ch/sitn


-----Message d'origine-----
De : thomas bonfort [mailto:thomas.bonfort at gmail.com] 
Envoyé : mardi, 6 octobre 2015 10:41
À : Lime, Steve D (MNIT); Riedo Marc
Cc : MapServer Dev Mailing List; MapserverList OSGEO
Objet : Re: [mapserver-dev] RFC113 Chainable Compositing Filters

All credit for those beautiful maps go to the http://sitn.ne.ch/ team, I didn't have a play in them. I've cc'd Marc who might be able to share more details as to what he was using exactly (note that those maps predate the actual filter chaining implementation, and used a hack present in 7.0 along with drawing the shaded layers twice).
For the water bodies, I suspect it can be done with:

COMPOSITE
 #first we render normal water color
END
COMPOSITE
 COMPFILTER "whiten()"
 COMPFILTER "blur(5)"
 COMPOP "soft-light"
 OPACITY 50
END
CLASS
 STYLE
  COLOR water-color
 END
END

At present filters are not supported on labels (unless they don't go through the labelcache). They could be supported in the longer run if we explicitely had a "labelcache" layer that we could draw into and that we could therefore plug into the compositing chain.

regards,
thomas

On 2 October 2015 at 18:18, Lime, Steve D (MNIT) <Steve.Lime at state.mn.us> wrote:
> Beautiful maps... How'd you do the inside shading on the water bodies? 
> Can these be applied to labels? --Steve
>
> -----Original Message-----
> From: mapserver-dev-bounces at lists.osgeo.org 
> [mailto:mapserver-dev-bounces at lists.osgeo.org] On Behalf Of thomas 
> bonfort
> Sent: Friday, October 02, 2015 4:36 AM
> To: MapServer Dev Mailing List <mapserver-dev at lists.osgeo.org>; 
> MapserverList OSGEO <mapserver-users at lists.osgeo.org>
> Subject: [mapserver-dev] RFC113 Chainable Compositing Filters
>
> Hi All,
>
> I have finished implementing the chainable compositing filters that 
> were architectured along with RFC113, and the code has been committed 
> to the master branch. The aim of the development is essentially to 
> enable soft shadow and blurring effects, although other usages can 
> exist or could be added in the future.
> To obtain a soft shadow effect that can be seen for example around the 
> buildings on 
> http://sitn.ne.ch/production/wsgi/mobile/?theme=mobile_default&baselay
> er_ref=plan_ville&map_x=554942.49763489&map_y=200242.9936142&map_zoom=
> 6&tree_layers=
> you can use
>
> LAYER
>  NAME "buildings"
>  TYPE POLYGON
>  COMPOSITE
>   #create the shadow/blur effect by translating a blurred version of the layer
>   COMPFILTER "grayscale()"
>   COMPFILTER "translate(5,5)"
>   COMPFILTER "blur(4)"
>   OPACITY 50
>  END
>  COMPOSITE
>   #and render the buildings themselves
>   OPACITY 100
>  END
>  CLASS
>   STYLE
>     COLOR 128 128 128
>     OUTLINECOLOR 0 0 0
>     WIDTH 1
>    END
>   END
> END
>
> The currently available filters are:
> - "blur(integer)"
> - "translate(integer,integer)"
> - "grayscale()"
> - "blacken()"
> - "whiten()"
>
> I'll add some documentation and autotests next week.
>
> best regards,
> Thomas
> _______________________________________________
> mapserver-dev mailing list
> mapserver-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/mapserver-dev


More information about the mapserver-dev mailing list