logo separator

[mkgmap-dev] addresses in the United States

From Greg Troxel gdt at lexort.com on Sat Jan 20 01:58:44 GMT 2018

(I have been using mkgmap for a really long time, and have been a little
out of touch with it the last few years mostly due to using OsmAnd on my
phone, although I still build maps for my Etrex 30 for hiking.)

I built osm.img from Geofabrik's us-northeast.  On my Nuvi 50, I find
that I can find Massachusetts towns, but not towns in Rhode Island.  I
realized this was due to my not really understanding the address options
and using them wrong/not-at-all.  So I read the docs about precompiled
bounds and sea and added those, using the files from mkgmap.org.uk, and
rebuilt.  Hence I am not asking about my earlier not-right builds.

With the new osm.img, in address search, there is only "United States"
vs "Canada", and no per-state option.  Towns can be found in any of the
states in my source file, but they show with their counties only, not
the state.  If you pick the right town/county combination, streets are
found, and I believe housenumbers, when they exist in OSM.  This is
harder than you might think because we basically reuse town names and
county names from England separately in each State :-)

When building, I first use splitter, and I think I have not had any
splitter issues in many years.  Then I run mkgmap (details at end).

Note that in addition to us-northeast.obf, I also add a file which has
parcel boundaries in my town convreted to OSM format, and I have a style
rule that shows them as marine depth contours.  This has been working
for many years.  My style diff in lines is:
  +# 0x23 is depth countour - thin.  Wacky but useful.  0x1c is too heavy
  +boundary=parcel [0x23 resolution 20]
I don't think this matters, but I don't feel right leaving out the info.

For no good reason, my recent build was done with
  r3997 | gerd | 2017-09-26 03:49:38 -0400 (Tue, 26 Sep 2017) | 1 line
and I am going to update and try again, without the --region-* arguments.
Other than the parcel style change my only other local changes are doc
fixes that I need to check and submit some day.

My questions are:

  1. I have leftover --region-* arguments in my script, and I'm
     wondering if that's the issue.  Should I remove those?  Does that
     explain the state/county confusion?

  2. I would expect the admin boundaries for state, county and town to
     be used from the bounds file, to fill in those address elements for
     roads, as well as for explicitly tagged addresses if they only have
     housenumber/street.  Is that right?   Fairly clearly the town and
     county boundaries are being used correctly.

     (Actually also county boundaries for counties that do not have
     admin_level=6 because of overzealous nonlocals who think it's
     helpful to remove those for counties that don't legally have a
     separate government, even though nobody who uses the map has any
     idea about this fine point and everyone refers to counties as a
     real thing.  But counties are showing up, so that's not the
     problem.)

  3. To make the best map possible for normal people to use navigating
     with a nuvi, without crossing into custom styles, should I be doing
     something different?

  4. Given the goal in (3), should I be crossing into a custom style?

  5. In addition to the admin hierarchy, which is what everyone thinks
     of in terms of addresses, there are also a lot of place names (as
     nodes) in OSM, with tags like village and hamlet.  These are names
     for where there were concentrations of house long ago, and many are
     in use today.  People use them as in "I live near Tracey's Corner"
     but would never put "Tracey's Corner" as a component of their
     address.  by using is_in, I think I'm not using those, and I don't
     think this is related to my problem anyway.

java \
    -enableassertions \
    -Xmx3072m \
    -jar splitter.jar \
    --output=pbf \
    --max-nodes=${MAXNODES} \
    --keep-complete=no \
    $INPUT \

java \
    -enableassertions \
    -Xmx6144m \
    -jar mkgmap.jar \
    --max-jobs \
    --latin1 \
    --description="OSM_gdt" \
    --country-abbr="US" \
    --country-name="United States" \
    --region-abbr="MA" \
    --region-name="Massachusetts" \
    --family-id=1500 \
    --family-name="OSM_gdt_family" \
    --product-id=13 \
    --series-name="OSM_gdt_series" \
    --area-name="OSM_gdt_area" \
    --draw-priority=60 \
    --overview-mapname=63240000 \
    --tdbfile \
    --precomp-sea=sea.zip \
    --reduce-point-density=4 \
    --reduce-point-density-polygon=8 \
    --merge-lines \
    --route \
    --check-roundabouts \
    --check-roundabout-flares \
    --remove-short-arcs \
    --adjust-turn-headings \
    --report-similar-arcs \
    --report-dead-ends=2 \
    --add-pois-to-areas \
    --check-styles \
    --index \
    --bounds=bounds.zip \
    --housenumbers \
    --location-autofill=is_in \
    -c template.args \
    --gmapsupp


Thanks,
Greg (osm user gdt)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 162 bytes
Desc: not available
URL: <http://www.mkgmap.org.uk/pipermail/mkgmap-dev/attachments/20180119/5d50ec9c/attachment.sig>


More information about the mkgmap-dev mailing list