gpt4 book ai didi

c# - 如何选择xyz空间中半径内的所有项目?

转载 作者:行者123 更新时间:2023-11-30 14:35:42 27 4
gpt4 key购买 nike

所以我有一个 Liststring 格式如下 {itemname}-{x}-{y}-{z} ( x, y, ztypeof(int) )。我在 3d xyz 空间中有一个点。我想使用 LINQ 从我的角度获取某些 radio R (typeof(int)) 中的所有 List 项。如何用 LINQ 做这样的事情?

最佳答案

我会把它分成两个任务:

  • 将字符串解析为更有用的格式
  • 按距离过滤

所以你的查询应该是这样的:

var query = values.Select(text => ItemPoint.Parse(text))
.Where(item => item.DistanceFrom(point) < radius);

(如果您真的需要返回到文本表单,您可以在解析它时将其存储在项目中,然后再调用一次 Select。)

现在您可以轻松编写可分离的方法:ItemPoint.Parse(string)ItemPoint.DistanceFrom(Point)。如果您对那些方法中的任何一个有问题,请创建另一个问题以提供更多详细信息,但 LINQ 可能无关紧要。

(对于解析部分,您可能需要考虑使用 string.Split。)

关于c# - 如何选择xyz空间中半径内的所有项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11726051/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com