Closed zibik closed 9 years ago
To co można robić, co wydaje się całkiem bezpieczne, to zaciągnąć admin_level=8 dla obszaru, a następnie dla adresów które nie mają addr:city, uzupełniać je z name relacji, w ramach której się znajdują, a do tego przy okazji przykleić jakieś fixme.
Niestety, punkty które nie znajdą się w granicy jakiegoś miasta będą miały ten sam problem co obecnie.
To co jest w tej chwili zaimplementowane, to w przypadku gdy adresy są w odległości mniejszej niż dwa metry, mają ten sam addr:housenumber, oraz zgadzają się na poziomie nazwy miasta - to dane punktu są aktualizowane.
Co można dodać, to by w przypadku, gdy na punkcie obecnym w OSM nie ma nazwy miasta, natomiast zgadza się nazwa ulicy, to by aktualizować nazwę miasta, tak samo jak powyżej.
Dla Piastowa przy takim algorytmie generowane jest o 2000 mniej zmian.
Jest błąd po tej zmianie:
WARNING:main.Merger:Changing street name from mjr Waleriana Łukasińskiego in import to Majora Waleriana Łukasińskiego as in OSM (way:196520744), distance=4.28m
Traceback (most recent call last):
File "./merger.py", line 781, in
Weźmy dla przykładu wdrożenie piastow.e-mapa.net Dawno temu balrog-kun zrobił import adresów w tym mieście, jednak do importowanych adresów świadomie nie dodał addr:city=Piastów. Efekt tego teraz jest taki, że robiąc ./merger.py --impa piastow, skrypt oznacza stare adresy jako fixme=Check address existance i chce importować nowe. Jednym słowem, wielki bałagan zupełnie nienadający się do wysłania na serwer. Pytanie brzmi czy nie dałoby się, żeby skrypt sprawdzał koordy + pozostałe tagi i w przypadku wystąpienia pewnej zgodności stary adres zostałby uzupełniony danymi z nowego adresu (czyli addr:city, addr:teryt:simc) + jakieś fixme?