我的 C# 应用程序中有两个重叠的形状,由Point
数组定义。我需要找到定义这两个重叠形状的点。在这张图片中,我知道红点和绿点,但我需要黄点。
这是一些可能有帮助的虚拟代码:
Point[] GetIntersection(Point[] red, Point[] green)
{
Point[] yellow = ?!?;
return yellow;
}
假设漂亮的简单矩形,肯定有办法做到这一点。在实践中,我需要能够处理多边形,甚至可能是圆形(尽管我可以没有圆形生活)。
有任何想法吗?我希望有一个漂亮的 GDI+ 函数可以把它吐出来。