我有数百个点的Point3DCollection Point3D(2,5,8), Point3D(8,6,9), Point3D(5,8,12)...... 我需要获得具有最低和最高X的坐标。我知道如何找到最低值(使用LINQ Min),但我不知道,如何找到最低值并得到它的Y和Z. 你能帮我吗?
答案 0 :(得分:2)
假设您的Point3DCollection
是Point3D
班级对象的列表。你的Point3D
课程就像这样。
public class Point3D
{
public int X;
public int Y;
public int Z;
public Point3D(int x, int y, int z)
{
X = x;
Y = y;
Z = z;
}
}
您想要的Linq
将
表示最低X
Point3D p = Point3DCollection.OrderBy(x => x.X).FirstOrDefault();
为最高x
if(Point3DCollection.Count > 0)
Point3D p = Point3DCollection.OrderBy(x => x.X).Last();
你应该首先检查一下Point3DCollection
的空虚情况。