2013-05-18 38 views
4

我一直在努力執行上一個UIView透視變換。我一直在努力從這example應用透視無變換旋轉

但是,例如應用於在視圖上的旋轉,以及一個立體變化。有沒有辦法改變視圖的視角而不旋轉?事情可能是這樣認爲:

enter image description here

我一直在試圖消除旋轉,但是當我做了透視變換沒有得到應用。我找不到任何可以改變觀點的例子。提前致謝。沒有任何旋轉相對於您的觀點

回答

7

只是增加了大衛的回答是:爲了得到一個輸出爲你的形象,你必須繞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; 
+0

太好了,謝謝 – channi

+0

@martinr我應用了你的技術,我沒有得到透視旋轉。我有一個平坦的一個(視圖似乎是相同的距離無處不在..) –

+0

@VanDuTran:嗯,這是在3D變換矩陣的部件之一:)我不知道如果我能解釋得很好,並且在任何對於*評論*來說這太複雜了。你應該在互聯網上找到關於它的信息。 –

0

視角將不可見。即使你沒有旋轉,但角度仍然得到應用,但它不會很明顯。

其他一個變換表示透視沿着Z中,使視圖看起來像它被縮放平移。