Преобразование нескольких соединяющихся многоугольников в один многоугольникJavascript

Форум по Javascript
Ответить
Anonymous
 Преобразование нескольких соединяющихся многоугольников в один многоугольник

Сообщение Anonymous »

Я создаю приложение для планирования этажей (реакция/машинопись), в настоящее время у меня все стены представляют собой многоугольники, в которых мы определяем 4 угла.
Мне нужна логика/алгоритм для объединения соединяющихся стен . Я пробовал выпуклую/вогнутую оболочку и ее варианты, но, похоже, ничего не работает так, как мне нужно.
[img]https://i.sstatic .net/BHPbBfyz.jpg[/img]

Здесь слева у нас стены, которые я рисую полигонами, а справа то, что мне нужно.

Код: Выделить всё

export type Location = {
x: number;
y: number;
};

export type Size = {
length: number;
thickness: number;
};

export type Corners = { // corner 1, 2, 3, 4 are the polygon locations for the wall
c1: Location;
c2: Location;
c3: Location;
c4: Location;
c5: number;
c6?: Location;
};

export type PlanObject = { // wall
index: number;
toolType: number; // tooltype
wallType?: number;
text?: string;
orientation: number; // will always be angle
corners: Corners;
location: Location;
size: Size;
internal: boolean;
};
Я мог бы добавить все 5 различных способов, которыми пытался это исправить, но ни один из них не работает, и я не уверен, что какой-либо из них будет правильным способом продолжить.
Любой, кто мог бы указать мне правильный путь, был бы великолепен.

Подробнее здесь: https://stackoverflow.com/questions/793 ... -1-polygon
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»