I found a similar question about getting just the rotation, but as I understand scaling and rotating work different in the transform matrix.
Matrixes are not my strength, so if anybody would hint me how to get only the scaling out of a CGAffineTransform I’d greatly appreciate.
btw. I tried applying the CGAffineTransform on a CGSize and then get the height x width to see how much it scaled, but height x width have strange values (depending on the rotation found in the CGAffineTransform, so … hm that does not work)
Assuming that the transformation is a scaling followed by a rotation (possibly with a translation in there, but no skewing) the horizontal scale factor is
sqrt(a^2+c^2), the vertical scale factor issqrt(b^2+d^2), and the ratio of the horizontal scale factor to the vertical scale factor should bea/d = -c/b, wherea,b,c, anddare four of the six members of theCGAffineTransform, per the documentation (txandtyonly represent translation, which does not affect the scale factors).