
On Thu, Oct 31, 2013 at 10:08:53AM -0700, GerdP wrote:
a few weeks ago I suggested that we might need higher precision in the Coord class.
Attached patch is a quick hack to implement this. If I got it right, this may allow to remove a lot of code that tries to correct what the rounding had done wrong. For the beginning, I've used the precise values only for bearing calculations, as I think that this is most important.
high_precision_coord_v1.patch <http://gis.19327.n5.nabble.com/file/n5783533/high_precision_coord_v1.patch>
Please let me know what you think about it.
This sounds interesting. I tried it out on finland.osm.pbf, wondering if it would make some of the bogus warnings for anti-islands go away. (There are some very tiny islets or rocks mapped as natural=coastline.) I guess, it is to be expected that your patch does not yet fix bogus warnings about the direction of hyper-precisely mapped roundabouts or tiny coastline polygons. Here is an example that I got with your patch: 2013/10/31 21:16:32 WARNING (SeaGenerator): 63240002.osm.pbf: Converting anti-island starting at http://www.openstreetmap.org/?mlat=60.21780&mlon=25.30937&zoom=17 into an island as it is surrounded by water This is http://www.openstreetmap.org/browse/way/241289746, a tiny islet, properly mapped in counterclockwise direction. For some reason, current svn head (r2795) with your patch is producing more error messages than the revision I used earlier (I guess r2640). With the old mkgmap, I got 545041 bytes of log, and with the patched r2795, I got 774890 bytes, for the same input. The map sizes grew too: Length Method Size Cmpr Date Time CRC-32 Name 142065664 Defl:X 113283124 20% 2013-10-31 05:23 05eede3d gmapsupp.img 143736832 Defl:X 114490132 20% 2013-10-31 05:23 662f2ea9 gmapsupp.img (The timestamp is that of the finland.osm.pbf file.) Best regards, Marko