0

リストを並べ替えようとしています (この Point3D は Rhino ライブラリ クラスです)。以前に最小の X を持つポイントが必要ですが、同じ X を持つ場合、このポイントを最小の Y で並べ替える必要があります。たとえば、次のようにします。

Point 1: X = 2; Y = 1
Point 2: X = 4; Y = 2
Point 3: X = 4; Y = 1
Point 4: X = 3; Y = 8
Point 5: X = 2; Y = 6
Point 6: X = 2; Y = 4

私がしたい順序は次のとおりです。

Point 1: X = 2; Y = 1
Point 6: X = 2; Y = 4
Point 5: X = 2; Y = 6
Point 4: X = 3; Y = 8
Point 3: X = 4; Y = 1
Point 2: X = 4; Y = 2

私はこの簡単なコードを使用します:

myPointList.sort();

しかし、このポイントのいくつかを削除する必要があるため、正しくないという注文があります。必要な順序がある場合は、正しいポイントを消去しますが、消去したくない正しいポイントを削除します.

誰か助けてくれませんか?

どうもありがとう!

4

3 に答える 3

1

これを少し変更する必要があるかもしれませんが、アイデアは x の次に y で並べることです

var sortedList = PointList.OrderBy(p => p.X)
                          .ThenBy(p => p.Y)
                          .ToList();
于 2014-09-03T07:00:03.323 に答える