[OSM-talk] Blue sea tiles for tiles at home
Frederik Ramm
frederik at remote.org
Tue Apr 24 22:25:46 BST 2007
Hi,
I found the problem that created the funny zig-zagged lines - a
quite spectacular example of which is here in the Outer Hebrides (modern
art, I say!):
http://www.informationfreeway.org/?lat=7892620.5527&lon=-795919.49377&zoom=12&layers=B000
Frollo has a limit of 400 segments per way (it was originally 800, and
then I reduced a constant somewhere in frollo2.xsl because some
renderers were complaining they got "possible endless recursion" error
messages).
Until now I thought that if ways get more complex than that, Frollo
would just leave the way alone. But it seems that the way gets messed up
somehow.
Here is a boiled-down example with just the coasline from the Portsmouth
harbour tile 2036,1374:
http://www.remote.org/frederik/tmp/broken-area-with-frollo.osm
It is the result coming out of close-areas.pl, with one coastline way of
about 600 segments. It renders fine with osmarender as-is; if you run
this through Frollo with the limit set to 400, as distributed with t at h,
you get a zigzag mess; if you increase the limit to 800, it works perfectly.
(J.D., do you have a local t at h installation and can you perhaps check if
increasing this limit - line 67 of frollo2.xml - fixes your Copenhagen
tile also?)
Now what can we do about this? 80n, do you think you can modify Frollo
to not break ways that are too long? If that is not possible, then I
would be tempted to count the length of coastline ways created by
close-areas.pl and somehow trigger bypassing of Frollo if the number is
too big. We could also try and increase the max number again, which
would cause Frollo to be aborted in these cases and should ideally lead
to the same effect (bypassing Frollo). Another option is telling the
XSLT engine that it should care for "possible endless recursion", but I
think this only works with xsltrans and not xmlstarlet.
The auto-generated coastline way in the Hebrides can easily be 2,500
segments or longer for one level-12 tile. Unfortunately I do not see how
I could easily break this up in close-areas.pl and not ruin Inkscape's
filling algorithm.
--
Frederik Ramm ## eMail frederik at remote.org ## N49°00.09' E008°23.33'
More information about the talk
mailing list