CGPath与UIBezierPath

时间:2018-04-27 06:01:15

标签: ios swift uibezierpath cgpath

使用一段以下列方式获取CGPath的代码:

let dirX = -spread
let rect = bounds.insetBy(dx: dirX, dy: dirX)
let cgPath = UIBezierPath(rect: rect).cgPath

有没有办法可以直接使用那个矩形来获取CGPath?

我知道有

CGPath(rect: CGRect, transform: UnsafePointer<CGAffineTransform>)

但是我不确定使用init直接获得相同的CGPath是否很简单,因为我不确定如何使用UnsafePointer。

欢迎解释和示例。

1 个答案:

答案 0 :(得分:1)

您可以使用CGPath(rect: CGRect, transform: UnsafePointer<CGAffineTransform>?)并在nil中传递CGAffineTransform,这是可选的

let dirX = -spread
let rect = bounds.insetBy(dx: dirX, dy: dirX)
let cgPath = CGPath(rect: rect, transform: nil)

但这对您的应用功能没有任何影响,即使在代码数量上也是如此,因为无论如何都是一行