
I've built my own gmappsup for the US Northeast and loaded it into my Garmin. My script for doing so is roughly as follows: [[ us-northeast-latest.osm.bz2 -nt northeast.om5 ]] && bzcat us-northeast-latest.osm.bz2 | ../osmconvert/osmconvert - -o=northeast.om5 [[ northeast.om5 -nt northeast-boundaries.o5m ]] && ../osmfilter/osmfilter northeast.om5 --keep-nodes= --keep-ways-relations="boundary=administrative =postal_code postal_code=" -o=northeast-boundaries.o5m java -cp ../mkgmap/dist/mkgmap.jar uk.me.parabola.mkgmap.reader.osm.boundary.BoundaryPreprocessor northeast-boundaries.o5m bounds/ java -jar ../mkgmap/dist/mkgmap.jar \ --gmapsupp \ --mapname=20355490 \ --description="Northeast United States" \ --country-name="United States" \ --country-abbr=US \ --region-name="Northeast" \ --region-abbr=NE \ --index \ --location-autofill=nearest \ --housenumbers \ --route \ --add-pois-to-areas \ --bounds=bounds \ --add-pois-to-areas \ --process-destination \ --process-exits \ *.osm.pbf I've loaded the result onto my Garmin Nuvi. When I attempt to do an address search, it first asks me for the City, but the cities I'm looking for don't show up in the search. Oddly, when it shows the closest cities I can see some of them, but when I do a text search it shows distant oddballs. For example, with 'New York', I see: New York, FL New York, TX New York Mills, MN None of these are the New York I'm looking for. I don't even think they are in my input file, but are perhaps coming from the internal memory on my GPS. It does appear the NYC addresses are working better - I can see the Bronx Zoo is in The Bronx and Carnegie Hall is in New York, however, I can't key in an address to see if it works because of the address search issue. Another thing which has me puzzled is why some POIs are not showing the city/state. For example Desert Moon Grille <http://www.openstreetmap.org/node/3139391561> is in Danbury <http://www.openstreetmap.org/way/33271879>, Connecticut. I can find it doing a Food POI search. That works fine. But, when I select it, it shows "Not_set, Fairfield County". Nomination gets the address perfect: Desert Moon Fresh Mexican Grille, 113, Mill Plain Road, Danbury, Fairfield County, Connecticut, United States of America <http://www.openstreetmap.org/node/3139391561> . I'm compiling my own bounds file, so I'm surprised it hasn't worked. Brian

Hi Brian, I think your problem is caused by the fact that your input file doesn't contain the boundary for the USA. That's the reason for the --bounds option, the typical use is to download the boundaries for planet from e.g. http://www.mkgmap.org.uk/download/mkgmap.html If you want to create your own bounds file, you should make sure to have complete continents. The style rules in the inc/address file expect that mkgmap:admin_level2=USA but this will not happen if the bounds file doesn't contain enough of the boundary. Gerd From: brianegge@gmail.com Date: Wed, 29 Oct 2014 01:53:28 +0000 To: mkgmap-dev@lists.mkgmap.org.uk Subject: [mkgmap-dev] Building northeast map I've built my own gmappsup for the US Northeast and loaded it into my Garmin. My script for doing so is roughly as follows: [[ us-northeast-latest.osm.bz2 -nt northeast.om5 ]] && bzcat us-northeast-latest.osm.bz2 | ../osmconvert/osmconvert - -o=northeast.om5[[ northeast.om5 -nt northeast-boundaries.o5m ]] && ../osmfilter/osmfilter northeast.om5 --keep-nodes= --keep-ways-relations="boundary=administrative =postal_code postal_code=" -o=northeast-boundaries.o5mjava -cp ../mkgmap/dist/mkgmap.jar uk.me.parabola.mkgmap.reader.osm.boundary.BoundaryPreprocessor northeast-boundaries.o5m bounds/ java -jar ../mkgmap/dist/mkgmap.jar \ --gmapsupp \ --mapname=20355490 \ --description="Northeast United States" \ --country-name="United States" \ --country-abbr=US \ --region-name="Northeast" \ --region-abbr=NE \ --index \ --location-autofill=nearest \ --housenumbers \ --route \ --add-pois-to-areas \ --bounds=bounds \ --add-pois-to-areas \ --process-destination \ --process-exits \ *.osm.pbf I've loaded the result onto my Garmin Nuvi. When I attempt to do an address search, it first asks me for the City, but the cities I'm looking for don't show up in the search. Oddly, when it shows the closest cities I can see some of them, but when I do a text search it shows distant oddballs. For example, with 'New York', I see:New York, FLNew York, TXNew York Mills, MN None of these are the New York I'm looking for. I don't even think they are in my input file, but are perhaps coming from the internal memory on my GPS. It does appear the NYC addresses are working better - I can see the Bronx Zoo is in The Bronx and Carnegie Hall is in New York, however, I can't key in an address to see if it works because of the address search issue. Another thing which has me puzzled is why some POIs are not showing the city/state. For example Desert Moon Grille is in Danbury, Connecticut. I can find it doing a Food POI search. That works fine. But, when I select it, it shows "Not_set, Fairfield County". Nomination gets the address perfect: Desert Moon Fresh Mexican Grille, 113, Mill Plain Road, Danbury, Fairfield County, Connecticut, United States of America . I'm compiling my own bounds file, so I'm surprised it hasn't worked. Brian _______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev

