libosmsocut is still fine. Recent enhancements did improve speed and also the visual expression . Here are the details:
- I finished basic relation support and simplified the code. We do have support for multipolygon parsing, do support the same attributes like ways and areas have. What is missing is fixing label drawing and correct (at least for common cases) drawing of multiploygon relations – which should enable us to drop the ugly layer hack for areas.
- The “give me everything in an area” index, used for getting the data for drawing a map has also been improved and simplified, resulting in reduced loading and faster scanning. However there is still room for a number macro and micro optimizations to make the index even master and especially loading time shorter.
- The drawing code has been refactored to separate the concrete drawing code (the code that uses cairo)from the drawing algorithm. I did this to support other drawing engines beside cairo – especially Qt. It should also enable us to support other export formats directly (cairo also supports pdf, ps and svg).
- I changed the drawing algorithm and the style sheet to draw outlines only if the way is wide enough. Ways will now be drawn in the “real” with.
- I enhanced the way data to pass way width as define din the *.osm file to the drawing engine.
- I changed the icon drawing code, so that one can define any icons (no internal enumeration). A few more icons have been added.
- Areas can now have external image patterns. A few examples have been added.
My next plans are:
- Fix some final relation attribute stuff
- Correctly draw multipolygon relations
- Add support for Qt
After that I will concentrate on further improvements like:
- Better labeling
- Better style language(allowing to use further tags to define a type)
- Optimizing the drawing engine, allowing more parameters etc..
- In parallel I will continue to work on routing improvements