Насколько я понимаю, требуется определить границы многоугольника, в который попадает заданная точка из множества п.1.
Можно делать так. Перебираем все концы отрезков п.2, считаем расстояния до заданной точки и находим минимальное. Этот конец заведомо является вершиной искомого многоугольника.
Далее, начав с этой точки, двигаемся в одном из направлений (по часовой стрелке или против) и обходим весь искомый многоугольник. Если очередная точка, до которой мы дошли, является концом ровно двух отрезков, то все просто - оба они входят в искомый многоугольник, по одному пришли, по второму идем дальше. Если же отрезков с концом в заданной точке больше двух, то нужно определить, в какой сектор плоскости, на которые ее делят соответствующие лучи, попадает искомая точка.
|