Thanks Gerd, I've been adding/fixing city boundaries in my area, so I'm trying to create my own bounds file. If an admin_level2 can't be found, does it use the *--country-abbr *option? Brian On Wed Oct 29 2014 at 3:28:37 AM Gerd Petermann < gpetermann_muenchen@hotmail.com> wrote:
Hi Brian,
I think your problem is caused by the fact that your input file doesn't contain the boundary for the USA. That's the reason for the --bounds option, the typical use is to download the boundaries for planet from e.g. http://www.mkgmap.org.uk/download/mkgmap.html
If you want to create your own bounds file, you should make sure to have complete continents.
The style rules in the inc/address file expect that mkgmap:admin_level2=USA but this will not happen if the bounds file doesn't contain enough of the boundary.
Gerd
------------------------------ From: brianegge@gmail.com Date: Wed, 29 Oct 2014 01:53:28 +0000 To: mkgmap-dev@lists.mkgmap.org.uk Subject: [mkgmap-dev] Building northeast map
I've built my own gmappsup for the US Northeast and loaded it into my Garmin. My script for doing so is roughly as follows:
[[ us-northeast-latest.osm.bz2 -nt northeast.om5 ]] && bzcat us-northeast-latest.osm.bz2 | ../osmconvert/osmconvert - -o=northeast.om5 [[ northeast.om5 -nt northeast-boundaries.o5m ]] && ../osmfilter/osmfilter northeast.om5 --keep-nodes= --keep-ways-relations="boundary=administrative =postal_code postal_code=" -o=northeast-boundaries.o5m java -cp ../mkgmap/dist/mkgmap.jar uk.me.parabola.mkgmap.reader.osm.boundary.BoundaryPreprocessor northeast-boundaries.o5m bounds/
java -jar ../mkgmap/dist/mkgmap.jar \ --gmapsupp \ --mapname=20355490 \ --description="Northeast United States" \ --country-name="United States" \ --country-abbr=US \ --region-name="Northeast" \ --region-abbr=NE \ --index \ --location-autofill=nearest \ --housenumbers \ --route \ --add-pois-to-areas \ --bounds=bounds \ --add-pois-to-areas \ --process-destination \ --process-exits \ *.osm.pbf
I've loaded the result onto my Garmin Nuvi. When I attempt to do an address search, it first asks me for the City, but the cities I'm looking for don't show up in the search. Oddly, when it shows the closest cities I can see some of them, but when I do a text search it shows distant oddballs. For example, with 'New York', I see: New York, FL New York, TX New York Mills, MN
None of these are the New York I'm looking for. I don't even think they are in my input file, but are perhaps coming from the internal memory on my GPS.
It does appear the NYC addresses are working better - I can see the Bronx Zoo is in The Bronx and Carnegie Hall is in New York, however, I can't key in an address to see if it works because of the address search issue.
Another thing which has me puzzled is why some POIs are not showing the city/state. For example Desert Moon Grille <http://www.openstreetmap.org/node/3139391561> is in Danbury <http://www.openstreetmap.org/way/33271879>, Connecticut. I can find it doing a Food POI search. That works fine. But, when I select it, it shows "Not_set, Fairfield County". Nomination gets the address perfect: Desert Moon Fresh Mexican Grille, 113, Mill Plain Road, Danbury, Fairfield County, Connecticut, United States of America <http://www.openstreetmap.org/node/3139391561> . I'm compiling my own bounds file, so I'm surprised it hasn't worked.
Brian
_______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev _______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev

