如何在Swift中将CGRects相互结合

时间:2015-05-29 15:54:06

标签: ios swift cgrect

我想知道是否有办法将CGRect与另一个CGRect结合起来获得新的CGRect。 swift是否有任何预设功能可以做到这一点还是有另一种方法来实现这一目标?

2 个答案:

答案 0 :(得分:11)

答案 1 :(得分:5)

Swift 3和更新版本:

let rect1 = CGRect(x: 0, y: 0, width: 100, height: 100)
let rect2 = CGRect(x: 40, y: 40, width: 150, height: 150)
let union = rect1.union(rect2) // {x 0 y 0 w 190 h 190}

结果是标准化的,因此产生的宽度和高度始终为正:

let rect3 = CGRect(x: 0, y: 0, width: -100, height: -100)
let clone = rect3.union(rect3) // {x -100 y -100 w 100 h 100}

文档: https://developer.apple.com/documentation/coregraphics/cgrect/1455837-union