0

我在列表中有一些生成的平行四边形(多边形),我将它们添加到画布中。在我这样做之前,我想确定是否有平行四边形不在画布的范围内。如果外面有平行四边形,我可以删除它们,因为用户无论如何都看不到它们。

是否有(快速)方法来测试多边形是否在画布内(在矩形内)?也许我可以使用区域并测试交叉点,但我不知道如何从多边形创建区域。

4

1 回答 1

2

您可以检查从Bounds多边形几何属性返回的 Rectangle 是否与 Canvas Rectangle 相交:

var canvasRect = new Rect(canvas.RenderSize);
var polygonRect = polygon.RenderedGeometry.Bounds;
var intersects = canvasRect.IntersectsWith(polygonRect);
于 2013-08-13T19:19:42.800 回答