Hi Brian, I see. I fear the meanings of the --country-xxx options are not well documented. If I got it right, they have an influence on the address search indexes, but they have no meaning for the rules in the style. Maybe your problem could be solved with an additional line in the address rule. Something like this mkgmap:admin_level5='New York City' & mkgmap:admin_level2!=* { set mkgmap:admin_level2='USA' } as a first line in inc/address. Another option would be to change the LocationHook to optionally use the values given with --country-xxx to fill the mkgmap:admin_level2 tag. Gerd From: brianegge@gmail.com Date: Thu, 30 Oct 2014 02:38:17 +0000 To: mkgmap-dev@lists.mkgmap.org.uk Subject: Re: [mkgmap-dev] Building northeast map Thanks Gerd, I've been adding/fixing city boundaries in my area, so I'm trying to create my own bounds file. If an admin_level2 can't be found, does it use the --country-abbr option? Brian On Wed Oct 29 2014 at 3:28:37 AM Gerd Petermann <gpetermann_muenchen@hotmail.com> wrote: Hi Brian, I think your problem is caused by the fact that your input file doesn't contain the boundary for the USA. That's the reason for the --bounds option, the typical use is to download the boundaries for planet from e.g. http://www.mkgmap.org.uk/download/mkgmap.html If you want to create your own bounds file, you should make sure to have complete continents. The style rules in the inc/address file expect that mkgmap:admin_level2=USA but this will not happen if the bounds file doesn't contain enough of the boundary. Gerd From: brianegge@gmail.com Date: Wed, 29 Oct 2014 01:53:28 +0000 To: mkgmap-dev@lists.mkgmap.org.uk Subject: [mkgmap-dev] Building northeast map I've built my own gmappsup for the US Northeast and loaded it into my Garmin. My script for doing so is roughly as follows: [[ us-northeast-latest.osm.bz2 -nt northeast.om5 ]] && bzcat us-northeast-latest.osm.bz2 | ../osmconvert/osmconvert - -o=northeast.om5[[ northeast.om5 -nt northeast-boundaries.o5m ]] && ../osmfilter/osmfilter northeast.om5 --keep-nodes= --keep-ways-relations="boundary=administrative =postal_code postal_code=" -o=northeast-boundaries.o5mjava -cp ../mkgmap/dist/mkgmap.jar uk.me.parabola.mkgmap.reader.osm.boundary.BoundaryPreprocessor northeast-boundaries.o5m bounds/ java -jar ../mkgmap/dist/mkgmap.jar \ --gmapsupp \ --mapname=20355490 \ --description="Northeast United States" \ --country-name="United States" \ --country-abbr=US \ --region-name="Northeast" \ --region-abbr=NE \ --index \ --location-autofill=nearest \ --housenumbers \ --route \ --add-pois-to-areas \ --bounds=bounds \ --add-pois-to-areas \ --process-destination \ --process-exits \ *.osm.pbf I've loaded the result onto my Garmin Nuvi. When I attempt to do an address search, it first asks me for the City, but the cities I'm looking for don't show up in the search. Oddly, when it shows the closest cities I can see some of them, but when I do a text search it shows distant oddballs. For example, with 'New York', I see:New York, FLNew York, TXNew York Mills, MN None of these are the New York I'm looking for. I don't even think they are in my input file, but are perhaps coming from the internal memory on my GPS. It does appear the NYC addresses are working better - I can see the Bronx Zoo is in The Bronx and Carnegie Hall is in New York, however, I can't key in an address to see if it works because of the address search issue. Another thing which has me puzzled is why some POIs are not showing the city/state. For example Desert Moon Grille is in Danbury, Connecticut. I can find it doing a Food POI search. That works fine. But, when I select it, it shows "Not_set, Fairfield County". Nomination gets the address perfect: Desert Moon Fresh Mexican Grille, 113, Mill Plain Road, Danbury, Fairfield County, Connecticut, United States of America . I'm compiling my own bounds file, so I'm surprised it hasn't worked. Brian _______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev _______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev _______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev

