我想在UIView上执行透视变换(例如在coverflow中看到)
有谁知道这是否可能?
我已经调查过使用CALayer并且已经完成了所有实用的程序员Core Animation播客,但我仍然不清楚如何在iPhone上创建这种转换.
任何帮助,指针或示例代码片段将非常感谢!
给定一个CATransform3D变换,我想将缩放、平移和旋转提取为单独的变换。通过一些挖掘,我能够CGAffineTransform在 Swift 中完成此操作,如下所示:
extension CGAffineTransform {
var scaleDelta:CGAffineTransform {
let xScale = sqrt(a * a + c * c)
let yScale = sqrt(b * b + d * d)
return CGAffineTransform(scaleX: xScale, y: yScale)
}
var rotationDelta:CGAffineTransform {
let rotation = CGFloat(atan2f(Float(b), Float(a)))
return CGAffineTransform(rotationAngle: rotation)
}
var translationDelta:CGAffineTransform {
return CGAffineTransform(translationX: tx, y: ty)
}
}
Run Code Online (Sandbox Code Playgroud)
如何CATransform3D使用数学做类似的事情?(我正在寻找一种不使用键路径的解决方案。)
(由您自行决定实施或仅数学答案)