[mkgmap-dev] Relations and Multiple Tag Parsing Style Rules
From Felix Hartmann extremecarver at googlemail.com on Mon Dec 15 16:28:51 GMT 2008
I have tried to use it, but it doesn't seem to work (mkgmap trunk svn version 823). I assume I'm using somehow wrong syntax and need more explanation. a) concerning relations I simply wrote this line to relations file to line 7: type=route route=bus { apply { set route=bus; add rn='${route_no}' ; }} this is what I got: D:\Garmin\mkgmap_680>java -jar -Xmx1256M d:\garmin\mkgmap_svn\dist\mkgmap.jar --description=Osm_Mtb_Austria3 --family-id=4013 --style-file=mtbx --product-id=1 --levels=0:24,1:22,2:20,3:18,4:16,5:14,6:12,7:10 --area-name=austria3 --mapname=63240030 austria.osm Error in style: Error: (relations:7): Invalid rule file (expr =) Could not open style null b) Also multiple Tag parsing does not seem to work for me. I added the following two lines to the beginning of the "lines" file in the style-file highway=path & mtb=yes [0x140 resolution 16] highway=footway & mtb=yes [0x141 resolution 16] And created a new file called "overlays" with the following two lines: 0x140: 0x11, 0x0e 0x141: 0x2a, 0x0e Error in style: Error: (overlays:2): List of numbers expected Could not open style null D:\Garmin\mkgmap_680>move 63240030.img d:\garmin\osm_austria The system cannot find the file specified. If in overlays there are the following lines Line1:0x140: 0x11, 0x0e Line2:0x141: 0x2a, 0x0e Line3: with Line 3 being empty, then the following error is produced: Exception in thread "main" java.lang.NullPointerException at uk.me.parabola.mkgmap.general.MapDetails.addLine(MapDetails.java:70) at uk.me.parabola.mkgmap.osmstyle.StyledConverter$1.add(StyledConverter.java:61) at uk.me.parabola.mkgmap.osmstyle.OverlayReader.addLine(OverlayReader.java:106) at uk.me.parabola.mkgmap.osmstyle.StyleImpl$1.add(StyleImpl.java:203) at uk.me.parabola.mkgmap.general.NullClipper.clipLine(NullClipper.java:28) at uk.me.parabola.mkgmap.osmstyle.StyledConverter.addLine(StyledConverter.java:194) at uk.me.parabola.mkgmap.osmstyle.StyledConverter.convertWay(StyledConverter.java:100) at uk.me.parabola.mkgmap.reader.osm.xml.Osm5XmlHandler.endDocument(Osm5XmlHandler.java:258) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endDocument(AbstractSAXParser.java:737) at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:515) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807) at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737) at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107) at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1205) at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:522) at javax.xml.parsers.SAXParser.parse(SAXParser.java:395) at javax.xml.parsers.SAXParser.parse(SAXParser.java:198) at uk.me.parabola.mkgmap.reader.osm.xml.Osm5MapDataSource.load(Osm5MapDataSource.java:72) at uk.me.parabola.mkgmap.main.MapMaker.loadFromFile(MapMaker.java:125) at uk.me.parabola.mkgmap.main.MapMaker.makeMap(MapMaker.java:44) at uk.me.parabola.mkgmap.main.Main.processFilename(Main.java:146) at uk.me.parabola.mkgmap.CommandArgs$Filename.processArg(CommandArgs.java:360) at uk.me.parabola.mkgmap.CommandArgs.readArgs(CommandArgs.java:119) at uk.me.parabola.mkgmap.main.Main.main(Main.java:91) Steve Ratcliffe wrote: > > Hi Felix > > > 2. Could Multiple Tag parsing be implemented into the style rules > somehow? > > > > I know that I could use combinations like highway=path & mtb:scale=0 > --> 0x01 > > and highwway=path & mtb:scale=1 --> 0x02 > > > Solution: If a way has two tags that are listed in the style file, both > > should be included seperately into the image. By using a .typ file one > > can then decide how to map them. Using transparency it's easy to see at > > the same time 4-5 different tags. I.e. you have the way in the middle. > > I have implemented something that I hope will do what you want to do here. > It is in the trunk version 801. > > It uses the new 'overlays' file in the style. > > Example: > > <<<version>>> > 0 > > <<<lines>>> > highway=path & mtb:scale=0 [ 0x140 ] > highway=path & mtb:scale=1 [ 0x141 ] > > <<<overlays>>> > 0x140: 0x7, 0x18 > 0x141: 0x7, 0x19 > > So for a path of scale 0, you would get two lines drawn on top > of each other with types 7 and 18. For scale 1, 7 and 19. > > You can have more than two. > > The good thing is that if mkgmap ever supports large type numbers, you can > just remove the overlays file and use 0x140 and 0x141 etc directly. > > .Steve > _______________________________________________ > mkgmap-dev mailing list > mkgmap-dev at lists.mkgmap.org.uk > http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev > -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.mkgmap.org.uk/pipermail/mkgmap-dev/attachments/20081215/39c79e2e/attachment.html
- Previous message: [mkgmap-dev] Relations and Multiple Tag Parsing Style Rules
- Next message: [mkgmap-dev] Relations and Multiple Tag Parsing Style Rules
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the mkgmap-dev mailing list