Страница 1 из 1
Номера тайлов по полигону
Добавлено: 16 июл 2017, 17:59
ANAT01
Как получить список номеров тайлов на которые попадает полигон (не bbox, а по границе полигона)?
Тут в принципе написано про пересчет lat,long но как пройтись по границе?!
Re: Номера тайлов по полигону
Добавлено: 16 июл 2017, 20:40
Александр Мурый
Может быть,
код из плагина Tile Cover сможет помочь?
Re: Номера тайлов по полигону
Добавлено: 17 июл 2017, 11:08
Zverik
pip install polytiles
polytiles -p polygon.poly -x tiles.lst -z minzoom maxzoom
Re: Номера тайлов по полигону
Добавлено: 17 июл 2017, 18:36
ANAT01
Спасибо!!! А то я уж думал штудировать shapely/fiona и алгоритмы, снились кошмары и пробивал пот.
Для полноты картины:
- Для работы polytiles нужен файл в формате
Osmosis polygon filter file format.
- poly умеют готовить
несколько скриптов, я выбрал ogr2poly.py
Код: Выделить всё
# готовим окружение
virtualenv venv
. ./venv/bin/activate
pip install mapnik
pip install polytiles
# готовим poly
python ogr2poly.py mypolygon.geojson
# готовим список тайлов
polytiles -p mypolygon_0.poly -x tiles.lst -z 19 20
Результат еще не успел проверить...
PS:
Александр Мурый писал(а):Может быть,
код из плагина Tile Cover сможет помочь?
Он делает по bbox. В принципе так можно делать, а потом находить пересечение с заданной фигурой, но это не совсем то что нужно.
UPD:
Проверил визуально
Здесь построена сетка тайлов с помощью Tile Cover и слинкована с таблицей polytiles. "Пересечение" данных выделено желтым.