Hi,
I fear the meanings of the --country-xxx options are not well documented.
I have once tried to find what are they for but failed. I would suggest to not use --country-xxx or --region-xxx in command line options. I think the real definitions are inside style, see include/address file: # United States mkgmap:country=USA & mkgmap:region!=* & mkgmap:admin_level4=* { set mkgmap:region='${mkgmap:admin_level4}' } I think that setting country or region in options can damage these rules. Or create some inconsistency in map. -- Best regards, Andrzej

On Thu Oct 30 2014 at 6:24:48 AM Andrzej Popowski <popej@poczta.onet.pl> wrote:
Hi,
I fear the meanings of the --country-xxx options are not well documented.
I have once tried to find what are they for but failed. I would suggest to not use --country-xxx or --region-xxx in command line options. I think the real definitions are inside style, see include/address file: # United States mkgmap:country=USA & mkgmap:region!=* & mkgmap:admin_level4=* { set mkgmap:region='${mkgmap:admin_level4}' }
I think that setting country or region in options can damage these rules. Or create some inconsistency in map.
-- Best regards, Andrzej _______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev

Looking closer, I think it should be able to pick up the country from the is_in:country tag, which is often set on cities and states. The address rules contain: # first set the country code mkgmap:country!=* & mkgmap:admin_level2=* { set mkgmap:country='${mkgmap:admin_level2}' } mkgmap:country!=* & addr:country=* { set mkgmap:country='${addr:country}' } mkgmap:country!=* & is_in:country=* { set mkgmap:country='${is_in:country}' } An example city is Danbury: http://www.openstreetmap.org/way/33271879 which has the country set: is_in:country <http://wiki.openstreetmap.org/wiki/Key:is%20in:country?uselang=en-US>USA is_in:country_code <http://wiki.openstreetmap.org/wiki/Key:is%20in:country%20code?uselang=en-US> US I think it should be picking up the country from these tags. I'll have to run some tests to see why this isn't happening. Thanks. Brian On Thu Oct 30 2014 at 8:23:54 AM Brian Egge <brianegge@gmail.com> wrote:
On Thu Oct 30 2014 at 6:24:48 AM Andrzej Popowski <popej@poczta.onet.pl> wrote:
Hi,
I fear the meanings of the --country-xxx options are not well documented.
I have once tried to find what are they for but failed. I would suggest to not use --country-xxx or --region-xxx in command line options. I think the real definitions are inside style, see include/address file: # United States mkgmap:country=USA & mkgmap:region!=* & mkgmap:admin_level4=* { set mkgmap:region='${mkgmap:admin_level4}' }
I think that setting country or region in options can damage these rules. Or create some inconsistency in map.
-- Best regards, Andrzej _______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev

