给出两个System.Drawing.Rectangle - 如何确定第二个矩形覆盖的第一个矩形区域的百分比是多少?
例如,如果第二个矩形位于第一个矩形的中间位置,则结果应为50%。
答案 0 :(得分:3)
您可以使用Rectangle.Intersect
方法获取intersection
矩形:
Rectangle rect = new Rectangle(firstRect.Location, firstRect.Size);
rect.Intersect(secondRectangle);
var percentage = (rect.Width * rect.Height) * 100f/(firstRect.Width * firstRect.Height);