Наивный подход состоит в том, чтобы найти для каждого ребра многоугольника точку на этом ребре, ближайшую к данной точке, а затем выбрать ближайшую. Есть ли более быстрый алгоритм? Моя цель — реализовать 2D-платформер в стиле Super Mario Galaxy.
Судя по всему, это можно сделать с регионами Вороного, как на этом видео: http://www.youtube.com/watch?v=Ldh2YKobuWo
Однако я не могу найти ни одного алгоритма Вороного, который бы работал не только с точками, но и с ребрами. Идеи?