Hi Brian, yes, looks good to me. If it doesn't work, maybe you did not use the --style-file option to point mkgmap to this version? I had those problems when changing a style file in the sources because my Eclipse environment still used the files in the previously built mkgmap.jar. Gerd From: brianegge@gmail.com Date: Thu, 30 Oct 2014 12:30:02 +0000 To: mkgmap-dev@lists.mkgmap.org.uk Subject: Re: [mkgmap-dev] Building northeast map Looking closer, I think it should be able to pick up the country from the is_in:country tag, which is often set on cities and states. The address rules contain:# first set the country codemkgmap:country!=* & mkgmap:admin_level2=* { set mkgmap:country='${mkgmap:admin_level2}' }mkgmap:country!=* & addr:country=* { set mkgmap:country='${addr:country}' }mkgmap:country!=* & is_in:country=* { set mkgmap:country='${is_in:country}' } An example city is Danbury:http://www.openstreetmap.org/way/33271879which has the country set:is_in:countryUSAis_in:country_codeUSI think it should be picking up the country from these tags. I'll have to run some tests to see why this isn't happening. Thanks.Brian On Thu Oct 30 2014 at 8:23:54 AM Brian Egge <brianegge@gmail.com> wrote: On Thu Oct 30 2014 at 6:24:48 AM Andrzej Popowski <popej@poczta.onet.pl> wrote: Hi,
I fear the meanings of the --country-xxx options are not well
documented.
I have once tried to find what are they for but failed. I would suggest to not use --country-xxx or --region-xxx in command line options. I think the real definitions are inside style, see include/address file: # United States mkgmap:country=USA & mkgmap:region!=* & mkgmap:admin_level4=* { set mkgmap:region='${mkgmap:admin_level4}' } I think that setting country or region in options can damage these rules. Or create some inconsistency in map. -- Best regards, Andrzej _______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev _______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev

Hi Gerd, I found the first issue why so many cities were missing. It turns out in my area many boundaries contain 'place_name' instead of 'name'. Examples: http://overpass-turbo.eu/s/5HL I realize I could add this tag to name-tag-list, but i think it would be better to have it searched as a last resort. Thus, I propose the following patch: Index: src/uk/me/parabola/mkgmap/reader/osm/boundary/BoundaryLocationPreparer.java =================================================================== --- src/uk/me/parabola/mkgmap/reader/osm/boundary/BoundaryLocationPreparer.java (revision 3341) +++ src/uk/me/parabola/mkgmap/reader/osm/boundary/BoundaryLocationPreparer.java (working copy) @@ -69,6 +69,9 @@ int admLevel = getAdminLevel(tags); boolean isISO = false; String name = getName(tags); + if (name == null) { + log.warn("No name found for boundary", tags); + } if (locator != null){ if (admLevel == 2) { String isoCode = locator.addCountry(tags); @@ -142,6 +145,11 @@ } return nameParts[0].trim().intern(); } + String place_name = tags.get("place_name"); + if (place_name != null) { + log.warn("Boundry has controversial place_name:", place_name, tags, "http://wiki.openstreetmap.org/wiki/Proposed_features/drop_recommendation_for... <http://wiki.openstreetmap.org/wiki/Proposed_features/drop_recommendation_for_place_name>"); + return place_name; + } return null; } Secondly, while I don't have a complete admin_level2 in my boundary file, most city, county and state boundaries contain is_in tags. For example, Danbury (http://www.openstreetmap.org/way/33271879 <http://www.openstreetmap.org/way/33271879>), contains is_in:country <http://wiki.openstreetmap.org/wiki/Key:is%20in:country?uselang=en-US> USA is_in:state <http://wiki.openstreetmap.org/wiki/Key:is%20in:state?uselang=en-US> Connecticut With these tags, I should be able to set state and country information even if I don't have those boundaries explicitly loaded. I was thinking this extra information could be added to the BoundaryLocationInfo class, much like how the zip code is today. What do you think about that approach? Brian
On Oct 30, 2014, at 4:00 AM, Gerd Petermann <gpetermann_muenchen@hotmail.com> wrote:
Hi Brian,
I see. I fear the meanings of the --country-xxx options are not well documented. If I got it right, they have an influence on the address search indexes, but they have no meaning for the rules in the style.
Maybe your problem could be solved with an additional line in the address rule. Something like this mkgmap:admin_level5='New York City' & mkgmap:admin_level2!=* { set mkgmap:admin_level2='USA' } as a first line in inc/address.
Another option would be to change the LocationHook to optionally use the values given with --country-xxx to fill the mkgmap:admin_level2 tag.
Gerd
From: brianegge@gmail.com Date: Thu, 30 Oct 2014 02:38:17 +0000 To: mkgmap-dev@lists.mkgmap.org.uk Subject: Re: [mkgmap-dev] Building northeast map
Thanks Gerd,
I've been adding/fixing city boundaries in my area, so I'm trying to create my own bounds file. If an admin_level2 can't be found, does it use the --country-abbr option?
Brian

