Алгоритм выбора всех соседних полигонов - PullRequest
0 голосов
/ 27 июня 2018

Я пытаюсь выбрать все соседние полигоны в mapbox gl с помощью turf.js. Я использую

turf.intersect(poly[0], item);

И иногда это нормально, но похоже, что данные входных полигонов плохие, и похоже, что есть некоторые промежутки между координатами соседних полигонов (соседние точки lat / lon не совпадают или мультиполигоны), поэтому есть любой другой алгоритм, чтобы получить соседние полигоны? enter image description here

1 Ответ

0 голосов
/ 31 августа 2018

Это работает как надо. Причина, по которой он не выбирает указанный выше полигон, заключается в том, что он является , а не соседом (из-за неправильной геометрии и т. Д.).

Способом обойти эту плохую геометрию будет буфер полигона небольшим количеством, а затем пересечение с использованием немного большего буферного слоя, который будет перекрывать промежутки между вашими существующими полигонами.

...