Hi, I would like to ask those interested in OSM viewing with QGIS, to contribute to an improved QGIS viewer of OpenStreetMap data, in form of a python plugin and, if needed, some modification in the trunk.
Recently I received several private emails asking me to share my experience and/or files related to viewing OpenStreetMap data in QGIS. "One image is worth a thousand words"... I have just put 5 improved renderings of OSM data here: http://www.qgis.org/wiki/OpenStreetMap_data_rendered_with_QGIS It uses the rule-based renderer (which just received support of symbol levels in 1.7.0) and osm2postgresql. More details on the method used here: http://www.qgis.org/wiki/Using_OpenStreetMap_data The roadmap could be as follows: 1. Slightly modify the existing plugin as follows: 1a. while opening an .osm file, store the data in a format (let's assume spatialite, but could be other type) that allows long strings (shp/dbf have a 254 characters limitation) 1b. in the spatialite files, store in a single field named "tags" all the concatenated tags for each feature. Should look like this: "access"="private", "amenity"="parking", "parking"="underground" This example is how I manage this node: http://www.openstreetmap.org/browse/node/989971901 (The comma can be replaced by any separator, even a space; comma is for readability for humans). (Optionally here, we can drop the following tags: "source", "modified_by", "edited_with" and the like. The shorter, the best performance and the smaller the files). 1c. remove all points that are left with no tags after dropping these tags (those are just vertices or noise) 1d. store the "name" tag in a "name" field (for labelling). 1e. do not store roundabouts as polygons but as ways (this is the most common problem generated by the plugin when assuming that closed ways are polygons; this is impossible to have a nice rendering of polygonized roundabouts). 1f. put the required layers in a single group layer 1g. automatically apply a set of .qml files The alternative to the above (1) is to use my osm2postgresql bash script (this requires a linux box; the script installs the server if not done yet; one of its advantages is correct management of polygons with holes and good performance at the country level). 2. Distribute the .qml files I created with the plugin or with QGIS (no idea of what is best) 3. Distribute with the plugin or with QGIS the icons I generated (no idea of what is best). (Optionally: ask [again] SJJB management icon authors to backport svg bug fixes and share related bash scripts) Ideally: for 2 and 3, think of how people would contribute their alternative OSM rendering using the QGIS OSM plugin. I would really appreciate collaboration of at least one python developer for (1-2-3), and [if needed] of a QGIS core developer for (2) and (3). I have very little experience with QGIS python plugins. Since I do this on my spare time only (to prepare my hiking maps), without help this will take ages and I have little personal interest in doing so (it already works on my machine, so...). Also, I could put my .qml on rapidshare, my .svg on openclipart and my bash script to create the svg on the qgis wiki... but I won't, since those solutions add a lot of hassle in data and code management and do not deliver what I would like to contribute to: "Fast, easy and beautiful on the fly rule-based rendering of OSM maps" Cf. http://trac.osgeo.org/qgis/ticket/3222 I would like to spend time improving the symbology rather than coding the above 1, 2 and 3, hence my question: anybody interested in contributing to an improved QGIS OSM viewer plugin? Thanks for reading, and thanks in advance for any answer! Regards, Mayeul PS: If we can do the above and test it with the QGIS web client, we could do a killer demo at the OSM state of the map conference in Vienna this summer, something like: "Create your Customized Slippy Map in 10 Minutes with QGIS". MK _______________________________________________ Qgis-developer mailing list Qgis-developer@lists.osgeo.org http://lists.osgeo.org/mailman/listinfo/qgis-developer