GEOINT #121 - Проходная пешка
Фотография подозрительно напомнила стритвью, хотя водяных знаков гугла найти не удалось. Местность похожа на США, судя по пальмам, где-то в южном штате. Единственное, что необычно - голубой указатель названия дороги. В США обычно зелёные указатели.
Внимание привлекла мачта светофоров. Побродив по южным штатам, нашёл нечто похожее в Калифорнии, даже указатели синие.
Но там мачты совмещены с фонарём, поэтому надо искать дальше. Поискал мачту линзой и нашёл пост на реддите.
Вот он https://www.reddit.com/r/mildlyinteresting/comments/8w6yjy/weve_had_a_tropical_storm_and_the_tops_of_the/
А там ссылка на фото и указание, что фото было сделано на Гуаме.
Погулял по Гуаму, мачты прямо такие, но на них вообще нет указателей улиц.
Гуам находится в архипелаге Марианских островов, все они являются территорией США. Решил проверить другие острова архипелага. Стритвью было только на острове Сайпан, втором по численности населения после Гуама.
И на Сайпане я нашёл матчы с синими указателями, прямо как в задании.
Остров небольшой, можно было бы поискать руками. Но я это не люблю, а люблю автоматизацию. Поэтому написал скрипт для overpass, который приведу полностью ниже.
// Ищем на Северных Марианских островах (все кроме Гуама)
area[name="Northern Mariana Islands"]->.a;
// Это дорога, которая примыкает слева, раз сделали светофор,
// она вероятно не локальная.
way[highway~"^(trunk|primary|secondary|tertiary)quot;](area.a)->.left_ways;
// Перебираем найденные дороги.
foreach.left_ways->.left_way{
// Берём конечные узлы, чтобы нашлись в основном Т-образные перекрёстки.
(
node(w.left_way:1,1);
node(w.left_way:1,-1);
)->.left_way_end;
// На перекрёстке ищем светофор
node[highway=traffic_signals](around.left_way_end:10)->.sig;
// и отбираем только перекрёстки со светофором.
node.left_way_end(around.sig:10)->.left_way_end;
// Это дорога, примыкающая справа, там где знак STOP,
// метров 200 до неё не больше. Она как раз локальная.
way[highway~"^(residential|unclassified|service)quot;](around.left_way_end:200)->.right_ways;
// Также берём её конечные узлы (Т-образные перекрёстки).
(
node(w.right_ways:1,1);
node(w.right_ways:1,-1);
)->.right_ways_end;
// Ищем связанные перекрёстком дороги с первой
way(bn.left_way_end)->.left_linked_ways;
// и со второй дорогами.
way(bn.right_ways_end)->.right_linked_ways;
// Берём пересечение найденных дорог, так как это должна быть одна и
// та же дорога, она не локальная, но и не выделенная трасса (motorway).
// Односторонняя, так как потоки разделены.
way.left_linked_ways.right_linked_ways[highway~"^(trunk|primary|secondary|tertiary)quot;][oneway=yes]->.linked_ways;
// И показываем искомый перекрёсток на карте.
node(w.linked_ways)->.linked_ways_nodes;
node.linked_ways_nodes.left_way_end;
out;
}
Скрипт выдал несколько точек, все на о. Сайпан, которые легко было проверить руками. Одна из них была искомой.
А фотография действительно оказалась скрином стритвью.