インタラクティブブックエンジンにCALayerを使用していて、CALayerを中心に回転させたいのですが、(ユーザー入力に基づく角度を使用して)回転変換をCALayerに適用すると、レイヤーが伸びて非常に奇妙な方法で移動し、消えます。私がすることは
[CATransaction begin];
[CATransaction setValue: (id) kCFBooleanTrue forKey: kCATransactionDisableActions];
...
layer.transform = CATransform3DMakeRotation(angle, 0, 0, 1);
...
[CATransaction commit];
興味深いことに、角度が M_PI または M_PI/2 の場合、またはスケール変換の場合はすべて問題ありませんが、回転やその他の角度レイヤーが狂ってしまいます。
何が起こっているのか、それを修正する方法を知っている人はいますか?