从数组中获取最大节点
Get biggest node from an array
我有一组 SCNNode,我需要确定其中哪一个具有最大宽度。
我知道如何计算宽度,但不知道如何比较数组中的所有节点和 return 具有最高值的节点。
示例代码如下:
var walls = [SCNNode]()
For wall in walls {
let wallWidth = (wall.boundingBox.max.x-wall.boundingBox.min.x)
print(wallWidth)
}
提前致谢!
可以使用array的max函数
var walls = [SCNNode]()
let maxNode = walls.max { (left, right) -> Bool in
let leftWidth = (left.boundingBox.max.x-left.boundingBox.min.x)
let rightWidth = (right.boundingBox.max.x-right.boundingBox.min.x)
return leftWidth < rightWidth
}
我有一组 SCNNode,我需要确定其中哪一个具有最大宽度。
我知道如何计算宽度,但不知道如何比较数组中的所有节点和 return 具有最高值的节点。
示例代码如下:
var walls = [SCNNode]()
For wall in walls {
let wallWidth = (wall.boundingBox.max.x-wall.boundingBox.min.x)
print(wallWidth)
}
提前致谢!
可以使用array的max函数
var walls = [SCNNode]()
let maxNode = walls.max { (left, right) -> Bool in
let leftWidth = (left.boundingBox.max.x-left.boundingBox.min.x)
let rightWidth = (right.boundingBox.max.x-right.boundingBox.min.x)
return leftWidth < rightWidth
}