<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 Steve,<br><br>I agree that the GType should not be copied, I never felt happy with it.<br>It is probably better to create a new Class like ConvertedRoad<br>which extends Way and contains some exra fields like speed and class <br>which are modified in StyledConverter. The RoadMerger<br>also uses something like this.<br><br>Gerd<br><br><div>&gt; Date: Sun, 19 Jan 2014 21:38:12 +0000<br>&gt; From: steve@parabola.me.uk<br>&gt; To: mkgmap-dev@lists.mkgmap.org.uk<br>&gt; Subject: Re: [mkgmap-dev] Weird road speed<br>&gt; <br>&gt; On 19/01/14 20:06, WanMil wrote:<br>&gt; &gt; @Gerd: StyledConverter.postConvertRules can change the road speed in the<br>&gt; &gt; type. But this hasn't been copied before so I guess it's changing the<br>&gt; &gt; global type of the rule. Can you check that?<br>&gt; &gt; I added<br>&gt; &gt;      type = new GType(type);<br>&gt; &gt; at line 202 but this didn't change the overall result. So it seems not<br>&gt; &gt; to be the only problem.<br>&gt; &gt;<br>&gt; <br>&gt; The way I see it is that the GType is simply a representation<br>&gt; of the type declaration in a rule. It is static and should<br>&gt; not be modified or copied per way.<br>&gt; <br>&gt; The Converter converts Way -&gt; MapRoad<br>&gt; <br>&gt; The rules produce a Gtype and a set of variables, V (that we happen<br>&gt; to implement by adding mkgmap:* tags to the way).<br>&gt; <br>&gt; You use the GType and V to initialise the MapRoad.<br>&gt; <br>&gt; So to override the road_speed should be done in addRoadWithoutLoops()<br>&gt; where it is currently initialised directly from the GType.<br>&gt; <br>&gt; ..Steve<br>&gt; _______________________________________________<br>&gt; mkgmap-dev mailing list<br>&gt; mkgmap-dev@lists.mkgmap.org.uk<br>&gt; http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev<br></div>                                               </div></body>
</html>