2013-07-23 2 views
-1

Я работаю над R по следующей проблеме.Алгоритм эффективного отображения точек на многоугольники

У меня есть множество полигонов, определяемых их вершинами (координаты x и y).

У меня также есть набор точек (с заданной координатой x и y), и мне нужен эффективный алгоритм, который с некоторой вероятностью присвоил бы каждой точке каждому многоугольнику.

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

Любые другие идеи/усовершенствования вышеуказанной идеи будут оценены по достоинству.

+0

Возможный дубликат: [Расстояние от точки до ближайшего многоугольника в R] (http://stackoverflow.com/q/16448402/1036500) – Ben

+0

В соответствии с вашими идеями вы можете посмотреть, чтобы вероятность обратно пропорциональна расстояние до ближайшей вершины каждого многоугольника. Кроме того, вы можете проецировать точку на многоугольник и измерить это расстояние. Вы можете расширить свой вопрос тем, что вы используете для этого, почему алгоритм, который вы дали недостаточно? – pippin1289

+0

Я ищу что-то, что даст более точные результаты, чем алгоритм, который я использовал. – wrahool

ответ

1

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

Смежные вопросы