Определить, можно ли нарисовать двумерный многоугольник с помощью одного веера треугольников

Сначала я подумал, что эта задача будет эквивалентна определению того, является ли многоугольник выпуклым, однако кажется, что не -выпуклый многоугольник все еще может быть нарисован одним веером треугольников. Рассмотрим эту форму , не -выпуклый многоугольник. Можно легко представить некоторую область центральных точек, которая позволила бы нарисовать этот многоугольник веером треугольников (, хотя были бы и другие центральные точки, которые не ). Учитывая фиксированную центральную точку, я хочу иметь возможность определить, позволяет ли набор 2d точек, определяющих многоугольник, рисовать его с помощью одного треугольного веера.

Кажется, что ключ в том, чтобы убедиться, что ничто не «мешает» линии, проведенной от центральной точки к любой из вершин, что означает другие краевые линии вершин. Однако важно сделать это как можно менее затратным с вычислительной точки зрения, и я не уверен, что для этого есть удобный математический способ.

В конечном счете, у меня будут перемещаться вершины многоугольников, и мне нужно будет определить «границу», которую разрешено перемещать вершине, учитывая, что остальные фиксированы (и, возможно, позже даже разрешить одновременное также реактивное движение двух прямых соседей ), чтобы полигон можно было рисовать в виде одного веера треугольников. Но это будущее, надеюсь, тест по всему многоугольнику можно будет разбить на подмножество вычислений для проверки границ движения одной вершины с предположением об уже выпуклом многоугольнике.

11
задан Nicol Bolas 25 April 2012 в 20:13
поделиться