[OSM-dev] Introducing PGMapCSS 0.2.0

Stephan Bösch-Plepelits skunk at xover.htu.tuwien.ac.at
Fri Aug 23 07:25:55 UTC 2013


Hi!

PGMapCSS is a library for PostgreSQL/PostGIS which works between an
osm2pgsql based database and Mapnik. It processes database (usually
OpenStreetMap) objects according to MapCSS rules and calculates resulting
colors, widths and other properties for Symbolizers, even geometric
modifications.

Over the last couple of weeks PGMapCSS matured a lot since 0.1.0 -
thereofore it's time for a new release: 0.2.0. It's now a working library,
that displays MapCSS stylesheets with Mapnik. (Although there are still
some limitations: there are quite a few incompatibilities to pure MapCSS;
I hope to achieve more compatibility in the future.)

The biggest limitation in Mapnik is the lack of expression support for most
of the Symbolizer options (as I wrote in the first announcement). I solved
this by adding a pre-processor that generates Rules like:
<Rule>
  <Filter>[width] = '1' and [color] = '#ff0000'</Filter>
  <LineSymbolizer stroke-width='1' stroke='#ff0000' />
<Rule>
<Rule>
  <Filter>[width] = '2' and [color] = '#ff0000'</Filter>
  <LineSymbolizer stroke-width='2' stroke='#ff0000' />
<Rule>

This is not very efficient - but it works (as long as no eval()-statement
is used, because PGMapCSS can't guess the result of those and might miss a
combination).

Try it, tell me what you think of it:
* https://github.com/plepe/pgmapcss

Here are some examples:
* https://github.com/plepe/pgmapcss/tree/master/examples

On Sat, Aug 03, 2013 at 11:34:15AM +0200, Frederik Ramm wrote:
> AFAIK MapServer supports [using expressions for Symbolizer options].
> Tiling can then be done either via the standard MapServer toolchain, or
> MapProxy, or even continuing with mod_tile and using Tirex's "mapserver"
> backend.
I looked into the documentation of MapServer (and GeoServer), and I think
it won't work with PGMapCSS. I documented my findings in
https://github.com/plepe/pgmapcss/blob/master/doc/compatibility.creole

Maybe it would help if someone with more knowledge on MapServer (or
GeoServer or other software) would try it and report his/her experiences.

greetings,
        Stephan
-- 
Seid unbequem, seid Sand, nicht Öl im Getriebe der Welt! - Günther Eich
,---------------------------------------------------------------------.
| Stephan Bösch-Plepelits,                                            |
| Technische Universität Wien   -    Studien Informatik & Raumplanung |
| Projects:                                                           |
| > openstreetbrowser.org > couchsurfing.org > tubasis.at > bl.mud.at |
| Contact:                                                            |
| > Mail: skunk at xover.mud.at > Blog: plepe.at                         |
| > Twitter: twitter.com/plepe > Jabber: skunk at jabber.at              |
`---------------------------------------------------------------------'



More information about the dev mailing list