Хотілося б детальніше обговорити цю тему. Останнім часом усе частіше використовують полігони для позначення доріг, і багато редакторів їх поєднують із загальною дорожньою мережею. Тобто, спочатку ми їдемо по ліннії, а потм по полігону. Як результат, деякі мої знайомі скаржаться на те, що "мапс.мі завів мене до тупику", "OSMand Maps ненормально прокладає маршрут" і так далі. Тому було прийняте суб'єктивне рішення — лінії залишаються лініями як окрема навігаційна сітка, а полігони — полігонами для позначення землекористування. Їх не потрібно з'єднувати.
І тут з'являються чудові аккаунти Lightcyphers, власник яких вважає по-іншому. І знову лінії і полігони змішалися в одне ціле.
Добре, давайте проясним
Для будування маршруту нам потрібен роутінговий граф, який саме і утворюють лінії, що представляють дороги (колії, велодоріжки й і т.д. - підставте потрібне). Полігональні об'єкти - дороги використовуються на масштабах 1:500 - 1:1000 для візуалізації та проведення господарської діяльності, оцінки вартості землі/робіт й тд
Будування маршрутів через полігони (коли в середині немає ліній, які з'єднують точки на гранях полігону) - це дуже нетрівіальний та ресурсновитратний процес, і я ще не бачив жодного роутингового алгоритму (рушія) який би міг це робити. На поточний момент можна зустріти два підходи для вирішення проблеми прокладання маршрутів через полігони: 1) прокладання маршруту по контуру полігона (ребра графу проходять по сторонах полігону); 2) викидання з роутінгового графу всіх нелінійних об'єктів, тобто алгоритми оминають такі ділянки і через них маршрут не прокладається
Для розв'язання цієї проблеми треба щоб в середині полігону були ребра рутінгового графу, які з'єднують "вхід" та "вихід", а мають чи не мають рутінгові лінії спільні точки з полігоном то вже справа десята (хоча ІМО їх краще мати)