Hi Brian, reg. your patch: I don't understand why you think that this works better than adding place_name to the end of the name-tag-list. It seems to have the same effect, but would be hard-coded? Reg. is_in:country and is_in:state: I don't understand what change you have in mind. Do you want to fill fields like mkgmap:admin_level2 using the values given in is_in:country if the value would be null else? Gerd From: brianegge@gmail.com Date: Fri, 31 Oct 2014 00:10:56 -0400 To: mkgmap-dev@lists.mkgmap.org.uk Subject: Re: [mkgmap-dev] Building northeast map Hi Gerd, I found the first issue why so many cities were missing. It turns out in my area many boundaries contain 'place_name' instead of 'name'. Examples: http://overpass-turbo.eu/s/5HL I realize I could add this tag to name-tag-list, but i think it would be better to have it searched as a last resort. Thus, I propose the following patch: Index: src/uk/me/parabola/mkgmap/reader/osm/boundary/BoundaryLocationPreparer.java===================================================================--- src/uk/me/parabola/mkgmap/reader/osm/boundary/BoundaryLocationPreparer.java (revision 3341)+++ src/uk/me/parabola/mkgmap/reader/osm/boundary/BoundaryLocationPreparer.java (working copy)@@ -69,6 +69,9 @@ int admLevel = getAdminLevel(tags); boolean isISO = false; String name = getName(tags);+ if (name == null) {+ log.warn("No name found for boundary", tags);+ } if (locator != null){ if (admLevel == 2) { String isoCode = locator.addCountry(tags);@@ -142,6 +145,11 @@ } return nameParts[0].trim().intern(); }+ String place_name = tags.get("place_name");+ if (place_name != null) {+ log.warn("Boundry has controversial place_name:", place_name, tags, "http://wiki.openstreetmap.org/wiki/Proposed_features/drop_recommendation_for_place_name");+ return place_name;+ } return null; } Secondly, while I don't have a complete admin_level2 in my boundary file, most city, county and state boundaries contain is_in tags. For example, Danbury (http://www.openstreetmap.org/way/33271879), contains is_in:countryUSAis_in:stateConnecticutWith these tags, I should be able to set state and country information even if I don't have those boundaries explicitly loaded. I was thinking this extra information could be added to the BoundaryLocationInfo class, much like how the zip code is today. What do you think about that approach? Brian On Oct 30, 2014, at 4:00 AM, Gerd Petermann <gpetermann_muenchen@hotmail.com> wrote: Hi Brian, I see. I fear the meanings of the --country-xxx options are not well documented. If I got it right, they have an influence on the address search indexes, but they have no meaning for the rules in the style. Maybe your problem could be solved with an additional line in the address rule. Something like this mkgmap:admin_level5='New York City' & mkgmap:admin_level2!=* { set mkgmap:admin_level2='USA' } as a first line in inc/address. Another option would be to change the LocationHook to optionally use the values given with --country-xxx to fill the mkgmap:admin_level2 tag. Gerd From: brianegge@gmail.com Date: Thu, 30 Oct 2014 02:38:17 +0000 To: mkgmap-dev@lists.mkgmap.org.uk Subject: Re: [mkgmap-dev] Building northeast map Thanks Gerd, I've been adding/fixing city boundaries in my area, so I'm trying to create my own bounds file. If an admin_level2 can't be found, does it use the --country-abbr option? Brian _______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev

