les-anatoliy
@les-anatoliy

Как сформировать общий polygon имея несколько соседних?

Доброго времени суток всем!

Может кто сталкивался с задачей/решением вопроса объединения polygon-ов координат?
задача такая, имея N-кол-во полигонов объединить их в один общий, например:
Имея вот такие несколько полигонов
64be0b48bbb68012464443.png

Объединить их в один общий, примерно так:
64be0bb4546a3991923555.png

Простите за корявую обводку, но суть примера думаю понятна)
Может есть какие библиотеки на PHP или на GO
  • Вопрос задан
  • 127 просмотров
Пригласить эксперта
Ответы на вопрос 1
Enokin
@Enokin
Full-stack разработчик
На счет php не сталкивался с такой проблемой, но на js можно сделать с помощью библиотеки turfjs

let turf = require('@turf/turf');

let polygon1 = turf.polygon([[[0,0], [0,1], [1,1], [1,0], [0,0]]]);
let polygon2 = turf.polygon([[[0.5,0.5], [0.5,1.5], [1.5,1.5], [1.5,0.5], [0.5,0.5]]]);
// С помощью booleanIntersects можно понять что есть пересечения полигонов
if (turf.booleanIntersects(polygon1, polygon2)) {
    let merged = turf.union(polygon1, polygon2);
    console.log(merged)
} else {
    console.log('Полигоны не пересекаются');
}
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы