CATransform3D глубина по краю обзора, который вращается - PullRequest
4 голосов
/ 19 декабря 2011

У меня есть UIImageView, который поворачивается.Когда он поворачивается к точке, где он составляет 90 ° для пользователя, становится очевидным, что у вида нет глубины.Как смотреть на лист бумаги под углом 90 °.

Я использую:

// Rotate

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

Как я могу добавить некоторую глубину своему виду, чтобы при достижении угла 90 ° он имел крайбольше похоже на трехмерный объект, чем на плоскую проекцию?

1 Ответ

0 голосов
/ 08 января 2012

Вы можете настроить дерево 3D-слоев в CA, расположив их в 3D-пространстве, по одному слою на сторону. Таким образом, трехмерный вращающийся куб будет иметь 6 слоев; по одному на каждое лицо.

Если вы сделаете все эти слои дочерними по отношению к CATransformLayer (T), вы можете применить одно преобразование к T, например, чтобы повернуть всю структуру в трехмерном пространстве.

Нет способа "выдавливать" слой CALER.

...