У меня есть две перекрывающиеся формы в моем приложении C#, определяемом Point
массивами. Мне нужно найти точки, которые определяют форму, где эти два перекрываются. На этом изображении я знаю красные и зеленые точки, но мне нужны желтые точки.Поиск формы, созданной двумя другими пересекающимися фигурами
Вот некоторые фиктивный код, который может помочь:
Point[] GetIntersection(Point[] red, Point[] green)
{
Point[] yellow = ?!?;
return yellow;
}
Есть, конечно, способы, которыми Вы могли бы сделать это, предполагая, хорошие простые прямоугольники. На практике мне нужно иметь возможность обрабатывать полигоны и, возможно, даже круги (хотя я могу жить без кругов).
Любые идеи? Я надеюсь, что есть отличная функция GDI +, которая просто выплюнет это.
@Miky - Я попробовал его с полигоном, и он отлично работал (вам нужно создать «GraphicsPath» из массива точек полигона). –