Можно ли найти координаты дорог вне населенных пунктов

Здравствуйте. Я ученик 10 класса и у меня появилась идея для квалификационной работы.
Недавно в Украине приняли новые ПДД. Достаточно серьезным новшеством является необходимость включения ближнего света вне города с октября по май.
Для облегчения жизни водителя я хочу разработать устройство, которое бы в зависимости от даты и расположения автомобиля включало или выключало свет. С технической стороны будет использоваться платформа Arduino с GPS-приемником.
Единственное, что мне необходимо - это список координат, где автомобилистам следует включать свет. То есть это должны быть любые виды дорог, находящиеся вне населенных пунктов. На сколько я понял в Украине существует проблема с классификацией дорог.
Именно по этому мне необходима Ваша помощь или совет.
Заранее огромное спасибо.

наверно, вам нужны не координаты дорог, а координаты границ населенных пунктов. Таких есть у нас, но немного. Крупных городов - есть. В самом устройстве надо будет узнать свои координаты и проверить, не входят ли они в известные границы.

и вдобавок, пожалуй, предложу прицепить к устройству какой-то люксометр, чтоб полезнее было.
http://www.maplin.co.uk/automatic-car-lights-on-and-off-kit-257320 - вот как пример. GPS-функций, конечно, нет

и туннели определять в летнюю пору тоже :slight_smile:

Если не брать во внимания туннели, то и без люксометра можно обойтись. Для каждой точки в зависимости от даты можно высчитывать время захода/восхода солнца, и если текущее время находится внутри этого периода, то стоит включить свет. Получается такой пассивный датчик света. Хотя и датчик освещения легко прикрутить.

Что касается границ городов, то их проверка может оказаться очень сложной, ведь города имеют очень сложную форму

Вряд ли стоит заменять простое и надежное решение сложным и ненадежным.

Как раз здесь никакой сложности нет. Есть проблема, связанная с тем, что согласно ПДД границей населенного пункта считается граница застройки, а не административная граница соответствующего поселения.
Ну и плюс ко всему - знаки у нас нередко ставят, как Бог на душу положит.

Спасибо за совет, но проблема конечно не в этом.

Подскажите тогда, пожалуйста, как можно загрузить себе координаты границ городов.

Тебе нужны запросы “только для чтения” к базе. Это тебе даст xapi. Документация на английском, на русском может где-то и есть, не знаю.
Из xapi серверов на данный момент у меня открывается только один. Запрос у тебя будет что-то в таком духе:

http://www.overpass-api.de/api/xapi?relation[boundary=administrative][bbox=-77.041579,38.885851,-77.007247,38.900881]

Ну и неизбежно прийдется разбираться с отношениями и границами в частности.

Сам в этом не разбираюсь, может кто-то из более продвинутых тебе поможет больше.

Удачи с проектом.

А если все же искать трассы по тегу maxspeed? Можно ли быть уверенным, что все трассы имеют этот тег, или он не обязателен?

Спасибо

Нет, не все имеют этот тег. Он не является для трасс обязательным, но желательным.

Может быть так же такой случай, когда на границе населенного пункта трасса не разделяется на две линии (одна со стороны НП, другая присоединенная к ней, за границами НП), а продолжается от одного, скажем, перекрестка или другой точки соединения дорог до другого. Так что лучше анализировать на предмет нахождения текущего положения в пределах населенного пункта.

Здесь может помочь эта статья: http://ru.wikipedia.org/wiki/Задача_о_принадлежности_точки_многоугольнику

Спасибо. Алгоритм я уже придумал, но статья действительно интересная.

Разобрался и в этом. С помощью overpass turbo уже удалось получить координаты границ Днепропетровска.
Спасибо всем за помощь :slight_smile: