-8

線と長方形のリストが 2 つあります。私がする必要があるのは、「複数の長方形の内側」にあるすべての行をリストから削除することです。ループを使用してそれを行う方法を知っています。C# で Linq を使用したエレガントなソリューションを探しています。出来ますか?

Rectangle.HitTest(Line l) を使用して、線が長方形の内側にあるかどうかを確認しています。

4

1 に答える 1

2

List<Line>と がIEnumerable<Rectangle>既にある場合は、次のメソッドを使用できますRemoveAll

List<Line> lines = ...
IEnumerable<Rectange> rectangles = ...
lines.RemoveAll(x => rectangles.Where(r => r.HitTest(x)).Skip(1).Any());
于 2013-06-07T18:48:49.333 に答える