我有一个List
节点,每个节点都有一些坐标。
public class Node
{
float x,y;
....
}
List<Node> myNodeList;
我需要从列表中删除与其相邻节点的距离小于给定阈值的每个节点。我读了这篇文章,解释了如何在迭代集合时从集合中删除元素。
我更喜欢使用RemoveAll
方式,而不是以相反的顺序迭代列表,因为我认为它更干净、更优雅。我的问题是我需要访问当前项目的相邻元素来计算距离。
有什么干净的方法可以做到这一点吗?
我需要类似的东西:
myNodeList.RemoveAll(item => DistanceLessThanThreshold (item.Value, nextNode) && DistanceLessThanThreshold (item.Value, prevNode);
那可能吗?