NSValue has a constructor that takes a CGAffineTransform argument:
let transform = CGAffineTransformIdentity let clampFilter = CIFilter(name: "CIAffineClamp") let val = NSValue(CGAffineTransform: transform) clampFilter.setValue(val, forKey: "inputTransform")
Update for Swift 3:
let transform = CGAffineTransform.identity let clampFilter = CIFilter(name: "CIAffineClamp")! let val = NSValue(cgAffineTransform: transform) clampFilter.setValue(val, forKey: "inputTransform")
source share