Есть ли способ получить полное аффинное преобразование, которое представляет текущее состояние слоя?
-
07-07-2019 - |
Вопрос
Я имею в виду, что если у меня есть объект и я, например, применяю к нему 3 преобразования, предположим, что я не знаю, что делает каждое преобразование, но у меня есть матрицы.
Так что я
Объект X > преобразование1 > преобразование2 > преобразование3 > окончательный результат
Есть ли способ получить аффинное преобразование, которое может представлять три преобразования, чтобы я мог получить тот же результат, просто выполнив одно преобразование?Например
Объект X > суперпреобразование > окончательный результат
где Super Transform = Transform1> Transform2> Transform3
как мне это сделать на iPhone SDK с помощью CGAffineTransform?
спасибо за любую помощь.
Решение
Посмотри на CGAffineTransformConcat()
.Вы можете использовать это для объединения двух преобразований.Если вы хотите объединить три преобразования в одно, должно работать что-то вроде этого:
// Assumes you have CGAffineTransform transform1, transform2, transform3
CGAffineTransform finalTransform = CGAffineTransformConcat(CGAffineTransformConcat(transform1, transform2), transform3);