com*_*ial 3 cocoa calayer catransform3d
我希望能够做一些类似的东西NSStringFromCGAffineTransform了CATransform3D。有内置功能吗?还是使用现有API的方式?
例如:
[[layer valueForKey:@"transform"] description]
Run Code Online (Sandbox Code Playgroud)
几乎可以做到,但是将转换值输出为十六进制。
CATransform3D是CGFloats 的结构,名为m11, m12, m13, ...(CATransform3D在Xcode中右键单击,然后单击“跳转到定义”)。知道这一点,您可以创建一个功能,使其行为与其他NSStringFromX()功能类似。
NSString *NSStringFromCATransform3D(CATransform3D transform) {
return [NSString stringWithFormat:@"[%f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f, %f]",
transform.m11, transform.m12, transform.m13, transform.m14,
transform.m21, transform.m22, transform.m23, transform.m24,
transform.m31, transform.m32, transform.m33, transform.m34,
transform.m41, transform.m42, transform.m43, transform.m44];
}
Run Code Online (Sandbox Code Playgroud)