提问人:Matias 提问时间:10/1/2014 最后编辑:George MauerMatias 更新时间:10/1/2014 访问量:2080
平均 Drawing.Point 列表
Average a list of Drawing.Point
问:
我有一个并且需要计算点的平均值:List<System.Drawing.Point>
如何使用 LINQ 执行此操作?
我试过了这个:
MyList.Average();
我明白了:
错误 1 实例参数:无法从“System.Collections.Generic.List”转换为“System.Linq.IQueryable”
答:
4赞
DavidG
10/1/2014
#1
如果您需要分别平均 X 和 Y 分量,那么这将完成这项工作:
var avgPoint = new System.Drawing.Point
{
X = (int)Math.Round(MyList.Average(p => p.X)),
Y = (int)Math.Round(MyList.Average(p => p.Y))
};
评论
0赞
George Mauer
10/1/2014
我会做这样的事情(int)Math.Round(MyList.Average(p => p.X))
0赞
DavidG
10/1/2014
@GeorgeMauer 那可能更好,我至少已经添加了。Math.Round
1赞
George Mauer
10/1/2014
还要在我的评论中注意 - 实际上需要一个表达式,所以没有必要先Average
Select
0赞
DavidG
10/1/2014
@GeorgeMauer是的,要简单得多。
上一个:在 gz 文件上加速 sed
下一个:终止闲置超过 4 小时的连接
评论
Point
Select
Point
int