Я использую CGAffineTransformMakeRotation
для поворота поднабора, используя его свойство transform
. Позже мне нужно выяснить, как далеко подвешено вращение. Я понимаю, что я мог бы просто использовать int для отслеживания этого, но есть ли простой способ получить текущее вращение subview?iOS Получить поворот Subview
ответ
CGAffineTransformMakeRotation
является explicitly defined возвращать матрицу с соз (угол) в преобразовании своей стоимости a
, sin (угол) в b
, и т.д. (и, учитывая то, как преобразующие работы, это единственное, что он действительно может сделать).
Следовательно, вы можете обработать текущее вращение, выполнив простую инверсную тригонометрию. atan2
- это, вероятно, то, что нужно использовать, потому что оно автоматически определит квадранты соответствующим образом.
Так, например,
- (float)currentAngleOfView:(UIView *)view
{
CGAffineTransform transform = view.transform;
return atan2f(transform.b, transform.a);
}
Потому что будет делать арктангенс, который будет привлекать разделив a
и b
поля соответствующим образом, этот метод будет продолжать работать, даже если вы применяете масштабирования (до тех пор, как это то же самое для каждой оси) или перевод.
Если вы хотите применить более сложные или произвольные преобразования, тогда все становится намного сложнее. Вам нужно посмотреть, как вычислить нормальные матрицы. Из памяти, я думаю, вы хотите, чтобы адъюгат, который так же забавна, как это звучит.
- 1. iPhone-поворот изображения UINavigationController как Subview
- 2. Получить динамические координаты созданного subview ios
- 3. добавить subView в другой SubView ios
- 4. Получить поворот прямоугольника UIView угловые координаты iOS
- 5. IOS Добавить subview в viewDidLoad
- 6. Facebook Like Notification SubView iOS
- 7. IOS Subview не всегда появляется
- 8. Как освободить subview в iOS
- 9. IOS activityIndicator subview выше MKMapView
- 10. iOS tableviewheader subview не показан
- 11. iOS 7 UINavigationContoller subview autorotate
- 12. iOS Как скрыть предыдущий subview
- 13. iOS subview не пересылает штрихи.
- 14. пейзаж поворот текста в iOS
- 15. iOS: получить ширину SubView после ограничений в отдельном UIView
- 16. IOS Storyboard Constraining Every Subview внизу экрана
- 17. Получить поворот из матрицы
- 18. Получить поворот 3D-треугольника
- 19. iOS Получение справки Subview по UITableViewCell
- 20. iOS subview не отвечает на события касания
- 21. IOS - Поворот 3D-объект в scenekit
- 22. Панорамирование, масштабирование, поворот UIView вокруг anchorPoint с использованием UIGestureRecognizer (iOS)
- 23. Как получить UIViewController, который добавил subview из subview?
- 24. Получить представление subView, содержащее вид
- 25. iOS) Как изменить местоположение уже добавленного subview
- 26. ios: tableview не отображается в subview scrollview
- 27. iOS uncaught exception добавление subview crash
- 28. iOS - Subview не анимируется с изменением рамки
- 29. Как добавить SubView в iOS программно?
- 30. iOS 7 - UIScrollView subView не отображается
Повторяющийся вопрос можно найти по адресу: http: //stackoverflow.com/questions/2051811/iphone-sdk-cgaffinetransform-getting-the-angle-of-rotation-of-an-object –
Посмотрите на мой [ответ] (http://stackoverflow.com/a/9712584/1207152) на [вопрос] (http://stackoverflow.com/q/2051811/1207152), упомянутый @TheKraken. – sch