List
各ノードにはいくつかの座標があります。
public class Node
{
float x,y;
....
}
List<Node> myNodeList;
隣接するノードからの距離が特定のしきい値よりも小さいリストから各ノードを削除する必要があります。コレクションの反復中にコレクションから要素を削除する方法を説明するこの投稿を読みました。
リストを逆の順序で反復するのではなく、 wayを使用RemoveAll
することをお勧めします。これは、よりクリーンでエレガントだと思うからです。私の問題は、距離を計算するために、現在のアイテムの隣接する要素にアクセスする必要があることです。
それを行うためのきれいな方法はありますか?
次のようなものが必要です:
myNodeList.RemoveAll(item => DistanceLessThanThreshold (item.Value, nextNode) && DistanceLessThanThreshold (item.Value, prevNode);
それは可能ですか?