Как поделить пространство на сетку треугольников (граф)? Здравствуйте!
Есть область писелей. Мне нужно построить граф путей по этой области. То есть разделить все пространство на треугольники и вершины записать в граф.
Какие алгоритмы можно использовать для такой задачи? (Если важно, пишу на питоне)

21 Авг 2019 в 06:07
223 +1
0
Ответы
1

Привет! Для построения сетки треугольников на области пикселей можно использовать алгоритм триангуляции Делоне. В Python для этой задачи можно воспользоваться библиотекой scipy, которая содержит функции для триангуляции.

Вот пример кода, который позволяет сгенерировать сетку треугольников на области пикселей:

import numpy as np
from scipy.spatial import Delaunay
# Задаем координаты вершин пикселей
points = np.array[[0,0],[0,1],[1,0],[1,1],[0.5,0.5]][[0, 0], [0, 1], [1, 0], [1, 1], [0.5, 0.5]][[0,0],[0,1],[1,0],[1,1],[0.5,0.5]]
# Строим триангуляцию Делоне
tri = Delaunaypointspointspoints
# Получаем вершины треугольников
triangles = tri.pointstri.simplicestri.simplicestri.simplices
# Для каждого треугольника получаем его вершины
for triangle in triangles:
printtriangletriangletriangle

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

20 Апр 2024 в 13:23
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир