Я не уверен, почему вы хотите обвести свои матричные элементы или это хорошая идея.Но в любом случае, в SDK нет ничего, что позволяло бы вам делать это «в одну строку».
Вы можете добавить средство доступа в расширение, которое облегчает задачу:
import CoreGraphics
extension CGAffineTransform {
var elements: [CGFloat] {
get { return [a, b, c, d, tx, ty] }
set(n) { (a, b, c, d, tx, ty) = (n[0], n[1], n[2], n[3], n[4], n[5]) }
}
}
extension CGAffineTransform {
mutating func round() {
elements = elements.map({ $0.rounded() })
}
}