diff --git a/request.py b/request.py index d5cea46c7922be84f0d2215df53f92aa15c42b8e..5ee619bcad279af22b6ab0cb75c933ccecde66f6 100644 --- a/request.py +++ b/request.py @@ -22,11 +22,11 @@ def requete_osm(lat, lon): # Driver function if __name__=="__main__": # coordinates =[49.15,2.325] -# intersection : 48.711889 2.161818 48.895251, 2.247097 48.895038, 2.247522 +# intersection : 48.895307, 2.247367 48.894596, 2.247958 48.853994, 2.247177 48.894998, 2.247467 #g = geocoder.osm([48.89, 2.247], method='reverse') params = { - 'lat':48.895038, - 'lon':2.247522, + 'lat':48.894998, + 'lon':2.247467, 'format':'json', 'zoom': 17, 'polygon_geojson' : 1 @@ -34,4 +34,4 @@ if __name__=="__main__": req = requests.get("https://nominatim.openstreetmap.org/reverse",params) reqJson = req.json() - print(reqJson['geojson']['coordinates']) \ No newline at end of file + print(reqJson) #['geojson']['coordinates'] \ No newline at end of file diff --git a/research.py b/research.py new file mode 100644 index 0000000000000000000000000000000000000000..fc827f6464bbe393bbfdf78aed0bfa1f78c70741 --- /dev/null +++ b/research.py @@ -0,0 +1,36 @@ +from request import requete_osm +from math import sqrt + +def circular_research(lat, lon, main_street): + street = requete_osm(lat, lon)['address']['road'] + if not(street == main_street): + return street + step = 10**(-5) + while step < 10**(-4): + for i in range(8): + street = check_position(lat, lon, step, main_street, i) + if not(street == main_street): + return street + step += 10**(-5) + return None + +def check_position(lat, lon, step, main_street, i): + street = '' + step_diag = step/sqrt(2) + if i == 0: + street = requete_osm(lat+step, lon)['address']['road'] + elif i == 1: + street = requete_osm(lat+step_diag, lon+step_diag)['address']['road'] + elif i == 2: + street = requete_osm(lat, lon+step)['address']['road'] + elif i == 3: + street = requete_osm(lat-step_diag, lon+step_diag)['address']['road'] + elif i == 4: + street = requete_osm(lat-step, lon)['address']['road'] + elif i == 5: + street = requete_osm(lat-step_diag, lon-step_diag)['address']['road'] + elif i == 6: + street = requete_osm(lat, lon-step)['address']['road'] + elif i == 7: + street = requete_osm(lat+step_diag, lon-step_diag)['address']['road'] + return street