Opened 10 years ago
Last modified 3 years ago
#1005 new defect/bug
Streets in suburbs can't be found
Reported by: | nailix1 | Owned by: | KaZeR |
---|---|---|---|
Priority: | major | Milestone: | version 0.6.0 |
Component: | core | Version: | git master |
Severity: | normal | Keywords: | search, suburb, places |
Cc: | sebastian.leske@…, http://wiki.navit-project.org/index.php/user:usul |
Description
Streets in suburbs of big citys can't be found. The name of the suburb is necessary but seldom known.
I previousliy used WeTravel?. This provided the function "search more", which searched the streetname in the next - puh, don't know - perhaps 15 "locations" around.
This was a very useful feature.
Change History (15)
comment:1 Changed 10 years ago by tryagain
comment:2 Changed 10 years ago by nailix1
Great tip. Thank you very much.
comment:3 Changed 10 years ago by sleske
Could you provide an example of a street that cannot be found (or better, several examples)? Please also state where you got the map from. Without that, we can't investigate the problem.
comment:4 Changed 10 years ago by nailix1
For example: Barlachstraße in Nürnberg (Germany) ( http://www.openstreetmap.org/?lat=49.37348&lon=11.08059&zoom=16&layers=M )
This street is located in an suburb of Nürnberg called "Herpersdorf".
But Herpersdorf belongs to Nürnberg and officially the adresse is called Barlachstraße in Nürnberg.
Map comes frome the Planet Extractor (http://maps9.navit-project.org/)
comment:5 Changed 10 years ago by sleske
- Cc sebastian.leske@… added
Thanks for the test case. I cannot look into it right now, but I'll try to get to it. Can't promise anything though...
comment:6 Changed 10 years ago by sleske
This is probably because Navit at present does not really use the exact area of a city; it just approximates a city by a circle, whose size depends on the size of the city. So streets on the outskirts are sometimes not found. I'll try to look at the problem more closely, but I suspect this is the problem.
comment:7 Changed 10 years ago by sleske
I have checked this problem, and it is indeed caused by Navit's approximation of city/town sizes. In binfile.c:binmap_search_street_by_estimate() , large cities get an estimated size of 10,000 (metres, I think). If I increase this to e.g. 13,000, Navit finds the Barlachstraße in Nürnberg.
I believe this problem has been discussed before; to solve it Navit would have to use the actual area/borders of cities, which is not yet implemented.
Also see #794 for a related problem.
comment:8 Changed 9 years ago by usul
- Cc http://wiki.navit-project.org/index.php/user:usul added
I can confirm your issue for current SVN5532 and current OSM mapset this issue still accurs for your example "Nürnberg, Barlachstraße".
As others already pointed out, this is due the hierachial index that maptool creates and how it determines this hierachies. For OSM this can be addr:city=* tags or boundary relations. We need to investigate, how we might optimize this aspect.
comment:9 Changed 9 years ago by usul
- Keywords places added; street removed
- Milestone changed from version 0.5.0 to version 0.5.1
- Type changed from enhancement/feature request to defect/bug
As this is a essential feature and the bug will cause that users will don't find their way, I assign it to the new hotfix release.
comment:10 Changed 9 years ago by tryagain
Usul,
I have got expected search results for Nurnberg, Barlachstraße with svn5539 and today (130710) map.
May be you were testing with wrong Nurnberg? I was using Nurnberg with postal code of 90403 and found Barlachstrasse.
I think the sample problem was actually solved in February-March, 2013.
The function "search more", as suggested in ticket description, could be a useful feature in some cases, like the one described in #562. But we have the POI filter workaround for that.
tryagain.
comment:11 Changed 9 years ago by rico (2)
- Severity set to normal
I have a similar problem with districts in municipalities in Germany.
For example, i cant find street "Blumenstraße" in village Güngräbchen. http://www.openstreetmap.org/#map=18/51.35570/13.97580
Grüngräbchen is a district of Schwepnitz, which is a village and municipality with admin_level=8. I can't find neither village Grüngräbchen nor Blumenstraße in Schwepnitz.
And, as a local stranger I don't know Grüngräbchen is a district of Schwepnitz.
Edit: With Maps from Planet Extractor it works, but not with selfmade maps from geofrabrik.de extracts.
Rico
comment:12 Changed 9 years ago by tryagain
What geofabric.de extract do you use? It should contain complete DE boundary for search to work.
If you want to use a smaller region extract, please feed your extract to maptool together with contents of 51477 (DE boundary) relation:
cat relation-51477.osm your-extract.osm | maptool mapfile.bin
relation-51477.osm should contain relation itself, all ways it references, and all nodes of that ways. It may be downloaded with JOSM.
We even have this information on wiki, see https://wiki.navit-project.org/index.php/OpenStreetMap#Convert_OSM_data_to_Navit_binfile. Should we add more details there?
comment:13 Changed 9 years ago by rico (2)
That was the problem. Downloaded region was only Saxony and Germanys boundary relation wasn't complete. I think, that should be mentioned in the wiki.
comment:14 Changed 5 years ago by http://wiki.navit-project.org/index.php/user:jkoan
- Milestone changed from version 0.5.1 to version 0.5.2
This ticket was pushed back in order to bring 0.5.1 out soon.
comment:15 Changed 3 years ago by http://wiki.navit-project.org/index.php/user:jkoan
- Milestone changed from version 0.5.2 to version 0.6.0
Ticket retargeted after milestone closed
This currently can be done with the POI search filter. So you can look for objects by their name within given distance from the given point.
Though generic search should be improved in above way.