Abfrage zur Optimiierung einer Parisreise

Moin community

bin im Sommer mit einer groesseren Gruppe in einer Pariser Jugendherberge:

Sie ist in South Pigalle gelegen: BVJ OPÉRA-MONTMARTRE, 1 Rue de la Tour des Dames, 75009 Paris, Frankreich

Da sie lediglich ein Frühstück anbieten fragen wir uns wo wir noch ein relativ günstiges Abendessen in der Nähe (mehr oder weniger) des Hostels bekommen,

Das kann man sicher auch komplett mit OpenStreetmap angehen - etwa mit einer konzentrischen Suche rund um das Hostel:

Hier kann auch ggf. noch die ein oder anderer hilfreiche Kategorie mit in die OpenSteetmap-Abfrage mit einbauen.

Ich habe noch einen relativ alten (schlichten und einfachen) Ansatz bemüht - eine Suche nach günstigen Restaurants via Google - und
bin damit fündig geworden:

beim offiziellen Info-Büro für die Stadt Paris: die unten genannten Fundstellen verteilen sich über die ganze Stadt hinweg.

Frage: wie würdet ihr

a. generell vorgehen
b. die Suche in OpenStreetmap bewerkstelligen und
c. ggf. die unten gelisteten Fundstellen in einer Map darstellen, so dass ich die Distanzen darstellen kann…

wie wuerdet ihr vorgehen…

[Mod-Edit: Lange Trefferliste entfernt - tut nichts zur technischen Frage]

Hallo und guten Tag

also ich könnte es so ansetzen:

[out:csv(::id,::type,“name”,“addr:postcode”,“addr:city”,“addr:street”,“addr:housenumber”,“website”," contact:email=*")][timeout:300];
area[name=“paris”]->.a;
( node(area.a)[amenity=restaurant];
way(area.a)[amenity=restaurant];
rel(area.a)[amenity=restaurant];);
out;

hier müsste ich nur punktgenau die DATEN für das Hostel eintragen …
Sie ist in South Pigalle gelegen: BVJ OPÉRA-MONTMARTRE, 1 Rue de la Tour des Dames, 75009 Paris, Frankreich

aaaaaaaaaaaaaaaaaaa

ein Ansatz: zur Verarveitung der Daten wäre dieser…:

atitude: 
Longitude: 2.340607

function ren_filter($rec)
{
    $auberge = [48.887691, 2.340607];
    $maxdistance = 5; //(km)
    list($lat1, $long1) = $auberge;
    list($long2, $lat2) = $rec['geo'];
    return sqrt(pow(($lat1-$lat2),2) + pow(($long1-$long2),2))*111 <= $maxdistance;
}


#---------------------------------------------#
#   Process the data                          #
#---------------------------------------------#


$data = json_decode(get_data($url1), 1);                 // get the data

$auberge_data    = array_filter($data, 'auberge_filter');     // filter out the Rennes area data

#----------------------------------------------#
#   Output the two sets of data                #
#----------------------------------------------#
echo '<h3>auberge</h3><pre>';
printf('%-10s| %-45s|%8s<br><br>', 'Id', 'Name', 'Dist');
foreach ($auberge_data as $rec) {
    $auberge = [48.887691, 2.340607];
    list($lat1, $long1) = $rennes;
    list($long2, $lat2) = $rec['geo'];
    $dist = sqrt(pow(($lat1-$lat2),2) + pow(($long1-$long2),2))*111;
    printf('%-10d| %-45s|%8.2f<br>', $rec['id'], $rec['n'], $dist) ;
}

echo '</pre>';