有没有办法获得代表当前图层状态的总仿射变换?

时间:2009-09-15 19:06:06

标签: iphone iphone-sdk-3.0 affinetransform

我的意思是,如果我有一个对象并且我对其应用3个变换,例如,假设我不知道每个变换在做什么,但我有矩阵。

所以,我有

对象X> transform1> transform2> transform3>最终结果

有没有办法获得可以代表3个变换的仿射变换,所以我只需要进行一次变换即可获得相同的结果?例如

对象X>超级变换>最终结果

,其中 super transform = transform1> transform2> transform3

如何使用CGAffineTransform在iphone sdk上执行此操作?

感谢您的帮助。

1 个答案:

答案 0 :(得分:3)

看看CGAffineTransformConcat()。您可以使用它来组合两个转换。如果你想将三个转换组合成一个,那么这样的事情应该有效:

// Assumes you have CGAffineTransform transform1, transform2, transform3

CGAffineTransform finalTransform = CGAffineTransformConcat(CGAffineTransformConcat(transform1, transform2), transform3);