rotationAndPerspectiveTransform

rotationAndPerspectiveTransform

我一直在尝试对UIView执行透视转换。我一直在这个example上工作。

但是,该示例在视图上应用了旋转以及透视图更改。有没有办法在不旋转的情况下更改视图的透视图?可能看起来像这样:

我一直在尝试删除旋转,但执行透视变换时未应用。我找不到任何仅改变视角的示例。提前致谢。

最佳答案

只需添加David的答案即可:要获得与图像一样的输出,您必须绕x轴(水平轴)旋转视图,以使视图矩形的上边缘在观看者看来比在下边缘更“远离”边缘,例如

CATransform3D rotationAndPerspectiveTransform = CATransform3DIdentity;
rotationAndPerspectiveTransform.m34 = 1.0 / -200;
rotationAndPerspectiveTransform = CATransform3DRotate(rotationAndPerspectiveTransform, 45.0f * M_PI / 180.0f, 1.0f, 0.0f, 0.0f);
layer.transform = rotationAndPerspectiveTransform;

09-07 12:01