Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c CGAffineTransformMakeCalayer的旋转_Objective C_Ios_Calayer_Cgaffinetransform - Fatal编程技术网

Objective c CGAffineTransformMakeCalayer的旋转

Objective c CGAffineTransformMakeCalayer的旋转,objective-c,ios,calayer,cgaffinetransform,Objective C,Ios,Calayer,Cgaffinetransform,我创建了一个层,并为它设置了一个框架。 然后对其应用CGAffineTransformMakeRotation。这样做的结果是压缩对象,因为帧保持不变。如何旋转层并重置帧,使其看起来不受挤压。我解决了这个问题:我没有设置帧,而是设置了中心(位置)和边界。这样,问题奇迹般地消失了。CALayer难道没有CATTransferM3D吗?如果这是您的问题,您可以使用CATTransferM3DmakeAffineTransform()将仿射变换更改为3D。是否可以发布您正在尝试和希望实现的图像?我现在

我创建了一个层,并为它设置了一个框架。
然后对其应用CGAffineTransformMakeRotation。这样做的结果是压缩对象,因为帧保持不变。如何旋转层并重置帧,使其看起来不受挤压。

我解决了这个问题:我没有设置帧,而是设置了中心(位置)和边界。这样,问题奇迹般地消失了。

CALayer难道没有CATTransferM3D吗?如果这是您的问题,您可以使用CATTransferM3DmakeAffineTransform()将仿射变换更改为3D。是否可以发布您正在尝试和希望实现的图像?我现在不太明白你的问题,因为旋转一个物体对它的大小没有影响,所以它的边界保持不变。简单的二维旋转不会压缩任何东西。我知道在执行变换(在本例中为旋转)后设置帧在某种程度上是这种意外行为的背后。在我的例子中,我重置帧并重复变换,因为我的层不断地改变其位置。但我还是找不到正确的方法。