logo separator

[mkgmap-dev] gmapsupp + index and Berlin/Friedrichstr.

From Martin Simon grenzdebil at gmail.com on Tue Jan 10 12:40:20 GMT 2012

2012/1/10 Martin <mkgmap at snailrun.de>:
> Hello Steve,
>

I'd like to throw in another question regarding the totally cool new
search index feature:

I build a map for my vista hcx that contains several layers with
different product-id: 2 different background layers (landuse/terrain
visualization), 1 main layer (routable ways, pois and minor polygons)
and layers for maxspeed, hiking routes, lighting etc.

Now I started using the index on the main layer and it works great -
as long as I don't try to combine all layers to a single gmapsupp.img,
which I always do by calling mkgmap with all sublayer gmapsupps as
input files:

java -jar mkgmap/mkgmap.jar --gmapsupp --nsis
--description="OSM-Topo-DE" --overview-mapname=topo-gesamt
deutschland/gelaende/gmapsupp.img deutschland/landuse/gmapsupp.img
deutschland/topo/gmapsupp.img deutschland/maxspeed/gmapsupp.img
deutschland/isohypsen/gmapsupp.img deutschland/isohypsen2/gmapsupp.img
deutschland/wanderwege/gmapsupp.img deutschland/lit/gmapsupp.img

When doing so now, the resulting gmapsupp.img is lacking the complete
main layer, but no error message is given.

When I add --index to the command line, I get the following error
message immediadely:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1
        at java.util.ArrayList.get(ArrayList.java:324)
        at uk.me.parabola.imgfmt.app.mdr.Mdr29.preWriteImpl(Mdr29.java:62)
        at uk.me.parabola.imgfmt.app.mdr.MdrSection.preWrite(MdrSection.java:138)
        at uk.me.parabola.imgfmt.app.mdr.MDRFile.writeSection(MDRFile.java:379)
        at uk.me.parabola.imgfmt.app.mdr.MDRFile.writeSections(MDRFile.java:353)
        at uk.me.parabola.imgfmt.app.mdr.MDRFile.write(MDRFile.java:247)
        at uk.me.parabola.mkgmap.combiners.MdrBuilder.onFinishForDevice(MdrBuilder.java:382)
        at uk.me.parabola.mkgmap.combiners.GmapsuppBuilder.onFinish(GmapsuppBuilder.java:116)
        at uk.me.parabola.mkgmap.main.Main.endOptions(Main.java:417)
        at uk.me.parabola.mkgmap.CommandArgsReader.readArgs(CommandArgsReader.java:126)
        at uk.me.parabola.mkgmap.main.Main.main(Main.java:112)

Has anyone else tried to combine a layer containing an index with other yet?


I also observed (sorry if this is already known) that many streets
with highway shields generated from ref=* tags only appear as the
ref=* value in the street search, even though both ref _and_ name are
displayed by the device. Other parts of the same street appear only
with name=*.
(Example: ref=B 56, name=Euskirchener Straße in Bonn, Germany)
(using the latest patched version)

Thanks for answering (and all the great development work, of course)!

-Martin



More information about the mkgmap-dev mailing list