[mkgmap-dev] patch to write polygons in decreasing order
From Ticker Berkin rwb-mkgmap at jagit.co.uk on Fri Nov 11 14:56:14 GMT 2016
Hi Gerd I think the reason why the buildings look different is because, without --order-by-decreasing-area, they get merged into a single area and then a filter (DouglasPeucker), finding the intermediate points are within the tolerance of a straight line, removes all but the 4 corners of the complete block. With --order-by, they are output individually as accurately as possible, but, because we are at/beyond at the limit of accuracy, rounding effects become obvious. You mentioned GPSMapEdit not showing the smaller shape on top of the larger. Using it to look at your test case of buildings in Bremen, and the difference between with/without the option, I think it might apply the size rule itself - drawing smaller shapes on top of larger. The example I found was Penny supermarket @ 53.06650,8.79501 straddling a number of buildings. With the buildings merged, it is smaller and hence shows. With them separate, the buildings are smaller and they show. Does this fit with your observations? Which examples were you looking at? www.openstreetmap.org doesn't show Penny either. I didn't use Util.roundUp because I wanted something to round to the closest power of 2 and it rounds up to the next power of 2. I've improved the javaDoc text for roundPof2. I've made the other changes and attach a patch. Regards Ticker On Fri, 2016-11-11 at 11:37 +0000, Ticker Berkin wrote: > Hi Gerd > > I'll check on the rounding, fix the warn>debug and add the pre-test > to > the splitting into areas. > > I've just loaded GPSMapEdit and see what you mean about the long > lines > of buildings - they are wavy!. I'll work out why it is happening. > > Regards > Ticker > > On Fri, 2016-11-11 at 01:25 -0700, Gerd Petermann wrote: > > Hi Ticker, > > > > sorry, still some problems: > > 1) I think I found an error in method Area.roundPof2(int val, int > > shift) > > I wanted to find out why you did not use Util.roundUp(int val, int > > shift). > > > > For val=-9567 and shift=4 I see > > -9568 from your routine and > > -9552 from the other > > So it seems your routine doesn't round up as the javadoc says. > > So either the doc or the result is wrong. > > > > 2) Please check the new log messages. The severity level warning > > should not > > be used for debug messages. > > A warning message should be understandable for the end user. > > > > 3) Reg. performance: > > I think most of the area.intersect calls are not needed when you > > add > > this > > block at the beginning of > > splitIntoAreas(): > > // quick check if bbox of shape lies fully inside one > > of the areas > > for (int areaIndex = 0; areaIndex < areas.length; > > ++areaIndex) { > > if > > (areas[areaIndex].getBounds().contains(e.getBounds())) { > > used[areaIndex] = true; > > areas[areaIndex].addShape(e); > > return; > > } > > } > > // Shape crosses area(s), we have to split it > > // Convert to a awt area > > ... > > > > ciao, > > Gerd > > > > > > > > > > > > -- > > View this message in context: > > http://gis.19327.n8.nabble.com/patch-to > > -write-polygons-in-decreasing-order-tp5884038p5885742.html > > Sent from the Mkgmap Development mailing list archive at > > Nabble.com. > > _______________________________________________ > > mkgmap-dev mailing list > > mkgmap-dev at lists.mkgmap.org.uk > > http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev > _______________________________________________ > mkgmap-dev mailing list > mkgmap-dev at lists.mkgmap.org.uk > http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev -------------- next part -------------- A non-text attachment was scrubbed... Name: sortAreas_v5.patch Type: text/x-patch Size: 27567 bytes Desc: not available URL: <http://www.mkgmap.org.uk/pipermail/mkgmap-dev/attachments/20161111/2bf9de69/attachment-0001.bin>
- Previous message: [mkgmap-dev] patch to write polygons in decreasing order
- Next message: [mkgmap-dev] patch to write polygons in decreasing order
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the mkgmap-dev mailing list