CATransform3D在旋转视图边缘的深度

时间:2011-12-18 23:07:52

标签: objective-c ios uiview 3d core-animation

我有一个旋转的UIImageView。当它旋转到与用户成90°的点时,很明显视图没有任何深度。就像在90°看一张纸一样。

我正在使用:

// Rotate

CATransform3D rotationAndPerspectiveTransform2 = CATransform3DIdentity;
rotationAndPerspectiveTransform2.m34 = 1.0 / -400;
rotationAndPerspectiveTransform2 = CATransform3DRotate(rotationAndPerspectiveTransform2, M_PI, 1.0f, 0.0f, 0.0f);

我怎样才能在视图中添加一些深度,以便当它达到90°时它的边缘更像是3D对象而不是平面视图?

1 个答案:

答案 0 :(得分:0)

您可以在CA中设置3D图层树,方法是将它们放置在3D空间中,每边一层。因此,3D旋转立方体将有6层;每张脸一个。

如果将所有这些图层设为CATransformLayer(T)的子图像,则可以将单个变换应用于T,例如,在3D空间中旋转整个结构。

无法“挤出”CALayer。