Объединить сетевую геометрию и топологию в python - PullRequest
0 голосов
/ 02 марта 2019

Сначала я опишу главное, чего хочу достичь.У меня есть набор пространственных данных (шейп-файл многоугольника), который мне нужен для триангуляции, создания двойного графа триангуляции и применения некоторых алгоритмов, таких как A * и поиска в глубину на двойном графе.

Я создал триангуляцию в программном обеспечении ГИС (FME), которую я хочу обработать в python, чтобы получить двойной граф и применить вышеупомянутые алгоритмы.

Мой вопрос заключается в том, как сохранить геометрию и топологию триангуляции, чтобы обрабатывать ее с помощью Python.Здесь вы можете найти скриншот части моего полигона, триангулированного polygon_triangulation_image

Ответы [ 2 ]

0 голосов
/ 11 марта 2019

Я выяснил возможное решение.Я использовал библиотеку tri , которая принимает в качестве входных данных шейп-файл и записывает выходные данные триангуляции в файл wkt вместе с информацией о смежности для каждого треугольника.Структура данных, используемая для хранения смежности, указана как CGAL .Результат работы библиотеки tri работает лучше, чем scipy Delaunay, поскольку он также принимает в качестве ограничений ребра полигонов.Tri в настоящее время работает с Python 2.

0 голосов
/ 02 марта 2019

Вы можете реализовать его в Четырехгранном потоке данных .Это представляет как граф, так и его дуал, а также справедливо для каждой вершины, в которой он находится.Но на самом деле я не уверен, существует ли для этого пакет на python или вам нужно реализовать его самостоятельно.

...