我遇到了嘗試顛倒變換比例的問題。這是我的代碼:顛倒變換比例
- (void)updateTransforms {
CGAffineTransform holeTransform = CGAffineTransformIdentity;
holeTransform = CGAffineTransformTranslate(holeTransform, _holeOffset.x, _holeOffset.y);
holeTransform = CGAffineTransformRotate(holeTransform, _holeRotation);
//Problem code:
holeTransform = CGAffineTransformScale(holeTransform, _holeScale, _holeScale);
self.transform = holeTransform;
self.imageToUse.transform = CGAffineTransformInvert(holeTransform); }
這基本上是一種讓我旋轉,平移和縮放我的對象的方法。我想要的效果與每個動作相反。因此,如果向左移動,圖像向右移動,向左旋轉,向右旋轉,向上放大,圖像以相同比例縮小。此代碼目前正在完美平移和旋轉。
我相信問題在於反轉規模,因爲規模實際上並不負面,它只是從1.0增加或減少。我如何修改我的代碼以使擴展工作正常?謝謝。
嗨羅布,將_holeScale設置爲1.0的確是罪魁禍首。在那之後,你實際上並不需要通過sender.scale乘以_holeScale嗎? – user339946 2012-02-09 20:40:24
試試看看。 – 2012-02-09 21:16:29
我明白了,我誤解了CGAffineTransformScale的工作原理。 – user339946 2012-02-09 22:17:56