logo separator

[mkgmap-dev] maps on 180 degree

From ValentinAK valentin_k at inbox.ru on Tue Apr 12 18:55:24 BST 2011

I tried to understand the old problem with 180 degree of longitude.
The most eastern region of Russia located on the boundary of eastern and
western parts of the earth. At this point, Splitter and Mkgmap make the maps
divided into 2 parts. Both of these tiles are made with errors. The left
tile disappears in Mapsource with overzoom message and looks like without
background.

See saple images:
http://maptourist.org/files/noBackground.png
http://maptourist.org/files/overzoom.png

Right tile does not appear on the map due to compile errors in Mkgmap:
java -Xmx1024m -jar      E:\OSM\mkgmap\mkgmap-locator-r1912.jar 
--output-dir
=C:\Garmin\OSM_Russia\mkgmap\   --description="OSM test"       
--family-name="OSM test 12.04.2011"
        --series-name="OSM test 12.04.2011"    
--overview-mapname="OSM_test"   --area-name="OSM 12.
04.2011"        --family-id=480         --read-config=optionsfile.args         
--keep-going    --st
yle-file=E:\OSM\mkgmap\myConfigs        --style=myConfigs       --gmapsupp     
E:\OSM\mkgmap\myConf
igs\M00001e0.TYP        63240001.osm.gz
...
uk.me.parabola.imgfmt.MapFailedException: There is not enough room in a
single garmin map for all th
e input data
   The .osm file should be split into smaller pieces first.
        at
uk.me.parabola.imgfmt.app.BufferedImgFileWriter.ensureSize(BufferedImgFileWriter.java:192
)
        at
uk.me.parabola.imgfmt.app.BufferedImgFileWriter.putChar(BufferedImgFileWriter.java:117)
        at
uk.me.parabola.imgfmt.app.trergn.Polyline.write(Polyline.java:138)
        at
uk.me.parabola.imgfmt.app.trergn.RGNFile.addMapObject(RGNFile.java:140)
        at uk.me.parabola.imgfmt.app.map.Map.addMapObject(Map.java:242)
        at
uk.me.parabola.mkgmap.build.MapBuilder$ShapeAddFilter.doFilter(MapBuilder.java:1092)
        at
uk.me.parabola.mkgmap.build.LayerFilterChain.doFilter(LayerFilterChain.java:57)
        at
uk.me.parabola.mkgmap.filters.RemoveEmpty.doFilter(RemoveEmpty.java:61)
        at
uk.me.parabola.mkgmap.build.LayerFilterChain.doFilter(LayerFilterChain.java:57)
        at
uk.me.parabola.mkgmap.filters.PolygonSplitterFilter.doFilter(PolygonSplitterFilter.java:5
7)
        at
uk.me.parabola.mkgmap.build.LayerFilterChain.doFilter(LayerFilterChain.java:57)
        at
uk.me.parabola.mkgmap.build.LayerFilterChain.startFilter(LayerFilterChain.java:75)
        at
uk.me.parabola.mkgmap.build.MapBuilder.processShapes(MapBuilder.java:961)
        at
uk.me.parabola.mkgmap.build.MapBuilder.makeSubdivision(MapBuilder.java:667)
        at
uk.me.parabola.mkgmap.build.MapBuilder.makeMapAreas(MapBuilder.java:601)
        at
uk.me.parabola.mkgmap.build.MapBuilder.makeMap(MapBuilder.java:203)
        at uk.me.parabola.mkgmap.main.MapMaker.makeMap(MapMaker.java:101)
        at uk.me.parabola.mkgmap.main.MapMaker.makeMap(MapMaker.java:65)
        at uk.me.parabola.mkgmap.main.Main$1.call(Main.java:224)
        at uk.me.parabola.mkgmap.main.Main$1.call(Main.java:221)
        at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown
Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
Source)
        at java.lang.Thread.run(Unknown Source)

I found a temporary solution. If you edit the coordinates of the borders of
the two tiles in the file areas.kml (generated by Splitter with option
"--split-file=areas.kml") replacing 180.000000 to 179.999998 for the left
tile and -180.000000 to -179.999998 for the right tile. Then run Splitter
with "--split-file=areas.kml" option. Now both the tiles are compiled
correctly. But "Overzoom" area had not gone - it just reduced to 2 km
stripe.
http://maptourist.org/files/spacing.png 

I take the OSM data here - http://gis-lab.info/data/osm/full.osm.bz2

My erroneous tiles:
Left - http://maptourist.org/files/63240042.osm.gz
Right - http://maptourist.org/files/63240001.osm.gz

Parameters of the splitter:
java-Xmx1024m-jar splitter171.jar ^
  - geonames-file = cities1000.zip ^
- overlap = 20000 <
- max-nodes = 1000000 ^
- no-trim ^
- write-kml = areas.kml ^
full.osm

optionsfile.args:
max-jobs: 2
code-page: 1251
tdbfile
index
country-name: RUSSIA
country-abbr: RUS
lower-case
route
net
drive-on-right
remove-short-arcs
location-autofill = 2
generate-sea = extend-sea-sectors, close-gaps = 300,000, floodblocker


--
View this message in context: http://gis.638310.n2.nabble.com/maps-on-180-degree-tp6266087p6266087.html
Sent from the Mkgmap Development mailing list archive at Nabble.com.



More information about the mkgmap-dev mailing list