2013-07-16 38 views
0

我是CATransform3D的新手。我很想使用此代碼在我的UIImageView上製作3D轉換效果。查看與CATransform3D重疊的另一種觀點

CALayer *layer = imageView.layer; 
CATransform3D rotationAndPerspectiveTransform = CATransform3DIdentity; 
rotationAndPerspectiveTransform.m34 = 1.0/-500; 
rotationAndPerspectiveTransform = CATransform3DRotate(rotationAndPerspectiveTransform, aSlider.value, xSlider.value, ySlider.value, zSlider.value); 
layer.transform = rotationAndPerspectiveTransform; 

我的問題是,轉換後的UIImageView切割通過意見,這是謊言他們在子視圖數組。這是變革之前 Before transformation

那就是改造之後。

enter image description here

我只需要變換imageview的,沒有overlaping另一個觀點。我怎樣才能做到這一點?

PS。對不起英文和大圖片感到抱歉。

回答

2

@Padavan,它看起來像你的Z軸的層相交。

試試這個:

CGFloat zOrigin = -100; // You can change this value as required. 
layer.transform = CATransform3DMakeTranslation(0, 0,zOrigin); 

,這將推動你的背層,它不會相交。

希望它有幫助。