How to combine CGRects with each other in Swift How to combine CGRects with each other in Swift swift swift

How to combine CGRects with each other in Swift


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}

See for more:


Swift 3 and newer:

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}

Result is standardized, so resulting width and height are always positive:

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

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