<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:Calibri
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>Hi Andrzej,<br><br>ah, yes, that one shows the problem.<br>The additional cycle way is added with a different (OSM) id (osm id incremented by CYCLEWAY_ID_OFFSET (0x10000000)).<br>Therefore all points of the original way appear on two different roads,<br>all highway counts are incremented and thus the obsolete point<br>is no longer considered obsolete.<br><br>I see two simple fixes:<br>1) don't increment the id<br>2) consider two way ids as identical when they differ by CYCLEWAY_ID_OFFSET and follow each other.<br><br>I don't know why the offset was added, so I don't dare to remove it.<br>Attached is a patch for the 2nd approach.<br><br>@Steve: svn blame says the code with the CYCLEWAY_ID_OFFSET was added by you.<br>Please check if that is (still) needed, I think it was just added to be able to identify these special ways<br>when debugging?<br><br>Gerd<br><br><div>Date: Fri, 21 Mar 2014 20:23:48 +0100<br>From: popej@poczta.onet.pl<br>To: mkgmap-dev@lists.mkgmap.org.uk<br>Subject: Re: [mkgmap-dev] link-pois-to-ways tags<br><br><pre>Hi Gerd,<br> <br> > I see no hardcoded handling of highway=crossing.<br> <br>My bad, wrong guess and wrong thread.<br> <br>Problem is due to option make-opposite-cycleway. When used, way gets <br>additional nodes, which accidentally happen to be crossing. Without <br>crossing tag, mkgmap behave the same.<br> <br>See attached sample and node:<br><a href="http://www.openstreetmap.org/node/2650495576" target="_blank">http://www.openstreetmap.org/node/2650495576</a><br> <br>Compilation with simple command:<br>mkgmap --route --make-opposite-cycleways crossing.osm<br> <br>-- <br>Best regards,<br>Andrzej<br> <br></pre><br>_______________________________________________
mkgmap-dev mailing list
mkgmap-dev@lists.mkgmap.org.uk
http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev</div>                                            </div></body>
</html>