Hi Gerd, I hard coded it so the program could raise a warning. From what I've read, the tag is depreciated. However, maybe we don't need another warning in mkgmap? If so, I would suggest adding it to the default name tag list. Regarding the second item, I built a map using these tags, and address information is much more complete (for me). I'll work on cleaning it up into a patch. Brian On Fri, Oct 31, 2014 at 5:11 AM Gerd Petermann < gpetermann_muenchen@hotmail.com> wrote:
Hi Brian,
reg. your patch: I don't understand why you think that this works better than adding place_name to the end of the name-tag-list. It seems to have the same effect, but would be hard-coded?
Reg. is_in:country and is_in:state: I don't understand what change you have in mind. Do you want to fill fields like mkgmap:admin_level2 using the values given in is_in:country if the value would be null else?
Gerd
------------------------------ From: brianegge@gmail.com Date: Fri, 31 Oct 2014 00:10:56 -0400
To: mkgmap-dev@lists.mkgmap.org.uk Subject: Re: [mkgmap-dev] Building northeast map
Hi Gerd,
I found the first issue why so many cities were missing. It turns out in my area many boundaries contain 'place_name' instead of 'name'. Examples: http://overpass-turbo.eu/s/5HL
I realize I could add this tag to name-tag-list, but i think it would be better to have it searched as a last resort. Thus, I propose the following patch:
Index: src/uk/me/parabola/mkgmap/reader/osm/boundary/BoundaryLocationPreparer.java =================================================================== --- src/uk/me/parabola/mkgmap/reader/osm/boundary/BoundaryLocationPreparer.java (revision 3341) +++ src/uk/me/parabola/mkgmap/reader/osm/boundary/BoundaryLocationPreparer.java (working copy) @@ -69,6 +69,9 @@ int admLevel = getAdminLevel(tags); boolean isISO = false; String name = getName(tags); + if (name == null) { + log.warn("No name found for boundary", tags); + } if (locator != null){ if (admLevel == 2) { String isoCode = locator.addCountry(tags); @@ -142,6 +145,11 @@ } return nameParts[0].trim().intern(); } + String place_name = tags.get("place_name"); + if (place_name != null) { + log.warn("Boundry has controversial place_name:", place_name, tags, " http://wiki.openstreetmap.org/wiki/Proposed_features/drop_recommendation_for... "); + return place_name; + }
return null; }
Secondly, while I don't have a complete admin_level2 in my boundary file, most city, county and state boundaries contain is_in tags. For example, Danbury (http://www.openstreetmap.org/way/33271879), contains is_in:country <http://wiki.openstreetmap.org/wiki/Key:is%20in:country?uselang=en-US>USA is_in:state <http://wiki.openstreetmap.org/wiki/Key:is%20in:state?uselang=en-US> Connecticut With these tags, I should be able to set state and country information even if I don't have those boundaries explicitly loaded. I was thinking this extra information could be added to the BoundaryLocationInfo class, much like how the zip code is today. What do you think about that approach?
Brian
On Oct 30, 2014, at 4:00 AM, Gerd Petermann < gpetermann_muenchen@hotmail.com> wrote:
Hi Brian,
I see. I fear the meanings of the --country-xxx options are not well documented. If I got it right, they have an influence on the address search indexes, but they have no meaning for the rules in the style.
Maybe your problem could be solved with an additional line in the address rule. Something like this mkgmap:admin_level5='New York City' & mkgmap:admin_level2!=* { set mkgmap:admin_level2='USA' } as a first line in inc/address.
Another option would be to change the LocationHook to optionally use the values given with --country-xxx to fill the mkgmap:admin_level2 tag.
Gerd
------------------------------ From: brianegge@gmail.com Date: Thu, 30 Oct 2014 02:38:17 +0000 To: mkgmap-dev@lists.mkgmap.org.uk Subject: Re: [mkgmap-dev] Building northeast map
Thanks Gerd,
I've been adding/fixing city boundaries in my area, so I'm trying to create my own bounds file. If an admin_level2 can't be found, does it use the *--country-abbr *option?
Brian
_______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev _______________________________________________ mkgmap-dev mailing list mkgmap-dev@lists.mkgmap.org.uk http://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
participants (3)
-
Andrzej Popowski
-
Brian Egge
-
Gerd Petermann