Z направление UIview вращается? - PullRequest
3 голосов
/ 27 декабря 2010

Я использую следующий код для поворота в направлении z, вращающегося UIView.it в правой части. Но я хочу повернуть нижнюю сторону вместо правой стороны ... (как это происходит с правой стороны), любая помощь, пожалуйста? (В других слова в направлении Z) * ​​1001 *

 UIView *myView = self.view;
CALayer *layer = myView.layer;

CATransform3D transform = CATransform3DIdentity;
transform.m34 = 1.0 / -2000;

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

1 Ответ

6 голосов
/ 27 декабря 2010

Посмотрели ли вы параметры, которые принимает функция CATransform3DRotate?

Последние три элемента определяют вектор, вокруг которого будет отображаться представление.Ваш вектор параллелен оси Y.Попробуйте это вместо поворота вокруг вертикальной оси.

 rotationAndPerspectiveTransform = CATransform3DRotate(
            rotationAndPerspectiveTransform, 
            45.0f * M_PI / 180.0f,
            1.0f, 0.0f, 0.0f);

Возможно, вам потребуется изменить опорную точку, чтобы получить ось с нужной "высотой".

...